Uploaded image for project: 'AMQ Streams'
  1. AMQ Streams
  2. ENTMQST-2354

Kafka Connect can't be scheduled when rack-awareness is defined

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Done
    • Icon: Major Major
    • 1.6.2.GA
    • 1.6.0.GA
    • kafka-connect
    • None
    • False
    • False
    • Undefined

      When Kafka and Kafka Connect are deployed using rack-awareness
      e.g

      KafkaConnectResource.kafkaConnect(CLUSTER_NAME, 2)
                      .editSpec()
                          .withNewRack()
                              .withTopologyKey(clientRackKey)
                          .endRack()
                          // kafka only line
                         .addToConfig("replica.selector.class", "org.apache.kafka.common.replica.RackAwareReplicaSelector")
                      .endSpec().done();
      

      Kafka Connect is unable to be scheduled for deployment. I am seeing following error in

      oc get kc -n specific-cluster-test -o yaml
      apiVersion: v1
      items:
      - apiVersion: kafka.strimzi.io/v1beta1
        kind: KafkaConnect
        metadata:
          creationTimestamp: "2020-11-02T11:11:47Z"
          generation: 1
          managedFields:
          ...
          name: my-cluster
          namespace: specific-cluster-test
          resourceVersion: "4439106"
          selfLink: /apis/kafka.strimzi.io/v1beta1/namespaces/specific-cluster-test/kafkaconnects/my-cluster
          uid: 3d1080b0-da11-4e4e-8c9e-06169900b34c
        spec:
          bootstrapServers: my-cluster-kafka-bootstrap:9093
          config:
            config.storage.topic: my-cluster-connect-config
            group.id: my-cluster-connect
            offset.storage.topic: my-cluster-connect-offsets
            replica.selector.class: org.apache.kafka.common.replica.RackAwareReplicaSelector
            status.storage.topic: my-cluster-connect-status
          logging:
            loggers:
              connect.root.logger.level: DEBUG
            type: inline
          rack:
            topologyKey: client-rack
          replicas: 2
          tls:
            trustedCertificates:
            - certificate: ca.crt
              secretName: my-cluster-cluster-ca-cert
          version: 2.6.0
        status:
          conditions:
          - lastTransitionTime: "2020-11-02T11:11:47.920491Z"
            message: 'Failure executing: PATCH at: https://172.30.0.1/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/strimzi-specific-cluster-test-my-cluster-kafka-init. Message: clusterroles.rbac.authorization.k8s.io "strimzi-kafka-client" not found. Received status: Status(apiVersion=v1, code=404, details=StatusDetails(causes=[], group=rbac.authorization.k8s.io, kind=clusterroles, name=strimzi-kafka-client, retryAfterSeconds=null, uid=null, additionalProperties={}), kind=Status, message=clusterroles.rbac.authorization.k8s.io "strimzi-kafka-client" not found, metadata=ListMeta(_continue=null, remainingItemCount=null, resourceVersion=null, selfLink=null, additionalProperties={}), reason=NotFound, status=Failure, additionalProperties={}).'
            reason: KubernetesClientException
            status: "True"
            type: NotReady
          labelSelector: strimzi.io/cluster=my-cluster,strimzi.io/name=my-cluster-connect,strimzi.io/kind=KafkaConnect
          observedGeneration: 1
          replicas: 2
          url: http://my-cluster-connect-api.specific-cluster-test.svc:8083
      kind: List
      metadata:
        resourceVersion: ""
        selfLink: ""
      

              Unassigned Unassigned
              mtoth@redhat.com Michal Toth
              Michal Toth Michal Toth
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: