Atualização do armazenamento de dados do Kafka em Linux on IBM Z and LinuxONE
Atualize o operador do Kafka e atualize o banco de dados do Kafka.
Antes de iniciar
Certifique-se de que preparou seu host online e offline para extrair imagens do repositório externo. Além disso, certifique-se de que o repositório correto Helm foi adicionado.
A partir do Strimzi 0.46.0, o suporte para as versões Kafka 3.8.0 e 3.8.1, ZooKeeper-based Apache Kafka clusters e migração KRaft foi descontinuado. Se você usa o Strimzi 0.45.0 ou uma versão mais antiga, precisa migrar para o KRaft antes de atualizar para o Strimzi 0.46.0.
Para obter mais informações sobre a migração de dados de um cluster baseado no Zookeeper para um cluster KRaft, consulte o artigo “Migração do Zookeeper para o KRaft ” na página Kafka.
Kafka Versões do operador e tags de imagem para implantação
As imagens a seguir são necessárias para as versões fixadas do gráfico ou do operador Helm.
| Plataforma | Versões do operador | Versão do gráfico do Helm | Imagem com tag |
|---|---|---|---|
| Linux® on IBM Z® and LinuxONE | 0.51.0 | 0.51.0 | artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi: 0.51.0_v0.32.0 artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka: 0.51.0-kafka-4.1.1_v0.32.0 |
Atualização onlin Kafka
Siga estas etapas para atualizar o banco de dados do Kafka.
Crie
custom_values.yamle especifique a tolerância e a afinidade. Pule esta etapa se o arquivo já tiver sido criado.tolerations: - key: node.instana.io/monitor operator: Equal effect: NoSchedule value: "true" affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: node-role.kubernetes.io/monitor operator: In values: - "true"Atualize o operador Strimzi.
helm upgrade --install strimzi instana/strimzi-kafka-operator --version 0.51.0 -n instana-kafka --set image.registry=artifact-public.instana.io --set image.repository=self-hosted-images/3rd-party/operator --set image.name=strimzi --set image.tag=0.51.0_v0.32.0 --set image.imagePullSecrets[0].name="instana-registry" --set kafka.image.registry=artifact-public.instana.io --set kafka.image.repository=self-hosted-images/3rd-party/datastore --set kafka.image.name=kafka --set kafka.image.tag=0.51.0-kafka-4.1.1_v0.32.0 -f custom_values.yamlAtualize o recurso personalizado Kafka.
kubectl patch kafka instana -n instana-kafka --type=merge --patch ' spec: kafka: version: "4.1.1" entityOperator: userOperator: image: artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:0.51.0_v0.32.0 'Conclua as etapas em Verificação de Kafka (online e offline).
Atualização do Operador do Kafka no modo offline
Se você ainda não baixou as imagens do ClickHouse do repositório externo, pode baixá-las agora. Execute os seguintes comandos no seu host bastion. Em seguida, copie as imagens para o seu servidor de armazenamento de imagens ( Instana ) localizado no seu ambiente isolado.
docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:0.51.0
docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:0.51.0_v0.32.0
Conclua as seguintes etapas no seu host Instana.
Reetiquete as imagens no seu registro interno de imagens.
docker tag artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:0.51.0 <internal-image-registry>/operator/strimzi:0.51.0 docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:0.51.0_v0.32.0 <internal-image-registry>/datastore/kafka:0.51.0_v0.32.0Envie as imagens para o seu registro interno de imagens no seu host bastion.
docker push <internal-image-registry>/operator/strimzi:0.51.0 docker push <internal-image-registry>/datastore/kafka:0.51.0_v0.32.0Crie
custom_values.yamle especifique a tolerância e a afinidade. Pule esta etapa se o arquivo já tiver sido criado.tolerations: - key: node.instana.io/monitor operator: Equal effect: NoSchedule value: "true" affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: node-role.kubernetes.io/monitor operator: In values: - "true"Atualize o operador Strimzi.
helm upgrade --install strimzi strimzi-kafka-operator-helm-3-chart-0.51.0.tgz --version 0.51.0 -n instana-kafka --set image.registry=<internal-image-registry> --set image.repository=operator/strimzi --set image.name=strimzi --set image.tag=0.51.0_v0.32.0 --set kafka.image.registry=<internal-image-registry> --set kafka.image.repository=datastore/kafka --set kafka.image.name=kafka --set kafka.image.tag=0.51.0-kafka-4.1.1_v0.32.0 -f custom_values.yamlAtualize o recurso personalizado Kafka.
kubectl patch kafka instana -n instana-kafka --type=merge --patch ' spec: kafka: version: "4.1.1" entityOperator: userOperator: image: <internal-image-registry>/self-hosted-images/3rd-party/operator/strimzi:0.51.0_v0.32.0 'Conclua as etapas em Verificação de Kafka (online e offline).
Verificando Kafka (online e offline)
Siga estas etapas para verificar uma instância d Kafka e atualizar o armazenamento de dados.
Verifique a atualização do Instana Kafka.
kubectl get all -n instana-kafkaA saída pode ser como no exemplo a seguir.
NAME READY STATUS RESTARTS AGE pod/instana-entity-operator-8564975588-mrz2f 3/3 Running 0 15m pod/instana-kafka-0 1/1 Running 0 16m pod/instana-kafka-1 1/1 Running 0 16m pod/instana-kafka-2 1/1 Running 0 16m pod/instana-contoller-0 1/1 Running 0 17m pod/instana-contoller-1 1/1 Running 0 17m pod/instana-contoller-2 1/1 Running 0 17m pod/strimzi-cluster-operator-cf49c75d8-qm8jq 1/1 Running 0 34m NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/instana-kafka-bootstrap ClusterIP 192.168.1.239 <none> 9091/TCP,9092/TCP 16m service/instana-kafka-brokers ClusterIP None <none> 9090/TCP,9091/TCP,9092/TCP 16m NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/instana-entity-operator 1/1 1 1 15m deployment.apps/strimzi-cluster-operator 1/1 1 1 34m NAME DESIRED CURRENT READY AGE replicaset.apps/instana-entity-operator-8564975588 1 1 1 15m replicaset.apps/strimzi-cluster-operator-cf49c75d8 1 1 1 34mCertifique-se de que os pods estejam agendados nos nós desejados.
kubectl get pods -n instana-kafka -o wideO exemplo a seguir mostra um resultado de saída.
instana-entity-operator-77c6bc665-74d9t 1/1 Running 1 22d 10.254.12.207 worker0.instana-odf5.cp.fyre.ibm.com <none> <none> instana-kafka-0 1/1 Running 1 22d 10.254.12.206 worker1.instana-odf5.cp.fyre.ibm.com <none> <none> instana-kafka-1 1/1 Running 0 22d 10.254.20.18 worker2.instana-odf5.cp.fyre.ibm.com <none> <none> instana-kafka-2 1/1 Running 0 22d 10.254.12.204 worker3.instana-odf5.cp.fyre.ibm.com <none> <none> instana-contoller-0 1/1 Running 1 22d 10.254.12.207 worker0.instana-odf5.cp.fyre.ibm.com <none> <none> instana-contoller-1 1/1 Running 0 22d 10.254.12.206 worker1.instana-odf5.cp.fyre.ibm.com <none> <none> instana-contoller-2 1/1 Running 0 22d 10.254.20.18 worker2.instana-odf5.cp.fyre.ibm.com <none> <none> strimzi-cluster-operator-5c9dfd89c6-dbr4d 1/1 Running 1 22d 10.254.12.204 worker3.instana-odf5.cp.fyre.ibm.com <none> <none>