{ "title": "Chart Values", "type": "object", "properties": { "backup": { "description": "Backup configuration.", "type": "object", "default": {}, "required": [ "cleanupStrategy", "enabled", "resticPassword", "s3AccessKey", "s3Bucket", "s3Region", "s3SecretKey", "schedule" ], "properties": { "cleanupStrategy": { "description": "Retention strategy for cleaning up old backups.", "type": "string", "default": "--keep-last=3 --keep-daily=3 --keep-within-weekly=1m" }, "enabled": { "description": "Enable regular backups (default: false).", "type": "boolean", "default": false }, "resticPassword": { "description": "Password for Restic backup encryption.", "type": "string", "default": "\u003cpassword\u003e" }, "s3AccessKey": { "description": "Access key for S3 authentication.", "type": "string", "default": "\u003cyour-access-key\u003e" }, "s3Bucket": { "description": "S3 bucket used for storing backups.", "type": "string", "default": "s3.example.org/clickhouse-backups" }, "s3Region": { "description": "AWS S3 region where backups are stored.", "type": "string", "default": "us-east-1" }, "s3SecretKey": { "description": "Secret key for S3 authentication.", "type": "string", "default": "\u003cyour-secret-key\u003e" }, "schedule": { "description": "Cron schedule for automated backups.", "type": "string", "default": "0 2 * * *" } } }, "clickhouseKeeper": { "description": "ClickHouse Keeper configuration.", "type": "object", "default": {}, "properties": { "enabled": { "description": "Deploy ClickHouse Keeper for cluster coordination.", "type": "boolean", "default": true }, "replicas": { "description": "Number of Keeper replicas.", "type": "integer", "default": 3 }, "resourcesPreset": { "description": "Default sizing preset.", "type": "string", "default": "micro", "enum": [ "nano", "micro", "small", "medium", "large", "xlarge", "2xlarge" ] }, "size": { "description": "Persistent Volume Claim size available for application data.", "default": "1Gi", "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "anyOf": [ { "type": "integer" }, { "type": "string" } ], "x-kubernetes-int-or-string": true } } }, "logStorageSize": { "description": "Size of Persistent Volume for logs.", "default": "2Gi", "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "anyOf": [ { "type": "integer" }, { "type": "string" } ], "x-kubernetes-int-or-string": true }, "logTTL": { "description": "TTL (expiration time) for `query_log` and `query_thread_log`.", "type": "integer", "default": 15 }, "replicas": { "description": "Number of ClickHouse replicas.", "type": "integer", "default": 2 }, "resources": { "description": "Explicit CPU and memory configuration for each ClickHouse replica. When omitted, the preset defined in `resourcesPreset` is applied.", "type": "object", "default": {}, "properties": { "cpu": { "description": "CPU available to each replica.", "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "anyOf": [ { "type": "integer" }, { "type": "string" } ], "x-kubernetes-int-or-string": true }, "memory": { "description": "Memory (RAM) available to each replica.", "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "anyOf": [ { "type": "integer" }, { "type": "string" } ], "x-kubernetes-int-or-string": true } } }, "resourcesPreset": { "description": "Default sizing preset used when `resources` is omitted.", "type": "string", "default": "small", "enum": [ "nano", "micro", "small", "medium", "large", "xlarge", "2xlarge" ] }, "shards": { "description": "Number of ClickHouse shards.", "type": "integer", "default": 1 }, "size": { "description": "Persistent Volume Claim size available for application data.", "default": "10Gi", "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$", "anyOf": [ { "type": "integer" }, { "type": "string" } ], "x-kubernetes-int-or-string": true }, "storageClass": { "description": "StorageClass used to store the data.", "type": "string", "default": "" }, "users": { "description": "Users configuration map.", "type": "object", "default": {}, "additionalProperties": { "type": "object", "properties": { "password": { "description": "Password for the user.", "type": "string" }, "readonly": { "description": "User is readonly (default: false).", "type": "boolean" } } } } } }