Este guia aborda a migração do Chart do Helm do ClickStack com inline-template (v1.x) para a arquitetura baseada em subcharts (v2.x). Esta é uma mudança incompatível que substitui recursos do Kubernetes criados manualmente por recursos personalizados gerenciados por operadores para MongoDB e ClickHouse, e usa o Chart do Helm oficial do OpenTelemetry Collector.
Mudança incompatívelO chart v2.x não é compatível com a v1.x. Não há suporte para helm upgrade in-place. Recomendamos realizar uma nova instalação ao lado da implantação existente e migrar os dados, em vez de tentar uma atualização in-place.
- Faça backup dos seus dados antes de atualizar (MongoDB, PVCs do ClickHouse)
- Revise as substituições atuais no
values.yaml — a maioria das chaves foi movida ou renomeada
O chart v2.x usa uma instalação em duas etapas. Os operadores (que registram CRDs) devem ser instalados antes do chart principal (que cria CRs):
Desinstale na ordem inversa:
As PersistentVolumeClaims criadas pelos operadores do MongoDB e do ClickHouse não são removidas pelo helm uninstall. Isso é intencional, para evitar perda acidental de dados. Para limpar os PVCs após a desinstalação, consulte:
global.storageClassName and global.keepPVC foram removidos. A classe de armazenamento agora é configurada diretamente na seção spec do CR de cada operador:
Reorganização dos values do HyperDX
O bloco hyperdx: agora está organizado por tipo de recurso do Kubernetes:
ConfigMap e Secret unificados
Agora, todas as variáveis de ambiente passam por dois recursos com nomes estáticos, compartilhados pela Implantação do HyperDX e pelo OTel collector via envFrom:
clickstack-config ConfigMap — preenchido a partir de hyperdx.config
clickstack-secret Secret — preenchido a partir de hyperdx.secrets
Não há mais um ConfigMap separado específico para OTel. Ambas as cargas de trabalho leem das mesmas fontes.
Os seguintes valores mongodb.* não existem mais:
O MongoDB agora é gerenciado pelo operador MCK por meio de um recurso personalizado MongoDBCommunity. A especificação do CR é reproduzida literalmente a partir de mongodb.spec:
A senha do MongoDB é definida em hyperdx.secrets.MONGODB_PASSWORD (não em mongodb.password). Ela é referenciada automaticamente pelo Secret da senha e pelo template mongoUri.
Para adicionar persistência, adicione um bloco statefulSet dentro de mongodb.spec:
O subchart do operador MCK é configurado na seção mongodb-operator: (não em mongodb-kubernetes:). Consulte a documentação do MCK para conferir todos os campos de CRD disponíveis.
Os seguintes valores de clickhouse.* não existem mais:
O ClickHouse agora é gerenciado pelo ClickHouse Operator por meio dos recursos personalizados ClickHouseCluster e KeeperCluster. Ambas as especificações dos CRs são geradas literalmente a partir dos values:
As credenciais de usuário do ClickHouse agora vêm de hyperdx.secrets (não de clickhouse.config.users). A especificação do cluster faz referência a elas por meio de expressões de template.
O subchart do ClickHouse Operator é configurado em clickhouse-operator:. Webhooks e cert-manager são desabilitados por padrão. Consulte o guia de configuração do operador para ver todos os campos de CRD disponíveis.
Migração do OTel collector
O bloco inteiro otel: não existe mais:
O OTel collector agora é implantado por meio do Chart do Helm oficial do OpenTelemetry Collector, como o subchart otel-collector:. Não há um wrapper otel: no chart pai — configure o subchart diretamente.
As variáveis de ambiente (endpoint do ClickHouse, URL do OpAMP etc.) são compartilhadas por meio do ConfigMap unificado clickstack-config e do Secret clickstack-secret. O extraEnvsFrom do subchart já vem pré-configurado:
Para configurar os recursos (anteriormente otel.resources):
Para configurar réplicas (anteriormente otel.replicas):
Para configurar nodeSelector/tolerations (antes otel.nodeSelector/otel.tolerations):
Consulte o Chart do Helm do OpenTelemetry Collector para ver todos os valores disponíveis do subchart.
As seções a seguir não são afetadas por esta migração:
global.* (imageRegistry, imagePullSecrets)
Nova instalação vs. atualização no local
Para uma nova instalação, nenhuma etapa especial é necessária. Os valores padrão funcionam imediatamente.
Para uma atualização no local de um lançamento existente, esteja ciente de que:
- Os operadores (MCK, ClickHouse Operator) serão instalados como novas implantações no seu espaço de nomes
- A implantação existente do MongoDB e a implantação do ClickHouse serão excluídas pelo Helm (elas não estão mais nos templates do chart)
- Os operadores criarão novos StatefulSets para gerenciar o MongoDB e o ClickHouse
- Os PVCs do chart antigo não são reutilizados automaticamente pelos StatefulSets gerenciados pelo operador
Recomendamos fazer uma nova instalação ao lado da implantação existente e migrar os dados, em vez de realizar uma atualização no local.