Strimzi Kafka installieren

Der Cluster, in dem Sie Kafka installieren, hängt davon ab, wie Ihre Cluster eingerichtet sind und ob Sie Sterling Order Management System Software oder externe Systeme verwenden. Wenn Sie die Sterling Order Management System Software oder externe Systeme verwenden, müssen Sie eine externe Kafka -Instanz installieren.

Informationen zu diesem Vorgang

Die Kafka -Instanz, die vom Sterling Intelligent Promising -Operator installiert wird, kann nicht mit einer Anwendung interagieren, die außerhalb des Clusters installiert ist, auf dem Sterling Intelligent Promising installiert ist. Wenn sich die Sterling Order Management System Software, die Daten in Sterling Intelligent Promisingeinpflegt, oder externe Systeme, die Ereignisse aus Sterling Intelligent Promising konsumieren, also nicht in demselben Cluster befinden, in dem Sterling Intelligent Promising installiert ist, können diese Anwendungen nur über eine externe Kafka-Instanz in Sterling Intelligent Promising integriert werden. Dies ist eine Kafka -Instanz, die nicht vom Operator Sterling Intelligent Promising installiert wird. Diese Kafka -Instanz muss in demselben Cluster installiert werden, in dem auch Sterling Intelligent Promising installiert ist.

Vorgehensweise

  1. Installieren Sie Strimzi Kafka.
    1. Installieren Sie Strimzi Kafka mithilfe des Strimzi-Operators. Weitere Informationen finden Sie unter Strimzi-Bereitstellung.
    2. Erstellen Sie eine angepasste Kafka -Ressource und fügen Sie auto.create.topics.enable: true zum Attribut config hinzu, wie in der folgenden YAML-Beispieldatei gezeigt.
      • Für Red Hat® OpenShift® Container Platform:
        kind: Kafka
        apiVersion: kafka.strimzi.io/v1beta2
        metadata:
          name: my-cluster
          namespace: kafka
        spec:
          kafka:
            version: 3.4.0
            replicas: 1
            listeners:
              - name: plain
                port: 9092
                type: internal
                tls: false
              - name: tls
                port: 9093
                type: internal
                tls: true
              - name: external
                port: 9094
                type: route
                tls: true  
            config:
              auto.create.topics.enable: true
              offsets.topic.replication.factor: 1
              transaction.state.log.replication.factor: 1
              transaction.state.log.min.isr: 1
              default.replication.factor: 1
              min.insync.replicas: 1
              inter.broker.protocol.version: '3.4'
            storage:
              type: ephemeral
          zookeeper:
            replicas: 1
            storage:
              type: ephemeral
          entityOperator:
            topicOperator: {}
            userOperator: {}
        Weitere Informationen finden Sie unter Auf Kafka: OpenShift -Routen.
      • Für Kubernetes:
        apiVersion: kafka.strimzi.io/v1beta2
        kind: Kafka
        metadata:
          name: my-cluster
          namespace: kafka
        spec:
          kafka:
            version: 3.4.0
            replicas: 1
            listeners:
              - name: plain
                port: 9092
                type: internal
                tls: false
              - name: tls
                port: 9093
                type: internal
                tls: true
              - name: external
                port: 9094
                type: ingress
                tls: true
                configuration:
                  bootstrap:
                    host: bootstrap.mycluster-wdc04-b-710294-f6afd368faf21a236febf87265241561-0000.us-east.containers.appdomain.cloud
                  brokers:
                  - broker: 0
                    host: broker-0.mycluster-wdc04-b-710294-f6afd368faf21a236febf87265241561-0000.us-east.containers.appdomain.cloud
            config:
              auto.create.topics.enable: true
              offsets.topic.replication.factor: 1
              transaction.state.log.replication.factor: 1
              transaction.state.log.min.isr: 1
              default.replication.factor: 1
              min.insync.replicas: 1
              inter.broker.protocol.version: "3.4"
            storage:
              type: ephemeral
          zookeeper:
            replicas: 1
            storage:
              type: ephemeral
          entityOperator:
            topicOperator: {}
            userOperator: {}
        Weitere Informationen finden Sie unter Auf Kafka: Kubernetes Ingress.
  2. Konfigurieren Sie Kafka in der IBM® Sterling Intelligent Promising -Umgebung.
    1. Konfigurieren Sie Kafka in Ihrer angepassten SIPEnvironment -Ressource, indem Sie die folgenden Eigenschaften hinzufügen:
       kafka:
        contactPoints: my-cluster-kafka-bootstrap.kafka.svc.cluster.local:9092
        zookeeperContactPoints: my-cluster-kafka-zookeeper-client.kafka.svc.cluster.local:2181  
      Hinweis: Stellen Sie sicher, dass Sie den Nicht-SSL-Port 9092 in contactPoints verwenden, wie im Beispielsnippet dargestellt.
    2. Fügen Sie die folgende Eigenschaft zu Ihrer YAML-Datei für geheime Schlüssel hinzu.
      kafka_security_protocol: PLAINTEXT   
  3. Konfigurieren Sie Kafka in der IBM Sterling Order Management System Software -Umgebung, indem Sie die folgenden Eigenschaften zur Datei customer_overrides.properties hinzufügen.
    kafka.cluster.names.ext=sip_kafka
    kafka.cluster.sip_kafka.producer.bootstrap.servers=<bootstrap_server_address_for_kafka>
    kafka.cluster.sip_kafka.producer.ssl.truststore.location=truststore.jks
    kafka.cluster.sip_kafka.producer.ssl.truststore.password=password
    kafka.cluster.sip_kafka.producer.security.protocol=SSL
    Hinweis: Stellen Sie sicher, dass Sie einen SSL-Port im Sicherheitsprotokoll verwenden, wie im Beispielsnippet gezeigt wird.

    Weitere Informationen zum Extrahieren der trustore.jks für den Red Hat OpenShift -Cluster finden Sie unter Auf Kafka: OpenShift -Routen.

    Weitere Informationen zum Extrahieren der trustore.jks für den Kubernetes -Cluster finden Sie unter Auf Kafka: Ingress.

    Weitere Informationen zu den Kafka -Eigenschaften finden Sie unter Kafka -Eigenschaften.