Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Tiltfile
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,7 @@ k8s_resource(
'query-service-memberlist:MemberList',
'compaction-service-memberlist:MemberList',
'garbage-collection-service-memberlist:MemberList',
'rust-log-service-memberlist:MemberList',

'sysdb-serviceaccount:serviceaccount',
'sysdb-serviceaccount-rolebinding:RoleBinding',
Expand Down
4 changes: 4 additions & 0 deletions go/cmd/coordinator/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,10 @@ func init() {
Cmd.Flags().StringVar(&conf.GarbageCollectionServiceMemberlistName, "garbage-collection-memberlist-name", "garbage-collection-service-memberlist", "Garbage collection memberlist name")
Cmd.Flags().StringVar(&conf.GarbageCollectionServicePodLabel, "garbage-collection-pod-label", "garbage-collection-service", "Garbage collection pod label")

// Log service Memberlist
Cmd.Flags().StringVar(&conf.LogServiceMemberlistName, "log-memberlist-name", "rust-log-service-memberlist", "Log service memberlist name")
Cmd.Flags().StringVar(&conf.LogServicePodLabel, "log-pod-label", "rust-log-service", "Log service pod label")

// S3 config
Cmd.Flags().BoolVar(&conf.MetaStoreConfig.CreateBucketIfNotExists, "create-bucket-if-not-exists", false, "Create bucket if not exists")
Cmd.Flags().StringVar(&conf.MetaStoreConfig.BucketName, "bucket-name", "chroma-storage", "Bucket name")
Expand Down
19 changes: 19 additions & 0 deletions go/pkg/sysdb/grpc/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,10 @@ type Config struct {
GarbageCollectionServiceMemberlistName string
GarbageCollectionServicePodLabel string

// Log service memberlist config
LogServiceMemberlistName string
LogServicePodLabel string

// Config for soft deletes.
SoftDeleteEnabled bool
SoftDeleteCleanupInterval time.Duration
Expand Down Expand Up @@ -136,6 +140,15 @@ func NewWithGrpcProvider(config Config, provider grpcutils.GrpcProvider) (*Serve

// Create memberlist manager for garbage collection service
garbageCollectionMemberlistManager, err := createMemberlistManager(namespace, config.GarbageCollectionServiceMemberlistName, config.GarbageCollectionServicePodLabel, config.WatchInterval, config.ReconcileInterval, config.ReconcileCount)
if err != nil {
return nil, err
}

// Create memberlist manager for log service
logServiceMemberlistManager, err := createMemberlistManager(namespace, config.LogServiceMemberlistName, config.LogServicePodLabel, config.WatchInterval, config.ReconcileInterval, config.ReconcileCount)
if err != nil {
return nil, err
}

// Start the memberlist manager for query service
err = queryMemberlistManager.Start()
Expand All @@ -154,6 +167,12 @@ func NewWithGrpcProvider(config Config, provider grpcutils.GrpcProvider) (*Serve
return nil, err
}

// Start the memberlist manager for log service
err = logServiceMemberlistManager.Start()
if err != nil {
return nil, err
}

log.Info("Starting soft delete cleaner", zap.Duration("cleanup_interval", s.softDeleteCleaner.cleanupInterval), zap.Duration("max_age", s.softDeleteCleaner.maxAge), zap.Uint("limit_per_check", s.softDeleteCleaner.limitPerCheck))
s.softDeleteCleaner.Start()

Expand Down
2 changes: 1 addition & 1 deletion k8s/distributed-chroma/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ apiVersion: v2
name: distributed-chroma
description: A helm chart for distributed Chroma
type: application
version: 0.1.39
version: 0.1.40
appVersion: "0.4.24"
keywords:
- chroma
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
apiVersion: chroma.cluster/v1
kind: MemberList
metadata:
name: rust-log-service-memberlist
namespace: {{ .Values.namespace }}
spec:
members:

---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: rust-log-service-memberlist-readerwriter
rules:
- apiGroups:
- chroma.cluster
resources:
- memberlists
verbs:
- get
- list
- watch
# TODO: FIX THIS LEAKY PERMISSION
- create
- update
- patch
- delete

---

# Allows the sysdb service to read and write to the memberlist
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: sysdb-rust-log-service-memberlist-binding
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: rust-log-service-memberlist-readerwriter
subjects:
- kind: ServiceAccount
name: sysdb-serviceaccount
namespace: {{ .Values.namespace }}

---

# Allows the rust-frontend-service to read and write to the memberlist
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: rust-frontend-service-rust-log-service-memberlist-binding
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: rust-log-service-memberlist-readerwriter
subjects:
- kind: ServiceAccount
name: rust-frontend-service-serviceaccount
namespace: {{ .Values.namespace }}
Loading