Git Product home page Git Product logo

Comments (4)

panyuenlau avatar panyuenlau commented on September 4, 2024

@play-io Can you provide detailed steps for reproducing this issue?

Based on the given information, I can only tell that the new broker never gets registered to ZooKeeper, but can't tell what causes this without seeing the detailed steps and some logs

from koperator.

bartam1 avatar bartam1 commented on September 4, 2024

Dear @play-io !
Are you sure about you wanted to change the containerPort for the external listener?
Kafka listens on the specified containerPort in the pod but it is not the same as the exposed port which is available outside of the Kubernetes cluster through envoy. You have to configure the externalStartingPort to modify the advertised.listener port number. Currently the exposed port will be the externalStartingPort + brokerID.
More details:


and here: https://smm-docs.eticloud.io/sdm/koperator/external-listener/

from koperator.

play-io avatar play-io commented on September 4, 2024

Hi @panyuenlau

but can't tell what causes this without seeing the detailed steps and some logs

Makes sense. Steps to reproduce:

  1. Put incorrect (config options start with -) configuraiton into brokers template config
    brokerConfigGroups:
    default:
    config: |-
    • "auto.create.topics.enable=false"
    • "cruise.control.metrics.topic.auto.create=true"
    • "cruise.control.metrics.topic.num.partitions=1"
    • "cruise.control.metrics.topic.replication.factor=1"
  2. Assign the template to all brokers
    brokers:
  • id: 0
    brokerConfigGroup: "default"
    ...
  1. Apply the new config to a cluster
  2. If after the new config is applied and brokers accessible then make a change to containerPort in externalListeners configuration.
    Given you have
    externalStartingPort: 19090
    containerPort: 9095
    Then change to
    externalStartingPort: 19090
    containerPort: 9096

Observations:

  • Incorrect configuration somehow hasn't broken cluster from the beginning
  • Just after making changes in externalListener ports.

Troubleshooting:
After the change my cluster was in Running state, but I could not access it:

envoy had correct (updated) configuration in the configmap
brokers exposed correct (updated) container port
BUT zookeeper. get /config/brokers/0 had advertised.listeners still pointing to port 9094
BUT zookeeper. get /config/brokers/1 did not exist

from koperator.

play-io avatar play-io commented on September 4, 2024

H @bartam1

Are you sure about you wanted to change the containerPort for the external listener?

Yes an I'm aware about its sense. Thanks for your comment

from koperator.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.