From 2ea439606cd15a21ae5f15a4c7f3279627d91e10 Mon Sep 17 00:00:00 2001 From: liyang Date: Tue, 2 Jan 2024 11:59:04 +0800 Subject: [PATCH] faet: add StoreKeyPrefix in metasrv --- apis/v1alpha1/greptimedbcluster_types.go | 4 ++++ config/crd/resources/greptime.io_greptimedbclusters.yaml | 2 ++ config/samples/cluster-with-monitor/cluster.yaml | 2 +- manifests/greptimedb-operator-crd.yaml | 2 ++ manifests/greptimedb-operator-deployment.yaml | 2 ++ pkg/dbconfig/metasrv_config.go | 6 ++++++ 6 files changed, 17 insertions(+), 1 deletion(-) diff --git a/apis/v1alpha1/greptimedbcluster_types.go b/apis/v1alpha1/greptimedbcluster_types.go index c0951d20..fa64fd21 100644 --- a/apis/v1alpha1/greptimedbcluster_types.go +++ b/apis/v1alpha1/greptimedbcluster_types.go @@ -305,6 +305,10 @@ type MetaSpec struct { // +optional EnableRegionFailover bool `json:"enableRegionFailover,omitempty"` + // The meta will store data with this key prefix. + // +optional + StoreKeyPrefix string `json:"storeKeyPrefix,omitempty"` + // More meta settings can be added here... } diff --git a/config/crd/resources/greptime.io_greptimedbclusters.yaml b/config/crd/resources/greptime.io_greptimedbclusters.yaml index 4fa367a7..330f09b8 100644 --- a/config/crd/resources/greptime.io_greptimedbclusters.yaml +++ b/config/crd/resources/greptime.io_greptimedbclusters.yaml @@ -8050,6 +8050,8 @@ spec: servicePort: format: int32 type: integer + storeKeyPrefix: + type: string template: properties: activeDeadlineSeconds: diff --git a/config/samples/cluster-with-monitor/cluster.yaml b/config/samples/cluster-with-monitor/cluster.yaml index 2b4803ec..efc3d603 100644 --- a/config/samples/cluster-with-monitor/cluster.yaml +++ b/config/samples/cluster-with-monitor/cluster.yaml @@ -32,5 +32,5 @@ spec: prometheusMonitor: enabled: true interval: "30s" - labelsSelector: + labels: release: prometheus diff --git a/manifests/greptimedb-operator-crd.yaml b/manifests/greptimedb-operator-crd.yaml index dbae7198..15bee91f 100644 --- a/manifests/greptimedb-operator-crd.yaml +++ b/manifests/greptimedb-operator-crd.yaml @@ -8049,6 +8049,8 @@ spec: servicePort: format: int32 type: integer + storeKeyPrefix: + type: string template: properties: activeDeadlineSeconds: diff --git a/manifests/greptimedb-operator-deployment.yaml b/manifests/greptimedb-operator-deployment.yaml index 3dbeafeb..4dd4d66e 100644 --- a/manifests/greptimedb-operator-deployment.yaml +++ b/manifests/greptimedb-operator-deployment.yaml @@ -8056,6 +8056,8 @@ spec: servicePort: format: int32 type: integer + storeKeyPrefix: + type: string template: properties: activeDeadlineSeconds: diff --git a/pkg/dbconfig/metasrv_config.go b/pkg/dbconfig/metasrv_config.go index 78c5caa1..57ac458d 100644 --- a/pkg/dbconfig/metasrv_config.go +++ b/pkg/dbconfig/metasrv_config.go @@ -53,6 +53,8 @@ type MetasrvConfig struct { EnableTelemetry *bool `toml:"enable_telemetry,omitempty"` DataHome string `toml:"data_home,omitempty"` + + StoreKeyPrefix string `toml:"store_key_prefix,omitempty"` } // ConfigureByCluster configures the metasrv config by the given cluster. @@ -60,6 +62,10 @@ func (c *MetasrvConfig) ConfigureByCluster(cluster *v1alpha1.GreptimeDBCluster) if cluster.Spec.Meta != nil { c.EnableRegionFailover = &cluster.Spec.Meta.EnableRegionFailover + if len(cluster.Spec.Meta.StoreKeyPrefix) > 0 { + c.StoreKeyPrefix = cluster.Spec.Meta.StoreKeyPrefix + } + if len(cluster.Spec.Meta.Config) > 0 { if err := Merge([]byte(cluster.Spec.Meta.Config), c); err != nil { return err