Aktualisierung des Datenspeichers „ Kafka “ auf Linux x86_64

Aktualisieren Sie den Operator „ Kafka “ und aktualisieren Sie den Datenspeicher „ Kafka “.

Vorbereitende Schritte

Stellen Sie sicher, dass Sie Ihren Online- und Offline-Host so vorbereitet haben, dass er Bilder aus dem externen Repository abrufen kann. Stellen Sie außerdem sicher, dass das richtige Repository „ Helm “ hinzugefügt wurde.

Von Strimzi 0.46.0 wird die Unterstützung für Kafka Versionen 3.8.0 und 3.8.1, ZooKeeper-based Apache Kafka Cluster und KRaft-Migration eingestellt. Wenn Sie Strimzi 0.45.0 oder eine ältere Version verwenden, müssen Sie vor dem Upgrade auf Strimzi 0.46.0 eine Migration zu KRaft durchführen.

Wichtig: Um „ Kafka “ ( 4.x.x ) oder eine neuere Version nutzen zu können, müssen Sie „ BeeInstana “ auf die Version „ 1.3.28 “ für „ Linux x86_64 “ aktualisieren. Ältere Versionen von „ BeeInstana “ sind nicht kompatibel mit „ Kafka “, „ 4.x.x “ und späteren Versionen.

Weitere Informationen zur Migration von Daten aus einem Zookeeper-basierten Cluster in einen KRaft-Cluster finden Sie online unter „Migration von Zookeeper zu KRaft“ auf Kafka.

Kafka Betreiberversionen und Bild-Tags

Die folgenden Bilder werden für die angeheftete Version des Diagramms „ Helm “ oder die Operator-Versionen benötigt.

Plattform Operatorversionen Version des Helm-Diagramms Bild mit Tag
Linux® x86_64 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

Kafka -Online-Upgrade

Führen Sie die folgenden Schritte aus, um den Datenspeicher „ Kafka “ zu aktualisieren.

  1. Aktualisieren Sie den Strimzi Operator.

    helm upgrade --install strimzi-kafka-operator 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
                   
  2. Aktualisieren Sie die benutzerdefinierte Ressource „ Kafka “.

    kubectl patch Kafka instana -n instana-kafka --type='merge' -p '
       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
             '
     
  3. Führen Sie die Schritte unter „ Kafka überprüfen (online und offline) “ aus.

Kafka -Offline-Upgrade

Wenn Sie die Strimzi-Bilder nicht aus der externen Registrierung abgerufen haben, können Sie dies jetzt tun. Führen Sie die folgenden Befehle auf Ihrem Bastion-Host aus. Kopieren Sie anschließend die Bilder auf Ihren Host „ Instana “, der sich in Ihrer luftisolierten Umgebung befindet.

docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:0.51.0_v0.32.0
docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:0.51.0-kafka-4.1.1_v0.32.0
         

Führen Sie die folgenden Schritte auf Ihrem Host „ Instana “ aus.

  1. Die Bilder in Ihrer internen Bilddatenbank neu kennzeichnen.

    docker tag artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:0.51.0_v0.32.0 <internal-image-registry>/operator/strimzi:0.51.0_v0.32.0
    docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:0.51.0-kafka-4.1.1_v0.32.0 <internal-image-registry>/datastore/kafka:0.51.0-kafka-4.1.1_v0.32.0
                   
  2. Übertragen Sie die Bilder in Ihre interne Bildregistrierung auf Ihrem Bastion-Host.

    docker push <internal-image-registry>/operator/strimzi:0.51.0_v0.32.0
    docker push <internal-image-registry>/datastore/kafka:0.51.0-kafka-4.1.1_v0.32.0
                   
  3. Aktualisieren Sie Strimzi Operator.

    helm upgrade --install strimzi-kafka-operator 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 --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 --set kafka.image.name=kafka --set kafka.image.tag=0.51.0-kafka-4.1.1_v0.32.0 --set image.imagePullSecrets[0].name="<internal-image-registry-pull-secret>
     
  4. Aktualisieren Sie die benutzerdefinierte Ressource „ 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
     '
     
  5. Führen Sie die Schritte unter „ Kafka überprüfen (online und offline) “ aus.

Überprüfen von „ Kafka “ (online und offline)

Führen Sie diese Schritte aus, um die Instanz und den Datenspeicher von „ Kafka “ zu überprüfen.

  1. Warten Sie, bis das Upgrade auf „ Kafka “ abgeschlossen ist.

    kubectl wait kafka/instana --for=condition=Ready --timeout=300s -n instana-kafka
     
  2. Überprüfen Sie das Upgrade von „ Instana “ auf „ Kafka “.

    kubectl get all -n instana-kafka
     

    Die Ausgabe könnte wie im folgenden Beispiel aussehen.

    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-controller-0                       1/1     Running   0          17m
    pod/instana-controller-1                       1/1     Running   0          17m
    pod/instana-controller-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       34m