Este guia mostra como instalar o ClickHouse Operator usando kubectl e arquivos de manifesto.
Pré-requisitos
- cluster do Kubernetes v1.28.0 ou posterior
- kubectl v1.28.0 ou posterior
- permissões de administrador do cluster
Instalar a partir dos manifestos da versão
Instale o operador e os CRDs da versão mais recente:
kubectl apply --server-side --force-conflicts -f https://github.com/ClickHouse/clickhouse-operator/releases/latest/download/clickhouse-operator.yamlA aplicação do lado do servidor é necessária porque os CRDs combinados excedem o limite de tamanho da aplicação do lado do cliente. Para ambientes que oferecem suporte apenas à aplicação do lado do cliente, use a variante de CRD sem descrições:
kubectl apply -f https://github.com/ClickHouse/clickhouse-operator/releases/latest/download/clickhouse-operator-stripped-crds.yamlIsso vai:
- Criar o espaço de nomes
clickhouse-operator-system - Instalar CustomResourceDefinitions (CRDs) para ClickHouseCluster e KeeperCluster
- Criar os ServiceAccounts, Roles e RoleBindings necessários
- Implantar o controller manager do operador
- Registrar webhooks para validação de recursos e aplicação de valores padrão
- Configurar certificados SSL usando cert-manager
- Habilitar o endpoint de métricas
Verifique a instalação
Verifique se o operador está em execução:
kubectl get pods -n clickhouse-operator-systemSaída esperada:
NAME READY STATUS RESTARTS AGE
clickhouse-operator-controller-manager-xxxxxxxxxx 1/1 Running 0 1mVerifique se os CRDs estão instalados:
kubectl get crd | grep clickhouse.comSaída esperada:
clickhouseclusters.clickhouse.com 2025-01-06T00:00:00Z
keeperclusters.clickhouse.com 2025-01-06T00:00:00ZConfigurar opções personalizadas de implantação
Se quiser configurar as opções de implantação do operador, siga as etapas abaixo.
Clonar o repositório
git clone https://github.com/ClickHouse/clickhouse-operator.git
cd clickhouse-operatorConfigurar opções de instalação
Edite config/default/kustomization.yaml para ativar ou desativar recursos, conforme necessário.
- Para desativar os webhooks, comente as seções
[WEBHOOK]e[CERTMANAGER]. - Para ativar o endpoint seguro de métricas, comente as seções
[METRICS]e descomente as seções[METRICS SECURE]e[CERTMANAGER]. - Para ativar o ServiceMonitor do Prometheus Operator, descomente a seção
[PROMETHEUS]. - Para ativar as políticas de rede do operador, descomente a seção
[NETWORK POLICY].
Compilar e implantar
Compile os manifestos do operador e aplique-os:
make build-installer VERSION=<required operator version> [IMG=<custom registry path>]
kubectl apply --server-side --force-conflicts -f dist/install.yaml