Compare commits
3 commits
main
...
clickhouse
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bab62a53dc | ||
|
|
5fe056071c | ||
|
|
5bfe1caf4b |
26 changed files with 188 additions and 4225 deletions
|
|
@ -20,9 +20,4 @@ version: 0.1.0
|
|||
# This is the version number of the application being deployed. This version number should be
|
||||
# incremented each time you make changes to the application. Versions are not expected to
|
||||
# follow Semantic Versioning. They should reflect the version the application is using.
|
||||
# It is recommended to use it with quotes.
|
||||
appVersion: "1.16.0"
|
||||
|
||||
dependencies:
|
||||
- name: altinity-clickhouse-operator
|
||||
version: 0.0.14
|
||||
appVersion: 1.16.0
|
||||
|
|
|
|||
|
|
@ -1,13 +0,0 @@
|
|||
apiVersion: v2
|
||||
appVersion: 0.18.1
|
||||
description: Helm chart to deploy [altinity-clickhouse-operator](https://github.com/Altinity/clickhouse-operator). The
|
||||
ClickHouse Operator creates, configures and manages ClickHouse clusters running
|
||||
on Kubernetes. Refer to operator repo for additional information.
|
||||
home: https://github.com/slamdev/helm-charts/tree/master/charts/altinity-clickhouse-operator
|
||||
icon: https://artifacthub.io/image/2d6aa29c-c74f-4bff-bede-ba7e6e0315a7@2x
|
||||
maintainers:
|
||||
- email: valentin.fedoskin@gmail.com
|
||||
name: slamdev
|
||||
name: altinity-clickhouse-operator
|
||||
type: application
|
||||
version: 0.0.14
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
# altinity-clickhouse-operator
|
||||
|
||||
  
|
||||
|
||||
Helm chart to deploy [altinity-clickhouse-operator](https://github.com/Altinity/clickhouse-operator).
|
||||
|
||||
The ClickHouse Operator creates, configures and manages ClickHouse clusters running on Kubernetes.
|
||||
|
||||
Refer to operator repo for additional information.
|
||||
|
||||
**Homepage:** <https://github.com/slamdev/helm-charts/tree/master/charts/altinity-clickhouse-operator>
|
||||
|
||||
## Maintainers
|
||||
|
||||
| Name | Email | Url |
|
||||
| ---- | ------ | --- |
|
||||
| slamdev | valentin.fedoskin@gmail.com | |
|
||||
|
||||
## Values
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| affinity | object | `{}` | affinity for scheduler pod assignment |
|
||||
| configs | object | `{"confdFiles":null,"configdFiles":null,"files":null,"templatesdFiles":null,"usersdFiles":null}` | overrides operator default configmaps |
|
||||
| fullnameOverride | string | `""` | full name of the chart. |
|
||||
| imagePullSecrets | list | `[]` | image pull secret for private images |
|
||||
| metrics.env | list | `[]` | additional environment variables for the deployment |
|
||||
| metrics.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||
| metrics.image.repository | string | `"altinity/metrics-exporter"` | image repository |
|
||||
| metrics.image.tag | string | `""` | image tag (chart's appVersion value will be used if not set) |
|
||||
| metrics.resources | object | `{}` | custom resource configuration |
|
||||
| metrics.command | list | `nil` | command for metrics-exporter container |
|
||||
| metrics.args | list | `nil` | args for metrics-exporter container |
|
||||
| nameOverride | string | `""` | override name of the chart |
|
||||
| nodeSelector | object | `{}` | node for scheduler pod assignment |
|
||||
| operator.env | list | `[]` | additional environment variables for the deployment |
|
||||
| operator.image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
|
||||
| operator.image.repository | string | `"altinity/clickhouse-operator"` | image repository |
|
||||
| operator.image.tag | string | `""` | image tag (chart's appVersion value will be used if not set) |
|
||||
| operator.resources | object | `{}` | custom resource configuration |
|
||||
| operator.command | list | `nil` | command for operator container |
|
||||
| operator.args | list | `nil` | args for operator container |
|
||||
| podAnnotations | object | `nil` | additional pod annotations |
|
||||
| serviceAccount.annotations | object | `{}` | annotations to add to the service account |
|
||||
| serviceAccount.create | bool | `true` | specifies whether a service account should be created |
|
||||
| serviceAccount.name | string | `nil` | the name of the service account to use; if not set and create is true, a name is generated using the fullname template |
|
||||
| serviceMonitor.additionalLabels | object | `{}` | additional labels for service monitor |
|
||||
| serviceMonitor.enabled | bool | `false` | ServiceMonitor CRD is created for a prometheus operator |
|
||||
| tolerations | list | `[]` | tolerations for scheduler pod assignment |
|
||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,284 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NONE
|
||||
#
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: clickhouseoperatorconfigurations.clickhouse.altinity.com
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
spec:
|
||||
group: clickhouse.altinity.com
|
||||
scope: Namespaced
|
||||
names:
|
||||
kind: ClickHouseOperatorConfiguration
|
||||
singular: clickhouseoperatorconfiguration
|
||||
plural: clickhouseoperatorconfigurations
|
||||
shortNames:
|
||||
- chopconf
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
additionalPrinterColumns:
|
||||
- name: namespaces
|
||||
type: string
|
||||
description: Watch namespaces
|
||||
priority: 0 # show in standard view
|
||||
jsonPath: .status
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
type: object
|
||||
description: "allows customize `clickhouse-operator` settings, need restart clickhouse-operator pod after adding, more details https://github.com/Altinity/clickhouse-operator/blob/master/docs/operator_configuration.md"
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
properties:
|
||||
status:
|
||||
type: object
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
spec:
|
||||
type: object
|
||||
description: |
|
||||
Allows to define settings of the clickhouse-operator.
|
||||
More info: https://github.com/Altinity/clickhouse-operator/blob/master/config/config.yaml
|
||||
Check into etc-clickhouse-operator* ConfigMaps if you need more control
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
properties:
|
||||
watch:
|
||||
type: object
|
||||
properties:
|
||||
namespaces:
|
||||
type: array
|
||||
description: "List of namespaces where clickhouse-operator watches for events."
|
||||
items:
|
||||
type: string
|
||||
clickhouse:
|
||||
type: object
|
||||
properties:
|
||||
configuration:
|
||||
type: object
|
||||
properties:
|
||||
file:
|
||||
type: object
|
||||
properties:
|
||||
path:
|
||||
type: object
|
||||
properties:
|
||||
common:
|
||||
type: string
|
||||
description: "Path to the folder where ClickHouse configuration files common for all instances within a CHI are located. Default - config.d"
|
||||
host:
|
||||
type: string
|
||||
description: "Path to the folder where ClickHouse configuration files unique for each instance (host) within a CHI are located. Default - conf.d"
|
||||
user:
|
||||
type: string
|
||||
description: "Path to the folder where ClickHouse configuration files with users settings are located. Files are common for all instances within a CHI."
|
||||
user:
|
||||
type: object
|
||||
properties:
|
||||
default:
|
||||
type: object
|
||||
properties:
|
||||
profile:
|
||||
type: string
|
||||
description: "ClickHouse server configuration `<profile>...</profile>` for any <user>"
|
||||
quota:
|
||||
type: string
|
||||
description: "ClickHouse server configuration `<quota>...</quota>` for any <user>"
|
||||
networksIP:
|
||||
type: array
|
||||
description: "ClickHouse server configuration `<networks><ip>...</ip></networks>` for any <user>"
|
||||
items:
|
||||
type: string
|
||||
password:
|
||||
type: string
|
||||
description: "ClickHouse server configuration `<password>...</password>` for any <user>"
|
||||
network:
|
||||
type: object
|
||||
properties:
|
||||
hostRegexpTemplate:
|
||||
type: string
|
||||
description: "ClickHouse server configuration `<host_regexp>...</host_regexp>` for any <user>"
|
||||
access:
|
||||
type: object
|
||||
properties:
|
||||
username:
|
||||
type: string
|
||||
description: "ClickHouse username to be used by operator to connect to ClickHouse instances, deprecated, use chCredentialsSecretName"
|
||||
password:
|
||||
type: string
|
||||
description: "ClickHouse password to be used by operator to connect to ClickHouse instances, deprecated, use chCredentialsSecretName"
|
||||
secret:
|
||||
type: object
|
||||
properties:
|
||||
namespace:
|
||||
type: string
|
||||
description: "Location of k8s Secret with username and password to be used by operator to connect to ClickHouse instances"
|
||||
name:
|
||||
type: string
|
||||
description: "Name of k8s Secret with username and password to be used by operator to connect to ClickHouse instances"
|
||||
port:
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 65535
|
||||
description: "port to be used by operator to connect to ClickHouse instances"
|
||||
template:
|
||||
type: object
|
||||
properties:
|
||||
chi:
|
||||
type: object
|
||||
properties:
|
||||
path:
|
||||
type: string
|
||||
description: "Path to folder where ClickHouseInstallationTemplate .yaml manifests are located."
|
||||
reconcile:
|
||||
type: object
|
||||
properties:
|
||||
runtime:
|
||||
type: object
|
||||
properties:
|
||||
threadsNumber:
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 65535
|
||||
description: "How many goroutines will be used to reconcile in parallel, 10 by default"
|
||||
statefulSet:
|
||||
type: object
|
||||
properties:
|
||||
create:
|
||||
type: object
|
||||
properties:
|
||||
onFailure:
|
||||
type: string
|
||||
description: |
|
||||
What to do in case created StatefulSet is not in Ready after `statefulSetUpdateTimeout` seconds
|
||||
Possible options:
|
||||
1. abort - do nothing, just break the process and wait for admin.
|
||||
2. delete - delete newly created problematic StatefulSet.
|
||||
3. ignore (default) - ignore error, pretend nothing happened and move on to the next StatefulSet.
|
||||
update:
|
||||
type: object
|
||||
properties:
|
||||
timeout:
|
||||
type: integer
|
||||
description: "How many seconds to wait for created/updated StatefulSet to be Ready"
|
||||
pollInterval:
|
||||
type: integer
|
||||
description: "How many seconds to wait between checks for created/updated StatefulSet status"
|
||||
onFailure:
|
||||
type: string
|
||||
description: |
|
||||
What to do in case updated StatefulSet is not in Ready after `statefulSetUpdateTimeout` seconds
|
||||
Possible options:
|
||||
1. abort - do nothing, just break the process and wait for admin.
|
||||
2. rollback (default) - delete Pod and rollback StatefulSet to previous Generation. Pod would be recreated by StatefulSet based on rollback-ed configuration.
|
||||
3. ignore - ignore error, pretend nothing happened and move on to the next StatefulSet.
|
||||
host:
|
||||
type: object
|
||||
properties:
|
||||
wait:
|
||||
type: object
|
||||
properties:
|
||||
exclude:
|
||||
type: boolean
|
||||
include:
|
||||
type: boolean
|
||||
annotation:
|
||||
type: object
|
||||
properties:
|
||||
include:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
exclude:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
label:
|
||||
type: object
|
||||
properties:
|
||||
include:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
exclude:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
description: |
|
||||
When propagating labels from the chi's `metadata.labels` section to child objects' `metadata.labels`,
|
||||
exclude labels from the following list
|
||||
appendScope:
|
||||
type: string
|
||||
description: |
|
||||
Whether to append *Scope* labels to StatefulSet and Pod
|
||||
- "LabelShardScopeIndex"
|
||||
- "LabelReplicaScopeIndex"
|
||||
- "LabelCHIScopeIndex"
|
||||
- "LabelCHIScopeCycleSize"
|
||||
- "LabelCHIScopeCycleIndex"
|
||||
- "LabelCHIScopeCycleOffset"
|
||||
- "LabelClusterScopeIndex"
|
||||
- "LabelClusterScopeCycleSize"
|
||||
- "LabelClusterScopeCycleIndex"
|
||||
- "LabelClusterScopeCycleOffset"
|
||||
enum:
|
||||
# List StringBoolXXX constants from model
|
||||
- ""
|
||||
- "0"
|
||||
- "1"
|
||||
- "False"
|
||||
- "false"
|
||||
- "True"
|
||||
- "true"
|
||||
- "No"
|
||||
- "no"
|
||||
- "Yes"
|
||||
- "yes"
|
||||
- "Off"
|
||||
- "off"
|
||||
- "On"
|
||||
- "on"
|
||||
- "Disable"
|
||||
- "disable"
|
||||
- "Enable"
|
||||
- "enable"
|
||||
- "Disabled"
|
||||
- "disabled"
|
||||
- "Enabled"
|
||||
- "enabled"
|
||||
statefulSet:
|
||||
type: object
|
||||
properties:
|
||||
revisionHistoryLimit:
|
||||
type: integer
|
||||
pod:
|
||||
type: object
|
||||
properties:
|
||||
terminationGracePeriod:
|
||||
type: integer
|
||||
logger:
|
||||
type: object
|
||||
properties:
|
||||
logtostderr:
|
||||
type: string
|
||||
description: "boolean, allows logs to stderr"
|
||||
alsologtostderr:
|
||||
type: string
|
||||
description: "boolean allows logs to stderr and files both"
|
||||
v:
|
||||
type: string
|
||||
description: "verbosity level of clickhouse-operator log, default - 1 max - 9"
|
||||
stderrthreshold:
|
||||
type: string
|
||||
vmodule:
|
||||
type: string
|
||||
description: |
|
||||
Comma-separated list of filename=N, where filename (can be a pattern) must have no .go ext, and N is a V level.
|
||||
Ex.: file*=2 sets the 'V' to 2 in all files with names like file*.
|
||||
log_backtrace_at:
|
||||
type: string
|
||||
description: |
|
||||
It can be set to a file and line number with a logging line.
|
||||
Ex.: file.go:123
|
||||
Each time when this line is being executed, a stack trace will be written to the Info log.
|
||||
|
|
@ -1,58 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
#
|
||||
# Script downloads manifest from altinity repo, splits it to separate files
|
||||
# and puts to the corresponding folders
|
||||
# NOTE: yq ( https://mikefarah.gitbook.io/yq/ ) > v4.14.x is required
|
||||
#
|
||||
# Usage: ./sync.sh
|
||||
#
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
|
||||
readonly repo_url="https://raw.githubusercontent.com/Altinity/clickhouse-operator"
|
||||
readonly crds_dir="../crds"
|
||||
readonly templates_dir="../templates/generated"
|
||||
readonly manifest_path="deploy/operator/clickhouse-operator-install-bundle.yaml"
|
||||
readonly chart_def="../Chart.yaml"
|
||||
|
||||
function main() {
|
||||
readonly manifest_url="${repo_url}/$(detect_version)/${manifest_path}"
|
||||
local tmpdir
|
||||
tmpdir=$(mktemp -d)
|
||||
|
||||
# shellcheck disable=SC2016
|
||||
(cd "${tmpdir}" && curl -s "${manifest_url}" 2>&1 | yq e --no-doc -s '$index')
|
||||
|
||||
for f in "${tmpdir}"/*.yml; do
|
||||
process "${f}"
|
||||
done
|
||||
}
|
||||
|
||||
function process() {
|
||||
local file="${1}"
|
||||
|
||||
local kind
|
||||
kind=$(yq e '.kind' "${file}")
|
||||
|
||||
local name
|
||||
name=$(yq e '.metadata.name' "${file}")
|
||||
|
||||
local processed_file="${kind}-${name}.yaml"
|
||||
|
||||
if [[ "${kind}" == "CustomResourceDefinition" ]]; then
|
||||
processed_file="${crds_dir}/${processed_file}"
|
||||
else
|
||||
processed_file="${templates_dir}/${processed_file}"
|
||||
fi
|
||||
|
||||
mv "${file}" "${processed_file}"
|
||||
}
|
||||
|
||||
function detect_version() {
|
||||
yq e '.appVersion' ${chart_def}
|
||||
}
|
||||
|
||||
main
|
||||
|
|
@ -1,73 +0,0 @@
|
|||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "altinity-clickhouse-operator.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "altinity-clickhouse-operator.fullname" -}}
|
||||
{{- if .Values.fullnameOverride -}}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- if contains $name .Release.Name -}}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "altinity-clickhouse-operator.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "altinity-clickhouse-operator.labels" -}}
|
||||
helm.sh/chart: {{ include "altinity-clickhouse-operator.chart" . }}
|
||||
{{ include "altinity-clickhouse-operator.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "altinity-clickhouse-operator.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "altinity-clickhouse-operator.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "altinity-clickhouse-operator.serviceAccountName" -}}
|
||||
{{ default (include "altinity-clickhouse-operator.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the tag for the docker image to use
|
||||
*/}}
|
||||
{{- define "altinity-clickhouse-operator.operator.tag" -}}
|
||||
{{- .Values.operator.image.tag | default .Chart.AppVersion -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the tag for the docker image to use
|
||||
*/}}
|
||||
{{- define "altinity-clickhouse-operator.metrics.tag" -}}
|
||||
{{- .Values.metrics.image.tag | default .Chart.AppVersion -}}
|
||||
{{- end -}}
|
||||
|
|
@ -1,163 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NAMESPACE=kube-system
|
||||
# COMMENT=#
|
||||
# ROLE_KIND=ClusterRole
|
||||
# ROLE_NAME=clickhouse-operator-kube-system
|
||||
# ROLE_BINDING_KIND=ClusterRoleBinding
|
||||
# ROLE_BINDING_NAME=clickhouse-operator-kube-system
|
||||
#
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
- services
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- create
|
||||
- delete
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- endpoints
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- persistentvolumeclaims
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- delete
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- persistentvolumes
|
||||
- pods
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps
|
||||
resources:
|
||||
- statefulsets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- create
|
||||
- delete
|
||||
- apiGroups:
|
||||
- apps
|
||||
resources:
|
||||
- replicasets
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- delete
|
||||
- apiGroups:
|
||||
- apps
|
||||
resourceNames:
|
||||
- clickhouse-operator
|
||||
resources:
|
||||
- deployments
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- delete
|
||||
- apiGroups:
|
||||
- policy
|
||||
resources:
|
||||
- poddisruptionbudgets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- create
|
||||
- delete
|
||||
- apiGroups:
|
||||
- clickhouse.altinity.com
|
||||
resources:
|
||||
- clickhouseinstallations
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- delete
|
||||
- apiGroups:
|
||||
- clickhouse.altinity.com
|
||||
resources:
|
||||
- clickhouseinstallations
|
||||
- clickhouseinstallationtemplates
|
||||
- clickhouseoperatorconfigurations
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- clickhouse.altinity.com
|
||||
resources:
|
||||
- clickhouseinstallations/finalizers
|
||||
- clickhouseinstallationtemplates/finalizers
|
||||
- clickhouseoperatorconfigurations/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- clickhouse.altinity.com
|
||||
resources:
|
||||
- clickhouseinstallations/status
|
||||
- clickhouseinstallationtemplates/status
|
||||
- clickhouseoperatorconfigurations/status
|
||||
verbs:
|
||||
- get
|
||||
- update
|
||||
- patch
|
||||
- create
|
||||
- delete
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- secrets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- apiGroups:
|
||||
- apiextensions.k8s.io
|
||||
resources:
|
||||
- customresourcedefinitions
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
# Setup ClusterRoleBinding between ClusterRole and ServiceAccount.
|
||||
# ClusterRoleBinding is namespace-less and must have unique name
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "altinity-clickhouse-operator.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NAME=etc-clickhouse-operator-confd-files
|
||||
# NAMESPACE=kube-system
|
||||
# COMMENT=
|
||||
#
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-confd-files
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
data:
|
||||
{{- if .Values.configs.confdFiles }}
|
||||
{{- toYaml .Values.configs.confdFiles | nindent 2 }}
|
||||
{{ end }}
|
||||
|
|
@ -1,59 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NAME=etc-clickhouse-operator-configd-files
|
||||
# NAMESPACE=kube-system
|
||||
# COMMENT=
|
||||
#
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-configd-files
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
data:
|
||||
{{- if .Values.configs.configdFiles }}
|
||||
{{- toYaml .Values.configs.configdFiles | nindent 2 }}
|
||||
{{ else }}
|
||||
01-clickhouse-01-listen.xml: |
|
||||
<yandex>
|
||||
<!-- Listen wildcard address to allow accepting connections from other containers and host network. -->
|
||||
<listen_host>::</listen_host>
|
||||
<listen_host>0.0.0.0</listen_host>
|
||||
<listen_try>1</listen_try>
|
||||
</yandex>
|
||||
01-clickhouse-02-logger.xml: |
|
||||
<yandex>
|
||||
<logger>
|
||||
<!-- Possible levels: https://github.com/pocoproject/poco/blob/develop/Foundation/include/Poco/Logger.h#L105 -->
|
||||
<level>debug</level>
|
||||
<log>/var/log/clickhouse-server/clickhouse-server.log</log>
|
||||
<errorlog>/var/log/clickhouse-server/clickhouse-server.err.log</errorlog>
|
||||
<size>1000M</size>
|
||||
<count>10</count>
|
||||
<!-- Default behavior is autodetection (log to console if not daemon mode and is tty) -->
|
||||
<console>1</console>
|
||||
</logger>
|
||||
</yandex>
|
||||
01-clickhouse-03-query_log.xml: |
|
||||
<yandex>
|
||||
<query_log replace="1">
|
||||
<database>system</database>
|
||||
<table>query_log</table>
|
||||
<engine>Engine = MergeTree PARTITION BY event_date ORDER BY event_time TTL event_date + interval 30 day</engine>
|
||||
<flush_interval_milliseconds>7500</flush_interval_milliseconds>
|
||||
</query_log>
|
||||
<query_thread_log remove="1"/>
|
||||
</yandex>
|
||||
01-clickhouse-04-part_log.xml: |
|
||||
<yandex>
|
||||
<part_log replace="1">
|
||||
<database>system</database>
|
||||
<table>part_log</table>
|
||||
<engine>Engine = MergeTree PARTITION BY event_date ORDER BY event_time TTL event_date + interval 30 day</engine>
|
||||
<flush_interval_milliseconds>7500</flush_interval_milliseconds>
|
||||
</part_log>
|
||||
</yandex>
|
||||
|
||||
{{ end }}
|
||||
|
|
@ -1,230 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NAME=etc-clickhouse-operator-files
|
||||
# NAMESPACE=kube-system
|
||||
# COMMENT=
|
||||
#
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-files
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
data:
|
||||
{{- if .Values.configs.files }}
|
||||
{{- toYaml .Values.configs.files | nindent 2 }}
|
||||
{{ else }}
|
||||
config.yaml: |
|
||||
# IMPORTANT
|
||||
# This file is auto-generated from deploy/builder/templates-config.
|
||||
# It will be overwritten upon next sources build.
|
||||
#
|
||||
# Template parameters available:
|
||||
# watchNamespaces
|
||||
# chUsername
|
||||
# chPassword
|
||||
# password_sha256_hex
|
||||
|
||||
################################################
|
||||
##
|
||||
## Watch Section
|
||||
##
|
||||
################################################
|
||||
watch:
|
||||
# List of namespaces where clickhouse-operator watches for events.
|
||||
# Concurrently running operators should watch on different namespaces
|
||||
#namespaces: ["dev", "test"]
|
||||
namespaces: []
|
||||
|
||||
clickhouse:
|
||||
configuration:
|
||||
################################################
|
||||
##
|
||||
## Configuration Files Section
|
||||
##
|
||||
################################################
|
||||
file:
|
||||
path:
|
||||
# Path to the folder where ClickHouse configuration files common for all instances within a CHI are located.
|
||||
common: config.d
|
||||
# Path to the folder where ClickHouse configuration files unique for each instance (host) within a CHI are located.
|
||||
host: conf.d
|
||||
# Path to the folder where ClickHouse configuration files with users settings are located.
|
||||
# Files are common for all instances within a CHI.
|
||||
user: users.d
|
||||
################################################
|
||||
##
|
||||
## Configuration Users Section
|
||||
##
|
||||
################################################
|
||||
user:
|
||||
default:
|
||||
# Default values for ClickHouse user configuration
|
||||
# 1. user/profile - string
|
||||
# 2. user/quota - string
|
||||
# 3. user/networks/ip - multiple strings
|
||||
# 4. user/password - string
|
||||
profile: default
|
||||
quota: default
|
||||
networksIP:
|
||||
- "::1"
|
||||
- "127.0.0.1"
|
||||
password: "default"
|
||||
################################################
|
||||
##
|
||||
## Configuration Network Section
|
||||
##
|
||||
################################################
|
||||
network:
|
||||
# Default host_regexp to limit network connectivity from outside
|
||||
hostRegexpTemplate: "(chi-{chi}-[^.]+\\d+-\\d+|clickhouse\\-{chi})\\.{namespace}\\.svc\\.cluster\\.local$"
|
||||
################################################
|
||||
##
|
||||
## Access to ClickHouse instances
|
||||
##
|
||||
################################################
|
||||
access:
|
||||
# ClickHouse credentials (username, password and port) to be used by operator to connect to ClickHouse instances
|
||||
# for:
|
||||
# 1. Metrics requests
|
||||
# 2. Schema maintenance
|
||||
# 3. DROP DNS CACHE
|
||||
# User with such credentials can be specified in additional ClickHouse .xml config files,
|
||||
# located in `chUsersConfigsPath` folder
|
||||
username: "clickhouse_operator"
|
||||
password: "clickhouse_operator_password"
|
||||
secret:
|
||||
# Location of k8s Secret with username and password to be used by operator to connect to ClickHouse instances
|
||||
# Can be used instead of explicitly specified username and password
|
||||
namespace: ""
|
||||
name: ""
|
||||
# Port where to connect to ClickHouse instances to
|
||||
port: 8123
|
||||
|
||||
################################################
|
||||
##
|
||||
## Templates Section
|
||||
##
|
||||
################################################
|
||||
template:
|
||||
chi:
|
||||
# Path to the folder where ClickHouseInstallation .yaml manifests are located.
|
||||
# Manifests are applied in sorted alpha-numeric order.
|
||||
path: templates.d
|
||||
|
||||
################################################
|
||||
##
|
||||
## Reconcile Section
|
||||
##
|
||||
################################################
|
||||
reconcile:
|
||||
runtime:
|
||||
# Max number of concurrent reconciles in progress
|
||||
threadsNumber: 10
|
||||
|
||||
statefulSet:
|
||||
create:
|
||||
# What to do in case created StatefulSet is not in Ready after `statefulSetUpdateTimeout` seconds
|
||||
# Possible options:
|
||||
# 1. abort - do nothing, just break the process and wait for admin
|
||||
# 2. delete - delete newly created problematic StatefulSet
|
||||
# 3. ignore - ignore error, pretend nothing happened and move on to the next StatefulSet
|
||||
onFailure: ignore
|
||||
|
||||
update:
|
||||
# How many seconds to wait for created/updated StatefulSet to be Ready
|
||||
timeout: 300
|
||||
# How many seconds to wait between checks for created/updated StatefulSet status
|
||||
pollInterval: 5
|
||||
# What to do in case updated StatefulSet is not in Ready after `statefulSetUpdateTimeout` seconds
|
||||
# Possible options:
|
||||
# 1. abort - do nothing, just break the process and wait for admin
|
||||
# 2. rollback - delete Pod and rollback StatefulSet to previous Generation.
|
||||
# Pod would be recreated by StatefulSet based on rollback-ed configuration
|
||||
# 3. ignore - ignore error, pretend nothing happened and move on to the next StatefulSet
|
||||
onFailure: rollback
|
||||
|
||||
host:
|
||||
wait:
|
||||
exclude: true
|
||||
include: false
|
||||
|
||||
################################################
|
||||
##
|
||||
## Annotations management
|
||||
##
|
||||
################################################
|
||||
annotation:
|
||||
# Applied when:
|
||||
# 1. Propagating annotations from the CHI's `metadata.annotations` to child objects' `metadata.annotations`,
|
||||
# 2. Propagating annotations from the CHI Template's `metadata.annotations` to CHI's `metadata.annotations`,
|
||||
# Include annotations from the following list:
|
||||
# Applied only when not empty. Empty list means "include all, no selection"
|
||||
include: []
|
||||
# Exclude annotations from the following list:
|
||||
exclude: []
|
||||
|
||||
################################################
|
||||
##
|
||||
## Labels management
|
||||
##
|
||||
################################################
|
||||
label:
|
||||
# Applied when:
|
||||
# 1. Propagating labels from the CHI's `metadata.labels` to child objects' `metadata.labels`,
|
||||
# 2. Propagating labels from the CHI Template's `metadata.labels` to CHI's `metadata.labels`,
|
||||
# Include labels from the following list:
|
||||
# Applied only when not empty. Empty list means "include all, no selection"
|
||||
include: []
|
||||
# Exclude labels from the following list:
|
||||
exclude: []
|
||||
# Whether to append *Scope* labels to StatefulSet and Pod.
|
||||
# Full list of available *scope* labels check in labeler.go
|
||||
# LabelShardScopeIndex
|
||||
# LabelReplicaScopeIndex
|
||||
# LabelCHIScopeIndex
|
||||
# LabelCHIScopeCycleSize
|
||||
# LabelCHIScopeCycleIndex
|
||||
# LabelCHIScopeCycleOffset
|
||||
# LabelClusterScopeIndex
|
||||
# LabelClusterScopeCycleSize
|
||||
# LabelClusterScopeCycleIndex
|
||||
# LabelClusterScopeCycleOffset
|
||||
appendScope: "no"
|
||||
|
||||
################################################
|
||||
##
|
||||
## StatefulSet management
|
||||
##
|
||||
################################################
|
||||
statefulSet:
|
||||
revisionHistoryLimit: 0
|
||||
|
||||
################################################
|
||||
##
|
||||
## Pod management
|
||||
##
|
||||
################################################
|
||||
pod:
|
||||
# Grace period for Pod termination.
|
||||
# How many seconds to wait between sending
|
||||
# SIGTERM and SIGKILL during Pod termination process.
|
||||
# Increase this number is case of slow shutdown.
|
||||
terminationGracePeriod: 30
|
||||
|
||||
################################################
|
||||
##
|
||||
## Log parameters
|
||||
##
|
||||
################################################
|
||||
logger:
|
||||
logtostderr: "true"
|
||||
alsologtostderr: "false"
|
||||
v: "1"
|
||||
stderrthreshold: ""
|
||||
vmodule: ""
|
||||
log_backtrace_at: ""
|
||||
|
||||
{{ end }}
|
||||
|
|
@ -1,102 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NAME=etc-clickhouse-operator-templatesd-files
|
||||
# NAMESPACE=kube-system
|
||||
# COMMENT=
|
||||
#
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-templatesd-files
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
data:
|
||||
{{- if .Values.configs.templatesdFiles }}
|
||||
{{- toYaml .Values.configs.templatesdFiles | nindent 2 }}
|
||||
{{ else }}
|
||||
001-templates.json.example: |
|
||||
{
|
||||
"apiVersion": "clickhouse.altinity.com/v1",
|
||||
"kind": "ClickHouseInstallationTemplate",
|
||||
"metadata": {
|
||||
"name": "01-default-volumeclaimtemplate"
|
||||
},
|
||||
"spec": {
|
||||
"templates": {
|
||||
"volumeClaimTemplates": [
|
||||
{
|
||||
"name": "chi-default-volume-claim-template",
|
||||
"spec": {
|
||||
"accessModes": [
|
||||
"ReadWriteOnce"
|
||||
],
|
||||
"resources": {
|
||||
"requests": {
|
||||
"storage": "2Gi"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"podTemplates": [
|
||||
{
|
||||
"name": "chi-default-oneperhost-pod-template",
|
||||
"distribution": "OnePerHost",
|
||||
"spec": {
|
||||
"containers" : [
|
||||
{
|
||||
"name": "clickhouse",
|
||||
"image": "yandex/clickhouse-server:21.3",
|
||||
"ports": [
|
||||
{
|
||||
"name": "http",
|
||||
"containerPort": 8123
|
||||
},
|
||||
{
|
||||
"name": "client",
|
||||
"containerPort": 9000
|
||||
},
|
||||
{
|
||||
"name": "interserver",
|
||||
"containerPort": 9009
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
default-pod-template.yaml.example: |
|
||||
apiVersion: "clickhouse.altinity.com/v1"
|
||||
kind: "ClickHouseInstallationTemplate"
|
||||
metadata:
|
||||
name: "default-oneperhost-pod-template"
|
||||
spec:
|
||||
templates:
|
||||
podTemplates:
|
||||
- name: default-oneperhost-pod-template
|
||||
distribution: "OnePerHost"
|
||||
default-storage-template.yaml.example: |
|
||||
apiVersion: "clickhouse.altinity.com/v1"
|
||||
kind: "ClickHouseInstallationTemplate"
|
||||
metadata:
|
||||
name: "default-storage-template-2Gi"
|
||||
spec:
|
||||
templates:
|
||||
volumeClaimTemplates:
|
||||
- name: default-storage-template-2Gi
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 2Gi
|
||||
readme: |
|
||||
Templates in this folder are packaged with an operator and available via 'useTemplate'
|
||||
|
||||
{{ end }}
|
||||
|
|
@ -1,62 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NAME=etc-clickhouse-operator-usersd-files
|
||||
# NAMESPACE=kube-system
|
||||
# COMMENT=
|
||||
#
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-usersd-files
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
data:
|
||||
{{- if .Values.configs.usersdFiles }}
|
||||
{{- toYaml .Values.configs.usersdFiles | nindent 2 }}
|
||||
{{ else }}
|
||||
01-clickhouse-user.xml: |
|
||||
<yandex>
|
||||
<users>
|
||||
<clickhouse_operator>
|
||||
<networks>
|
||||
<ip>127.0.0.1</ip>
|
||||
<ip>0.0.0.0/0</ip>
|
||||
<ip>::/0</ip>
|
||||
</networks>
|
||||
<password_sha256_hex>716b36073a90c6fe1d445ac1af85f4777c5b7a155cea359961826a030513e448</password_sha256_hex>
|
||||
<profile>clickhouse_operator</profile>
|
||||
<quota>default</quota>
|
||||
</clickhouse_operator>
|
||||
</users>
|
||||
<profiles>
|
||||
<clickhouse_operator>
|
||||
<log_queries>0</log_queries>
|
||||
<skip_unavailable_shards>1</skip_unavailable_shards>
|
||||
<http_connection_timeout>10</http_connection_timeout>
|
||||
</clickhouse_operator>
|
||||
</profiles>
|
||||
</yandex>
|
||||
02-clickhouse-default-profile.xml: |
|
||||
<yandex>
|
||||
<profiles>
|
||||
<default>
|
||||
<log_queries>1</log_queries>
|
||||
<connect_timeout_with_failover_ms>1000</connect_timeout_with_failover_ms>
|
||||
<distributed_aggregation_memory_efficient>1</distributed_aggregation_memory_efficient>
|
||||
<parallel_view_processing>1</parallel_view_processing>
|
||||
</default>
|
||||
</profiles>
|
||||
</yandex>
|
||||
03-database-ordinary.xml: |
|
||||
<!-- Remove it for ClickHouse versions before 20.4 -->
|
||||
<yandex>
|
||||
<profiles>
|
||||
<default>
|
||||
<default_database_engine>Ordinary</default_database_engine>
|
||||
</default>
|
||||
</profiles>
|
||||
</yandex>
|
||||
|
||||
{{ end }}
|
||||
|
|
@ -1,175 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NAMESPACE=kube-system
|
||||
# COMMENT=
|
||||
# OPERATOR_IMAGE=altinity/clickhouse-operator:0.18.1
|
||||
# METRICS_EXPORTER_IMAGE=altinity/metrics-exporter:0.18.1
|
||||
#
|
||||
# Setup Deployment for clickhouse-operator
|
||||
# Deployment would be created in kubectl-specified namespace
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "altinity-clickhouse-operator.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "altinity-clickhouse-operator.selectorLabels" . | nindent 8 }}
|
||||
annotations:
|
||||
prometheus.io/port: '8888'
|
||||
prometheus.io/scrape: 'true'
|
||||
checksum/confd-files: {{ include (print $.Template.BasePath "/generated/ConfigMap-etc-clickhouse-operator-confd-files.yaml") . | sha256sum }}
|
||||
checksum/configd-files: {{ include (print $.Template.BasePath "/generated/ConfigMap-etc-clickhouse-operator-configd-files.yaml") . | sha256sum }}
|
||||
checksum/files: {{ include (print $.Template.BasePath "/generated/ConfigMap-etc-clickhouse-operator-files.yaml") . | sha256sum }}
|
||||
checksum/templatesd-files: {{ include (print $.Template.BasePath "/generated/ConfigMap-etc-clickhouse-operator-templatesd-files.yaml") . | sha256sum }}
|
||||
checksum/usersd-files: {{ include (print $.Template.BasePath "/generated/ConfigMap-etc-clickhouse-operator-usersd-files.yaml") . | sha256sum }}
|
||||
{{- if .Values.podAnnotations }}
|
||||
{{- toYaml .Values.podAnnotations | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "altinity-clickhouse-operator.serviceAccountName" . }}
|
||||
volumes:
|
||||
- name: etc-clickhouse-operator-folder
|
||||
configMap:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-files
|
||||
- name: etc-clickhouse-operator-confd-folder
|
||||
configMap:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-confd-files
|
||||
- name: etc-clickhouse-operator-configd-folder
|
||||
configMap:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-configd-files
|
||||
- name: etc-clickhouse-operator-templatesd-folder
|
||||
configMap:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-templatesd-files
|
||||
- name: etc-clickhouse-operator-usersd-folder
|
||||
configMap:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-usersd-files
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.operator.image.repository }}:{{ include "altinity-clickhouse-operator.operator.tag" . }}"
|
||||
imagePullPolicy: {{ .Values.operator.image.pullPolicy }}
|
||||
{{- if .Values.operator.command }}
|
||||
command:
|
||||
{{- range $value := .Values.operator.command }}
|
||||
- {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.operator.args }}
|
||||
args:
|
||||
{{- range $value := .Values.operator.args }}
|
||||
- {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- name: etc-clickhouse-operator-folder
|
||||
mountPath: /etc/clickhouse-operator
|
||||
- name: etc-clickhouse-operator-confd-folder
|
||||
mountPath: /etc/clickhouse-operator/conf.d
|
||||
- name: etc-clickhouse-operator-configd-folder
|
||||
mountPath: /etc/clickhouse-operator/config.d
|
||||
- name: etc-clickhouse-operator-templatesd-folder
|
||||
mountPath: /etc/clickhouse-operator/templates.d
|
||||
- name: etc-clickhouse-operator-usersd-folder
|
||||
mountPath: /etc/clickhouse-operator/users.d
|
||||
env:
|
||||
# Pod-specific
|
||||
# spec.nodeName: ip-172-20-52-62.ec2.internal
|
||||
- name: OPERATOR_POD_NODE_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: spec.nodeName
|
||||
# metadata.name: clickhouse-operator-6f87589dbb-ftcsf
|
||||
- name: OPERATOR_POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
# metadata.namespace: kube-system
|
||||
- name: OPERATOR_POD_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
# status.podIP: 100.96.3.2
|
||||
- name: OPERATOR_POD_IP
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: status.podIP
|
||||
# spec.serviceAccount: clickhouse-operator
|
||||
# spec.serviceAccountName: clickhouse-operator
|
||||
- name: OPERATOR_POD_SERVICE_ACCOUNT
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: spec.serviceAccountName
|
||||
# Container-specific
|
||||
- name: OPERATOR_CONTAINER_CPU_REQUEST
|
||||
valueFrom:
|
||||
resourceFieldRef:
|
||||
containerName: {{ .Chart.Name }}
|
||||
resource: requests.cpu
|
||||
- name: OPERATOR_CONTAINER_CPU_LIMIT
|
||||
valueFrom:
|
||||
resourceFieldRef:
|
||||
containerName: {{ .Chart.Name }}
|
||||
resource: limits.cpu
|
||||
- name: OPERATOR_CONTAINER_MEM_REQUEST
|
||||
valueFrom:
|
||||
resourceFieldRef:
|
||||
containerName: {{ .Chart.Name }}
|
||||
resource: requests.memory
|
||||
- name: OPERATOR_CONTAINER_MEM_LIMIT
|
||||
valueFrom:
|
||||
resourceFieldRef:
|
||||
containerName: {{ .Chart.Name }}
|
||||
resource: limits.memory
|
||||
{{- with .Values.operator.env }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
resources:
|
||||
{{- toYaml .Values.operator.resources | nindent 12 }}
|
||||
- name: metrics-exporter
|
||||
image: "{{ .Values.metrics.image.repository }}:{{ include "altinity-clickhouse-operator.metrics.tag" . }}"
|
||||
imagePullPolicy: {{ .Values.metrics.image.pullPolicy }}
|
||||
{{- if .Values.metrics.command }}
|
||||
command:
|
||||
{{- range $value := .Values.metrics.command }}
|
||||
- {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.metrics.args }}
|
||||
args:
|
||||
{{- range $value := .Values.metrics.args }}
|
||||
- {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- name: etc-clickhouse-operator-folder
|
||||
mountPath: /etc/clickhouse-operator
|
||||
- name: etc-clickhouse-operator-confd-folder
|
||||
mountPath: /etc/clickhouse-operator/conf.d
|
||||
- name: etc-clickhouse-operator-configd-folder
|
||||
mountPath: /etc/clickhouse-operator/config.d
|
||||
- name: etc-clickhouse-operator-templatesd-folder
|
||||
mountPath: /etc/clickhouse-operator/templates.d
|
||||
- name: etc-clickhouse-operator-usersd-folder
|
||||
mountPath: /etc/clickhouse-operator/users.d
|
||||
ports:
|
||||
- containerPort: 8888
|
||||
name: metrics
|
||||
{{- with .Values.metrics.env }}
|
||||
env:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
resources:
|
||||
{{- toYaml .Values.metrics.resources | nindent 12 }}
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
# Template Parameters:
|
||||
#
|
||||
# NAMESPACE=kube-system
|
||||
# COMMENT=
|
||||
#
|
||||
# Setup ClusterIP Service to provide monitoring metrics for Prometheus
|
||||
# Service would be created in kubectl-specified namespace
|
||||
# In order to get access outside of k8s it should be exposed as:
|
||||
# kubectl --namespace prometheus port-forward service/prometheus 9090
|
||||
# and point browser to localhost:9090
|
||||
kind: Service
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}-metrics
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
spec:
|
||||
ports:
|
||||
- port: 8888
|
||||
name: clickhouse-operator-metrics
|
||||
targetPort: metrics
|
||||
selector:
|
||||
{{- include "altinity-clickhouse-operator.selectorLabels" . | nindent 4 }}
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
{{- if .Values.serviceAccount.create -}}
|
||||
# Template Parameters:
|
||||
#
|
||||
# COMMENT=
|
||||
# NAMESPACE=kube-system
|
||||
# NAME=clickhouse-operator
|
||||
#
|
||||
# Setup ServiceAccount
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
clickhouse.altinity.com/chop: 0.18.1
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
{{- if .Values.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "altinity-clickhouse-operator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "altinity-clickhouse-operator.labels" . | nindent 4 }}
|
||||
{{- if .Values.serviceMonitor.additionalLabels }}
|
||||
{{- toYaml .Values.serviceMonitor.additionalLabels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
endpoints:
|
||||
- port: clickhouse-operator-metrics
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "altinity-clickhouse-operator.selectorLabels" . | nindent 6 }}
|
||||
{{- end }}
|
||||
|
|
@ -1,88 +0,0 @@
|
|||
operator:
|
||||
image:
|
||||
# operator.image.repository -- image repository
|
||||
repository: altinity/clickhouse-operator
|
||||
# operator.image.tag -- image tag (chart's appVersion value will be used if not set)
|
||||
tag: ""
|
||||
# operator.image.pullPolicy -- image pull policy
|
||||
pullPolicy: IfNotPresent
|
||||
# operator.resources -- custom resource configuration
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# operator.env -- additional environment variables for the deployment
|
||||
env: [ ]
|
||||
# - name: SAMPLE
|
||||
# value: text
|
||||
metrics:
|
||||
image:
|
||||
# metrics.image.repository -- image repository
|
||||
repository: altinity/metrics-exporter
|
||||
# metrics.image.tag -- image tag (chart's appVersion value will be used if not set)
|
||||
tag: ""
|
||||
# metrics.image.pullPolicy -- image pull policy
|
||||
pullPolicy: IfNotPresent
|
||||
# metrics.resources -- custom resource configuration
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# metrics.env -- additional environment variables for the deployment
|
||||
env: [ ]
|
||||
# - name: SAMPLE
|
||||
# value: text
|
||||
|
||||
# imagePullSecrets -- image pull secret for private images
|
||||
imagePullSecrets: []
|
||||
# nameOverride -- override name of the chart
|
||||
nameOverride: ""
|
||||
# fullnameOverride -- full name of the chart.
|
||||
fullnameOverride: ""
|
||||
|
||||
serviceAccount:
|
||||
# serviceAccount.create -- specifies whether a service account should be created
|
||||
create: true
|
||||
# serviceAccount.annotations -- annotations to add to the service account
|
||||
annotations: {}
|
||||
# serviceAccount.name -- the name of the service account to use; if not set and create is true, a name is generated using the fullname template
|
||||
name:
|
||||
|
||||
# nodeSelector -- node for scheduler pod assignment
|
||||
nodeSelector: {}
|
||||
|
||||
# tolerations -- tolerations for scheduler pod assignment
|
||||
tolerations: []
|
||||
|
||||
# affinity -- affinity for scheduler pod assignment
|
||||
affinity: {}
|
||||
|
||||
serviceMonitor:
|
||||
# serviceMonitor.enabled -- ServiceMonitor CRD is created for a prometheus operator
|
||||
enabled: false
|
||||
# serviceMonitor.additionalLabels -- additional labels for service monitor
|
||||
additionalLabels: {}
|
||||
|
||||
# configs -- overrides operator default configmaps
|
||||
configs:
|
||||
confdFiles: null
|
||||
# some-file: |
|
||||
# ...
|
||||
configdFiles: null
|
||||
# some-file: |
|
||||
# ...
|
||||
files: null
|
||||
# some-file: |
|
||||
# ...
|
||||
templatesdFiles: null
|
||||
# some-file: |
|
||||
# ...
|
||||
usersdFiles: null
|
||||
# some-file: |
|
||||
# ...
|
||||
|
|
@ -1,113 +0,0 @@
|
|||
apiVersion: "clickhouse.altinity.com/v1"
|
||||
kind: "ClickHouseInstallation"
|
||||
|
||||
metadata:
|
||||
name: "openreplay-clickhouse"
|
||||
|
||||
spec:
|
||||
defaults:
|
||||
templates:
|
||||
dataVolumeClaimTemplate: default
|
||||
podTemplate: clickhouse:19.6
|
||||
serviceTemplate: chi-service-template
|
||||
|
||||
configuration:
|
||||
# Ref: https://github.com/Altinity/clickhouse-operator/issues/823
|
||||
users:
|
||||
default/networks/ip: "::/0"
|
||||
zookeeper:
|
||||
nodes:
|
||||
- host: "{{ .Values.global.kafka.zookeeperHost }}"
|
||||
port: {{ .Values.global.kafka.zookeeperNonTLSPort }}
|
||||
clusters:
|
||||
- name: replicated
|
||||
layout:
|
||||
shardsCount: {{ .Values.clickhouse.replicaCount }}
|
||||
replicasCount: {{ .Values.clickhouse.shardsCount }}
|
||||
|
||||
templates:
|
||||
volumeClaimTemplates:
|
||||
- name: default
|
||||
reclaimPolicy: Retain
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: "{{ .Values.storage.size }}"
|
||||
podTemplates:
|
||||
- name: clickhouse:{{ .Values.image.tag }}
|
||||
spec:
|
||||
containers:
|
||||
- name: clickhouse-pod
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
resources:
|
||||
{{ toYaml .Values.resources | nindent 16 }}
|
||||
nodeSelector:
|
||||
{{- toYaml .Values.nodeSelector | nindent 12}}
|
||||
tolerations:
|
||||
{{- toYaml .Values.tolerations | nindent 12}}
|
||||
# Ref: https://github.com/Altinity/clickhouse-operator/blob/master/docs/custom_resource_explained.md#spectemplatesservicetemplates
|
||||
serviceTemplates:
|
||||
- name: chi-service-template
|
||||
# generateName understands different sets of macroses,
|
||||
# depending on the level of the object, for which Service is being created:
|
||||
#
|
||||
# For CHI-level Service:
|
||||
# 1. {chi} - ClickHouseInstallation name
|
||||
# 2. {chiID} - short hashed ClickHouseInstallation name (BEWARE, this is an experimental feature)
|
||||
#
|
||||
# For Cluster-level Service:
|
||||
# 1. {chi} - ClickHouseInstallation name
|
||||
# 2. {chiID} - short hashed ClickHouseInstallation name (BEWARE, this is an experimental feature)
|
||||
# 3. {cluster} - cluster name
|
||||
# 4. {clusterID} - short hashed cluster name (BEWARE, this is an experimental feature)
|
||||
# 5. {clusterIndex} - 0-based index of the cluster in the CHI (BEWARE, this is an experimental feature)
|
||||
#
|
||||
# For Shard-level Service:
|
||||
# 1. {chi} - ClickHouseInstallation name
|
||||
# 2. {chiID} - short hashed ClickHouseInstallation name (BEWARE, this is an experimental feature)
|
||||
# 3. {cluster} - cluster name
|
||||
# 4. {clusterID} - short hashed cluster name (BEWARE, this is an experimental feature)
|
||||
# 5. {clusterIndex} - 0-based index of the cluster in the CHI (BEWARE, this is an experimental feature)
|
||||
# 6. {shard} - shard name
|
||||
# 7. {shardID} - short hashed shard name (BEWARE, this is an experimental feature)
|
||||
# 8. {shardIndex} - 0-based index of the shard in the cluster (BEWARE, this is an experimental feature)
|
||||
#
|
||||
# For Replica-level Service:
|
||||
# 1. {chi} - ClickHouseInstallation name
|
||||
# 2. {chiID} - short hashed ClickHouseInstallation name (BEWARE, this is an experimental feature)
|
||||
# 3. {cluster} - cluster name
|
||||
# 4. {clusterID} - short hashed cluster name (BEWARE, this is an experimental feature)
|
||||
# 5. {clusterIndex} - 0-based index of the cluster in the CHI (BEWARE, this is an experimental feature)
|
||||
# 6. {shard} - shard name
|
||||
# 7. {shardID} - short hashed shard name (BEWARE, this is an experimental feature)
|
||||
# 8. {shardIndex} - 0-based index of the shard in the cluster (BEWARE, this is an experimental feature)
|
||||
# 9. {replica} - replica name
|
||||
# 10. {replicaID} - short hashed replica name (BEWARE, this is an experimental feature)
|
||||
# 11. {replicaIndex} - 0-based index of the replica in the shard (BEWARE, this is an experimental feature)
|
||||
generateName: "clickhouse-{chi}"
|
||||
# type ObjectMeta struct from k8s.io/meta/v1
|
||||
metadata:
|
||||
labels:
|
||||
installation: "openreplay"
|
||||
spec:
|
||||
ports:
|
||||
- name: http
|
||||
port: 8123
|
||||
- name: client
|
||||
port: 9000
|
||||
type: ClusterIP
|
||||
- name: cluster-template
|
||||
generateName: "clickhouse"
|
||||
metadata:
|
||||
labels:
|
||||
installation: "openreplay"
|
||||
spec:
|
||||
ports:
|
||||
- name: http
|
||||
port: 8123
|
||||
- name: client
|
||||
port: 9000
|
||||
type: ClusterIP
|
||||
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: clickhouse-openreplay-clickhouse
|
||||
labels:
|
||||
{{- include "clickhouse.labels" . | nindent 4 }}
|
||||
spec:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
- port: {{ .Values.service.webPort }}
|
||||
targetPort: web
|
||||
protocol: TCP
|
||||
name: web
|
||||
- port: {{ .Values.service.dataPort }}
|
||||
targetPort: data
|
||||
protocol: TCP
|
||||
name: data
|
||||
selector:
|
||||
{{- include "clickhouse.selectorLabels" . | nindent 4 }}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "clickhouse.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "clickhouse.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
metadata:
|
||||
name: {{ include "clickhouse.fullname" . }}
|
||||
labels:
|
||||
{{- include "clickhouse.labels" . | nindent 4 }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
serviceName: {{ include "clickhouse.fullname" . }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "clickhouse.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
{{- with .Values.podAnnotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "clickhouse.selectorLabels" . | nindent 8 }}
|
||||
spec:
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "clickhouse.serviceAccountName" . }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}-backup
|
||||
env:
|
||||
- name: API_LISTEN
|
||||
value: "0.0.0.0:7171"
|
||||
{{- range $key, $value := .Values.env }}
|
||||
- name: "{{ $key }}"
|
||||
value: "{{ $value }}"
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
image: "{{ .Values.backupImage.repository }}:{{ .Values.backupImage.tag }}"
|
||||
imagePullPolicy: {{ .Values.backupImage.pullPolicy }}
|
||||
args:
|
||||
- server
|
||||
ports:
|
||||
- containerPort: 7171
|
||||
name: backup-web
|
||||
volumeMounts:
|
||||
- name: default-chi-openreplay-clickhouse-replicated-0-0-0
|
||||
mountPath: /var/lib/clickhouse
|
||||
- name: {{ .Chart.Name }}
|
||||
env:
|
||||
{{- range $key, $value := .Values.env }}
|
||||
- name: "{{ $key }}"
|
||||
value: "{{ $value }}"
|
||||
{{- end }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
ports:
|
||||
- containerPort: 9000
|
||||
name: web
|
||||
- containerPort: 8123
|
||||
name: data
|
||||
volumeMounts:
|
||||
- name: default-chi-openreplay-clickhouse-replicated-0-0-0
|
||||
mountPath: /var/lib/clickhouse
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
volumeClaimTemplates:
|
||||
- metadata:
|
||||
name: default-chi-openreplay-clickhouse-replicated-0-0-0
|
||||
spec:
|
||||
accessModes: [ "ReadWriteOnce" ]
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .Values.storageSize }}
|
||||
|
|
@ -1,18 +1,76 @@
|
|||
# Default values for clickhouse.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
repository: clickhouse/clickhouse-server
|
||||
pullPolicy: IfNotPresent
|
||||
# Overrides the image tag whose default is the chart appVersion.
|
||||
tag: "22.2.2.1"
|
||||
|
||||
storage:
|
||||
size: 200Gi
|
||||
backupImage:
|
||||
repository: alexakulov/clickhouse-backup
|
||||
pullPolicy: IfNotPresent
|
||||
tag: "latest"
|
||||
|
||||
clickhouse:
|
||||
replicaCount: 1
|
||||
shardsCount: 1
|
||||
imagePullSecrets: []
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
|
||||
serviceAccount:
|
||||
# Specifies whether a service account should be created
|
||||
create: true
|
||||
# Annotations to add to the service account
|
||||
annotations: {}
|
||||
# The name of the service account to use.
|
||||
# If not set and create is true, a name is generated using the fullname template
|
||||
name: ""
|
||||
|
||||
podAnnotations: {}
|
||||
|
||||
podSecurityContext: {}
|
||||
# fsGroup: 2000
|
||||
|
||||
securityContext: {}
|
||||
# capabilities:
|
||||
# drop:
|
||||
# - ALL
|
||||
# readOnlyRootFilesystem: true
|
||||
# runAsNonRoot: true
|
||||
# runAsUser: 1000
|
||||
|
||||
env: {}
|
||||
|
||||
backupEnv: {}
|
||||
# REf: https://github.com/AlexAkulov/clickhouse-backup#default-config
|
||||
#
|
||||
# Example config for backup to s3
|
||||
#
|
||||
# REMOTE_STORAGE: s3
|
||||
# S3_ACCESS_KEY: "" # S3_ACCESS_KEY
|
||||
# S3_SECRET_KEY: "" # S3_SECRET_KEY
|
||||
# S3_BUCKET: "" # S3_BUCKET
|
||||
# S3_ENDPOINT: "" # S3_ENDPOINT
|
||||
# S3_REGION: US-east-1 # S3_REGION
|
||||
|
||||
|
||||
service:
|
||||
webPort: 9000
|
||||
dataPort: 8123
|
||||
|
||||
resources:
|
||||
limits:
|
||||
cpu: 2
|
||||
memory: 8Gi
|
||||
requests:
|
||||
cpu: 1
|
||||
memory: 4Gi
|
||||
limits:
|
||||
cpu: 2
|
||||
memory: 8Gi
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
storageSize: 100G
|
||||
|
|
|
|||
|
|
@ -137,7 +137,7 @@ kafka:
|
|||
# Enterprise dbs
|
||||
clickhouse:
|
||||
image:
|
||||
tag: "21.9.4.35"
|
||||
tag: "22.2.2.1"
|
||||
enabled: false
|
||||
|
||||
postgreql:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue