কনসোল প্রযোজকটিতে লিডার পাওয়া যায় না কাফকা


172

আমি কাফকা ব্যবহার করার চেষ্টা করছি।
সমস্ত কনফিগারেশন সঠিকভাবে সম্পন্ন হয়েছে কিন্তু যখন আমি কনসোল থেকে বার্তা তৈরি করার চেষ্টা করি তখন আমি নিম্নলিখিত ত্রুটিটি পেতে থাকি

WARN Error while fetching metadata with correlation id 39 : 
     {4-3-16-topic1=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient)

কাফকার সংস্করণ: 2.11-0.9.0.0


আপনি কাফকার কোন সংস্করণ ব্যবহার করছেন? আপনি কীভাবে জানবেন যে সমস্ত কনফিগারেশন সঠিক? দয়া করে আরও তথ্য যুক্ত করার চেষ্টা করুন
নটিলাস

আমি 2.11-0.9.0.0 সংস্করণটি ব্যবহার করছি, আমি বলেছিলাম যে সমস্ত কনফিগারগুলি সঠিক কারণ এটি কাজ করছে was
বিশেশ

1
@Vishesh করতে পারেন কমান্ড অনুসরণ ফল প্রদান ./bin/kafka-topics.sh --zookeeper স্থানীয় হোস্ট: 2181 --describe --topic yourTopicName
AVR

2
আমার জন্য একই ত্রুটি। আমি লিডার পাচ্ছি।
ভিলভা

2
আমি 2.2.02019 সালে
কাফকার

উত্তর:


93

এটি advertised.host.nameআপনার সেটিংস সম্পর্কিত হতে পারে server.properties

কি ঘটতে পারে যে, আপনার প্রযোজক, আউট তার পরিসংখ্যান খুঁজে বের করতে যারা একটি প্রদত্ত পার্টিশনের জন্য নেতা চেষ্টা করছে advertised.host.nameএবং advertised.portএবং চেষ্টা সংযোগ স্থাপন করতে। যদি এই সেটিংসটি সঠিকভাবে কনফিগার করা না থাকে তবে মনে করতে পারে যে নেতা অনুপলব্ধ।


1
এটি আমার জন্য ত্রুটিটি স্থির করে দিয়েছে .. তবে সার্ভার.প্রেটিস-এর মন্তব্যগুলিতে বলা হয়েছে যে যদি বিজ্ঞাপন.হোস্ট.নাম কনফিগার না করা হয় তবে এটি হোস্ট.নেম ব্যবহার করবে। এবং হোস্ট.নেমটি সার্ভার.প্রপার্টি ফাইলগুলিতে কনফিগার করা হয়েছিল।
মিঃ স্পার্ক

আমি একই সমস্যা পেয়েছি এবং এটি আমার জন্য
কাফকার

3
এডাব্লুএসের উত্সযুক্ত পাবলিক হোস্ট নামের পরিবর্তে আমার আইপি ঠিকানায় এটি সেট করা আমার অনেক সমস্যার সমাধান করেছে।
স্পেশাল

81

আমি এখানে তালিকাভুক্ত সমস্ত সুপারিশ চেষ্টা করেছিলাম। আমার জন্য যা কাজ করেছিল তা ছিল গিয়ে server.propertiesযোগ করা:

port = 9092
advertised.host.name = localhost 

ছেড়ে দিন listenersএবং advertised_listenersমন্তব্য।


5
সমাধানটি আমার জন্য কাজ করে ( উইকাসের সমাধানের লিঙ্ক ) কেবলমাত্র এটি যুক্ত করতে চাই যে আমার জন্য ম্যাক server.propertiesফাইলটিতে অবস্থিত/usr/local/etc/kafka/
এডিসন কিউ

2
এই কি আমার জন্য কাজ ছিল advertised.listeners=PLAINTEXT://my.ip:9092
জনাব ক্রাউলি

14
এটি ব্যবহার করবেন না - port, advertised.host.nameহ্রাস করা কনফিগারেশন রয়েছে। kafka.apache.org/docamentation/#brokerconfigs
স্টিফেন

44

আমার পক্ষে কী সমাধান হয়েছে তা শ্রোতাদের এভাবে সেট করা:

advertised.listeners = PLAINTEXT://my.public.ip:9092
listeners = PLAINTEXT://0.0.0.0:9092

এটি কাফকার দালালকে সমস্ত ইন্টারফেস শুনতে দেয়।


4
এটি গ্রহণযোগ্য উত্তর হওয়া উচিত। মাল্টি নোড কনফিগারেশনের জন্য কাজ করে এবং প্রচুর অর্থবোধ করে।
পীযূষ শ্রীবাস্তব

আমরা কি এটি আমাদের app.yaml ফাইলটিতে ব্যবহার করতে পারি?
কোডার

40

আমার কাছে কাফকা ডকারের ধারক হিসাবে চলছিল এবং অনুরূপ বার্তাগুলি লগতে বয়ে যাচ্ছিল।
এবং KAFKA_ADVERTISED_HOST_NAME'কাফকা' সেট করা হয়েছিল।

আমার ক্ষেত্রে ত্রুটির কারণ ছিল /etc/hosts'কাফকা' পাত্রে নিজেই 'কাফকা' র রেকর্ড অনুপস্থিত ।
সুতরাং, উদাহরণস্বরূপ, ping kafka'কাফকা' ধারকটির ভিতরে চলতে ব্যর্থ হবেping: bad address 'kafka'

ডকারের ক্ষেত্রে এই সমস্যাটি ধারকটির hostnameজন্য নির্দিষ্ট করে সমাধান করা হবে ।

এটি অর্জনের জন্য বিকল্পগুলি:


এটি প্রতি সেটের কোনও উত্তর নয় , তবে ভবিষ্যতের রেফারেন্সের জন্য: যখন (বা যদি) ডকার / ডকার # 1143 সমাধান করা হয়, তখন ধারকটির হোস্টকে রেফারেন্স করার একটি সহজ উপায় থাকবে which কোন OS ব্যবহার করা হোক না কেন।
মাইকেল আহ্লার 21

আপনি যদি ওয়ার্সমিস্টার / কাফকা-ডকার ডকার ইমেজ ব্যবহার করছেন (যা সম্ভবত এই লেখার সময়কার মধ্যে সবচেয়ে জনপ্রিয় একটি), সেই
এনভির

32

আমি কাফকা_১.১২-০.১০.২.১ ব্যবহার করছি:

vi config/server.properties

লাইনের নিচে যুক্ত করুন:

listeners=PLAINTEXT://localhost:9092
  • বিজ্ঞাপনদাতাদের পরিবর্তন করার দরকার নেই ten

হোস্টনাম এবং পোর্ট ব্রোকার উত্পাদনকারী এবং ভোক্তাদের বিজ্ঞাপন দেবে। যদি সেট না করা হয়,

  • এটি কনফিগার করা থাকলে "শ্রোতাদের" মান ব্যবহার করে

অন্যথায়, এটি থেকে প্রাপ্ত মানটি ব্যবহার করবে java.net.InetAddress.getCanonicalHostName()

কাফকা ব্রোকার বন্ধ করুন:

bin/kafka-server-stop.sh

ব্রোকার পুনরায় চালু করুন:

bin/kafka-server-start.sh -daemon config/server.properties

এবং এখন আপনার কোনও সমস্যা দেখা উচিত নয়।


এটি আমার জন্য এটি সমাধান করেছে, server.propertiesআমি পুনরায় লোডড ডিমন দিয়ে ব্রোকারটিকে পুনরায় শুরু না করা পর্যন্ত সংশোধন করা যথেষ্ট ছিল না। হতে পারে আপনি এটি জানার কথা, তবে এটি অবশ্যই এই উত্তরে এটি নির্দিষ্ট করে রাখতে সহায়তা করেছে
বোসান

এটি আমার জন্য কাজ করেছে, আপনাকে অনেক ধন্যবাদ ভাই। আমি ব্যবহার করছিkafka 2.13
আলেজান্দ্রো হেরেরা

31

কাফকার সাথে কাজ করার সময় আমি গত 2 সপ্তাহে এই একই সমস্যাটি প্রত্যক্ষ করছি এবং তখন থেকেই এই স্ট্যাকওভারফ্লো পোস্টটি পড়ছি।

বিশ্লেষণের 2 সপ্তাহ পরে আমি অনুমান করেছি যে আমার ক্ষেত্রে এটি ঘটে যখন কোনও অস্তিত্ব নেই এমন কোনও বিষয়ে বার্তা দেওয়ার চেষ্টা করার সময়

আমার ক্ষেত্রে ফলাফলটি হ'ল কাফকা একটি ত্রুটি বার্তা প্রেরণ করে তবে একই সাথে, এমন বিষয় তৈরি করে যা আগে ছিল না। সুতরাং যদি আমি এই ইভেন্টের পরে সেই বিষয়ে আবার কোনও বার্তা আনার চেষ্টা করি তবে ত্রুটিটি বিষয়টি তৈরি হওয়ার পরে আর প্রদর্শিত হবে না।

অনুগ্রহ করে নোট করুন: এটি হতে পারে যে আমার নির্দিষ্ট কাফকা ইনস্টলেশনটি যখন অস্তিত্বহীন তখন টপিকটি স্বয়ংক্রিয়ভাবে তৈরি করতে কনফিগার করা হয়েছিল; এই বিষয়টি ব্যাখ্যা করা উচিত কেন আমার ক্ষেত্রে বিষয়গুলি পুনরায় সেট করার পরে আমি প্রতিটি বিষয়ের জন্য কেবল একবারই এই সমস্যাটি দেখতে পাচ্ছি: আপনার কনফিগারেশনটি অন্যরকম হতে পারে এবং সেই ক্ষেত্রে আপনি একই ত্রুটি বার বার পেতে থাকবেন।

শুভেচ্ছা সহ,

লুকা ট্যাম্পেলিনী


হাই লুকা আমি নতুন নতুন বিষয়ও তৈরি করছি। আমার প্রশ্ন হ'ল আপনি কীভাবে আপনার গ্রাহকদের এই নতুন বিষয়টিকে স্বয়ংক্রিয় আবিষ্কার করতে দিচ্ছেন? আমার গ্রাহকরা এটি করবেন না। এবং আমি আমার গ্রাহকদের পুনঃসূচনা করার পরে নতুন বার্তাগুলি পাওয়া যাবে তবে বার্তাটি বিষয় তৈরির কারণ হয়ে গেছে।
jchnxu

15

আমরা এখনও তৈরি হয়নি এমন কোনও বিষয়ে সাবস্ক্রাইব করার চেষ্টা করার সময় আমরা এই বার্তাটি পাই tend আমরা আমাদের নিযুক্ত পরিবেশে অগ্রণী তৈরি করার জন্য বিষয়গুলিতে সাধারণত নির্ভর করি, তবে আমাদের উপাদান উপাদান রয়েছে যা ডকারাইজড কাফকা উদাহরণের বিরুদ্ধে চলে, যা প্রতিবারই পরিষ্কার শুরু হয়।

সেক্ষেত্রে বিষয়টি বিদ্যমান কিনা তা পরীক্ষা করতে আমরা আমাদের পরীক্ষার সেটআপে অ্যাডমিন ইউটিগুলি ব্যবহার করি এবং না থাকলে এটি তৈরি করি। অ্যাডমিনিটস সেট আপ সম্পর্কে আরও তথ্যের জন্য এই অন্যান্য স্ট্যাক ওভারফ্লো দেখুন।


8

এই সতর্কবার্তার জন্য আরেকটি সম্ভাবনা (০.১০.২.১) আপনি হ'ল এমন একটি বিষয়ে জরিপ করার চেষ্টা করছেন যা সবেমাত্র তৈরি হয়েছে এবং এই বিষয়-বিভাজনের জন্য নেতা এখনও উপলভ্য নয়, আপনি নেতৃত্বের নির্বাচনের মাঝামাঝি।

বিষয় তৈরি এবং ভোটদানের মধ্যে একটি সেকেন্ডের জন্য অপেক্ষা করা একেবারে কার্যনির্বাহী।


6

যে কেউ কুবেরনেটে কাফকা চালানোর চেষ্টা করছেন এবং এই ত্রুটিতে চলেছেন, অবশেষে এটিই আমার জন্য সমাধান করেছে:

আপনি হয়:

  1. hostnameপোড স্পেক যোগ করুন , কাফকা নিজেকে খুঁজে পেতে পারেন।

অথবা

  1. যদি ব্যবহার করে থাকেন hostPortতবে আপনার প্রয়োজন hostNetwork: trueএবং anddnsPolicy: ClusterFirstWithHostNet

এর কারণ হ'ল কাফকার নিজের সাথে কথা বলা দরকার এবং লোকালহোস্ট ব্যবহার না করে নিজেই এটি অনুসন্ধান করার জন্য 'বিজ্ঞাপনযুক্ত' শ্রোতা / হোস্টনাম ব্যবহার করার সিদ্ধান্ত নিয়েছে। আপনার কাছে এমন কোনও পরিষেবা রয়েছে যা পোদে বিজ্ঞাপনিত হোস্টের নাম নির্দেশ করে, তবে এটি শুঁটির মধ্যে থেকে দৃশ্যমান নয়। আমি কেন জানি না জানি না, তবে কমপক্ষে একটি কার্যকারিতা রয়েছে।

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: zookeeper-cluster1
  namespace: default
  labels:
    app: zookeeper-cluster1
spec:
  replicas: 1
  selector:
    matchLabels:
      app: zookeeper-cluster1
  template:
    metadata:
      labels:
        name: zookeeper-cluster1
        app: zookeeper-cluster1
    spec:
      hostname: zookeeper-cluster1
      containers:
      - name: zookeeper-cluster1
        image: wurstmeister/zookeeper:latest
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 2181
        - containerPort: 2888
        - containerPort: 3888

---

apiVersion: v1
kind: Service
metadata:
  name: zookeeper-cluster1
  namespace: default
  labels:
    app: zookeeper-cluster1
spec:
  type: NodePort
  selector:
    app: zookeeper-cluster1
  ports:
  - name: zookeeper-cluster1
    protocol: TCP
    port: 2181
    targetPort: 2181
  - name: zookeeper-follower-cluster1
    protocol: TCP
    port: 2888
    targetPort: 2888
  - name: zookeeper-leader-cluster1
    protocol: TCP
    port: 3888
    targetPort: 3888

---

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: kafka-cluster
  namespace: default
  labels:
    app: kafka-cluster
spec:
  replicas: 1
  selector:
    matchLabels:
      app: kafka-cluster
  template:
    metadata:
      labels:
        name: kafka-cluster
        app: kafka-cluster
    spec:
      hostname: kafka-cluster
      containers:
      - name: kafka-cluster
        image: wurstmeister/kafka:latest
        imagePullPolicy: IfNotPresent
        env:
        - name: KAFKA_ADVERTISED_LISTENERS
          value: PLAINTEXT://kafka-cluster:9092
        - name: KAFKA_ZOOKEEPER_CONNECT
          value: zookeeper-cluster1:2181
        ports:
        - containerPort: 9092

---

apiVersion: v1
kind: Service
metadata:
  name: kafka-cluster
  namespace: default
  labels:
    app: kafka-cluster
spec:
  type: NodePort
  selector:
    app: kafka-cluster
  ports:
  - name: kafka-cluster
    protocol: TCP
    port: 9092
    targetPort: 9092

2
1.% এর ত্রুটি কাজ করে না: স্থানীয়: হোস্ট রেজোলিউশন ব্যর্থতা: কাফকা-গুচ্ছ: 9092/1001: 'কাফকা-গুচ্ছ: 9092' সমাধান করতে ব্যর্থ: নোডনাম বা সার্ভার নাম সরবরাহ করা বা জানা নেই
লু 32

আমি পরিষেবা নাম হিসাবে হোস্টনামটি যুক্ত করেছি, আমার পক্ষে কাজ করছি!
কার্তিকেয়ন

6

এটি যুক্ত করা যেহেতু এটি অন্যকে সহায়তা করতে পারে। একটি সাধারণ সমস্যা এর ভুল কনফিগারেশন হতে পারে advertised.host.name। ডকারের সাহায্যে ডকার-কমপোজ সেটিংয়ের নামটি সেটিংয়ের নামটি ব্যবহার করে অভ্যর্থনা হবে KAFKA_ADVERTISED_HOST_NAMEনা যদি না আপনি হোস্টের নামটি সেট না করেন। docker-compose.ymlউদাহরণ:

  kafka:
    image: wurstmeister/kafka
    ports:
      - "9092:9092"
    hostname: kafka
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka
      KAFKA_CREATE_TOPICS: "test:1:1"
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

উপরের ছাড়াও সংযোগ দেওয়ার চেষ্টা করার সময় hostname: kafkaএকটি জারি করতে LEADER_NOT_AVAILABLEপারে। আপনি এখানে একটি কার্যকারী docker-composeকনফিগারেশনের উদাহরণ খুঁজে পেতে পারেন


6

আমার ক্ষেত্রে, এটি বাড়িতে ঠিকঠাক কাজ করছিল, তবে এটি অফিসে ব্যর্থ হয়েছিল, এই মুহুর্তে আমি অফিস নেটওয়ার্কের সাথে সংযোগ করছি।

সুতরাং কনফিগারেশন / সার্ভার.পরিচয় শ্রোতাদের = প্লেনটেক্সট: //: 9092 শ্রোতার কাছে = প্লেনটেক্সট: // লোকালহোস্ট: 9092

আমার ক্ষেত্রে, গ্রাহক গ্রুপের বর্ণনা দেওয়ার সময় আমি পেয়ে যাচ্ছিলাম


কেন হেক তারা সঠিক ডিফল্ট সেট করে না, এটি আমাকে সহায়তা করেছিল।
পাউডার366

5

আপনি যদি স্থানীয় মেশিনে কাফকা চালাচ্ছেন listeners=PLAINTEXT://localhost:9092তবে নীচের লাইনের সাথে $ কেএফকা_ডিআইআর / কনফিগারেশন / সার্ভার.প্রপার্টি আপডেট করার চেষ্টা করুন: এবং তারপরে কাফকা পুনরায় চালু করার চেষ্টা করুন।


আমি কীভাবে ডকার-কম্পোজ.আইএমএল এ এটি করব?
এসি 28

আপনি একটি এন্ট্রি পয়েন্ট শেল স্ক্রিপ্ট docs.docker.com/compose/compose-file/#entryPoint ব্যবহার করতে পারেন ডকার কমপোজ এবং ওভাররাইট (সেড) শ্রোতাদের সাথে সার্ভার.প্রপার্টি।
মিঃকুল্লি

3

আমি wurstmeister/kafkaইমেজ ব্যবহার করে কাফকা ধারক তৈরি করতে ডকার-কম্পোজ ব্যবহার করছি । যোগ করার পদ্ধতি KAFKA_ADVERTISED_PORT: 9092আমার কাছে সম্পত্তি docker-composeফাইল আমার জন্য এই ত্রুটি সমাধান।


3

যেহেতু আমি আমার কাফকা ব্রোকারটি দূরবর্তী উত্পাদক এবং ভোক্তাদের সাথে সংযোগ স্থাপন করতে চাইছিলাম, তাই আমি advertised.listenerমন্তব্য করতে চাই না । আমার ক্ষেত্রে (কুবেরনেটে কাফকা চালানো), আমি জানতে পেরেছিলাম যে আমার কাফকা পোড কোনও ক্লাস্টার আইপি বরাদ্দ করা হয়নি। clusterIP: Noneপরিষেবাদি.আইএমএল থেকে লাইনটি সরিয়ে , কুবেরনেটস কাফকা পোদে একটি অভ্যন্তরীণ-আইপি বরাদ্দ করে। এটি আমার LEADER_NOT_AVAILABLE ইস্যু এবং কাফকা প্রযোজক / গ্রাহকদের দূরবর্তী সংযোগ সমাধান করেছে।


3

যখন LEADER_NOT_AVAILABLE ত্রুটি ছুড়ে দেয়, কেবল কাফকা ব্রোকারটি পুনরায় চালু করুন:

/bin/kafka-server-stop.sh

অনুসরণ করেছে

/bin/kafka-server-start.sh config/server.properties

(দ্রষ্টব্য: চিড়িয়াখানা অবশ্যই এই সময়ের মধ্যে চলমান থাকবে, যদি আপনি অন্যভাবে করেন তবে এটি কাজ করবে না)


হ্যাঁ. কাফকা প্রথমে শুরু হওয়ার পরে এবং চিড়িয়াখানার পরে ঘটে।
পাঁচচিকর

আমি এটি করেছি এবং এটি একেবারেই সমাধান করে না। কী অদ্ভুত তা হ'ল দালাল সূচনা করে এমন করে যে এটি নেতা। হিসেবে New leader is 0
স্যামি

2

এই নীচে এই লাইনটি আমি যুক্ত করেছি config/server.properties, এটি আমার উপরের সমস্যাটির অনুরূপ সমস্যার সমাধান করেছে। আশা করি এটি সহায়তা করে, সার্ভার.প্রপার্টি ফাইলগুলিতে এটি বেশ ভালভাবে নথিভুক্ত হয়েছে, আপনি এটি সংশোধন করার আগে পড়ার এবং বুঝতে চেষ্টা করুন। advertised.listeners=PLAINTEXT://<your_kafka_server_ip>:9092


1

যারা কাফকার এসএসএল সেটআপের সাথে লড়াই করছে এবং এই LEADER_NOT_AVAILABLE ত্রুটিটি দেখছে তাদের সকলের জন্য। ভাঙার কারণগুলির মধ্যে একটি হ'ল কীস্টোর এবং ট্রস্টস্টোর। কীস্টোরটিতে আপনার সার্ভারের + কি স্বাক্ষরিত সার্ভার শংসাপত্রের ব্যক্তিগত কী থাকা দরকার। ক্লায়েন্ট ট্রস্টস্টোরে আপনার ইন্টারমিডিয়েট সিএ শংসাপত্র থাকা দরকার যাতে ক্লায়েন্ট কাফকা সার্ভারটি প্রমাণীকরণ করতে পারে। আপনি যদি আন্তঃব্রোকার যোগাযোগের জন্য এসএসএল ব্যবহার করেন তবে আপনার এই ট্রাস্টস্টোরটি ব্রোকারদের সার্ভারে স্থাপন করা দরকার rop প্রপার্টিগুলি যাতে তারা একে অপরকে প্রমাণীকরণ করতে পারে।

এই শেষ টুকরাটি আমি ভুল করে নিখোঁজ হয়েছি এবং এই LEADER_NOT_AVAILABLE ত্রুটির অর্থ কী হতে পারে তা খুঁজে বের করার জন্য আমার অনেক বেদনাদায়ক ঘন্টা তৈরি হয়েছিল। আশা করি এটি কারও সাহায্য করতে পারে।


"সার্ভারের ব্যক্তিগত কী" বলতে কী বোঝ? আমার সার্ভার কীস্টোরে সিএ কী এবং স্বাক্ষরিত সার্ভার শংসাপত্র রয়েছে যেখানে ক্লায়েন্ট ট্রস্টস্টোরে আমার সিএ শংসাপত্র রয়েছে .. তবে তবুও আমি এই ত্রুটিগুলি
পাচ্ছি

দুঃখিত, আমি ব্যক্তিগত কী + শংসাপত্র বলতে চাইছি। আমি বড় ক্লাস্টার স্থাপন করছিলাম এবং কোথাও আমলাতন্ত্র চেইনে ভুল হয়েছে যাতে একটি শংসাপত্র সিএসআরের সাথে মেলে না। এটি অন্য কারণও হতে পারে। প্রাইভেট কী, শংসাপত্রের মিলগুলি এবং সেই শংসাপত্রের এমডি 5 টি আপনার ট্রস্টস্টোরের সাথে যাচাই করা যেতে পারে Double ট্রস্টস্টোরে সাধারণত রুট এবং অন্তর্বর্তী (গুলি) শংসাপত্র থাকে
ভোজ্টম্যান

1

কনফিগারেশন ডিরেক্টরিতে অবস্থিত সার্ভার.প্রপার্টি ফাইলে শ্রোতার সেটিং যুক্ত করার পরে সমস্যার সমাধান করা হয়েছে। শ্রোতা = প্লেনটেক্সট: // লোকালহোস্ট (বা আপনার সার্ভার): 9092 এই পরিবর্তনের পরে কাফকা পুনরায় চালু করুন। সংস্করণ ব্যবহৃত হয়েছে 2.11


0

আমার জন্য, এটি মিস কনফিগারেশনের কারণে ঘটেছে
ডকার পোর্ট (9093)
কাফকা কমান্ড পোর্ট "বিন / কাফকা-কনসোল-প্রোডুসার্সারশ - ব্রোকার-তালিকা লোকালহোস্ট: 9092 - টপিক টপিকনাম"
আমি আমার কনফিগারেশনটি পোর্টের সাথে মেলে এবং এখন সব ঠিক আছে


0

আমার জন্য কারণটি একটি নির্দিষ্ট চিড়িয়াখানা ব্যবহার করছে যা কাফকা প্যাকেজের অংশ ছিল না। চিড়িয়াখানা অন্যান্য উদ্দেশ্যে ইতিমধ্যে মেশিনে ইনস্টল করা হয়েছিল। দৃশ্যত কাফকা কেবল কোনও চিড়িয়াখানার সাথে কাজ করে না। কাফকার সাথে আসা চিড়িয়াখানায় স্যুইচ করা আমার পক্ষে এটি সমাধান করে। বিদ্যমান চিড়িয়াখানার সাথে দ্বন্দ্ব না করার জন্য, চিড়িয়াখানাটি অন্য একটি বন্দরে শুনতে আমাকে আমার কনফিগারেশনটি সংশোধন করতে হয়েছিল:

[root@host /opt/kafka/config]# grep 2182 *
server.properties:zookeeper.connect=localhost:2182
zookeeper.properties:clientPort=2182

0

উপরের উত্তরে উল্লিখিত হিসাবে বর্ণিত শ্রোতাদের অন্যতম কারণ হতে পারে। অন্যান্য সম্ভাব্য কারণগুলি হ'ল:

  1. বিষয়টি সম্ভবত তৈরি করা হয়নি। আপনি এটি ব্যবহার করে পরীক্ষা করতে পারেনbin/kafka-topics --list --zookeeper <zookeeper_ip>:<zookeeper_port>
  2. আপনার বুটস্ট্র্যাপ সার্ভারগুলি যা আপনি নির্মাতাকে মেটাডেটা আনতে দিয়েছেন তা পরীক্ষা করুন। বুটস্ট্র্যাপ সার্ভারে যদি বিষয়টি সম্পর্কে সর্বশেষতম মেটাডেটা না থাকে (উদাহরণস্বরূপ, যখন এটি তার চিড়িয়াখানার দাবিটি হারিয়েছে)। আপনার অবশ্যই একাধিক বুটস্ট্র্যাপ সার্ভার যুক্ত করা উচিত।

এছাড়াও, নিশ্চিত হয়ে নিন যে আপনি বিজ্ঞাপনী শ্রোতার IP:9092পরিবর্তে সেট করেছেনlocalhost:9092 । পরবর্তীটির অর্থ দালালটি কেবল লোকালহোস্টের মাধ্যমে অ্যাক্সেসযোগ্য।

আমি যখন ত্রুটির মুখোমুখি হয়েছি তখন মনে আছে PLAINTEXT://<ip>:<PORT>বুটস্ট্র্যাপ সার্ভারের তালিকায় (বা ব্রোকারের তালিকা) ব্যবহার করেছি এবং এটি অদ্ভুতভাবে কাজ করেছে।

bin/kafka-console-producer --topic sample --broker-list PLAINTEXT://<IP>:<PORT>

0

আমার জন্য, আমি কাফকার দৃষ্টান্তের জন্য ব্রোকার আইডি নির্দিষ্ট করেছিলাম না। এটি ডুকার পরিবেশে আবার শুরু হওয়ার সাথে সাথে চিড়িয়াখানার কাছ থেকে একটি নতুন আইডি পাবেন। আপনার ব্রোকার আইডি যদি 1000 এর বেশি হয় তবে কেবল পরিবেশের পরিবর্তনশীল নির্দিষ্ট করুনKAFKA_BROKER_ID

দালাল, বিষয় এবং পার্টিশন দেখতে এটি ব্যবহার করুন।

brew install kafkacat
kafkacat -b [kafka_ip]:[kafka_poot] -L

0

আমি জানি এটি অনেক আগে পোস্ট করা হয়েছিল, আমি কীভাবে এটি সমাধান করেছি তা ভাগ করে নিতে চাই।
যেহেতু আমার অফিস ল্যাপটপ রয়েছে ( ভিপিএন এবং প্রক্সি কনফিগার করা হয়েছিল)।
আমি পরিবেশের পরিবর্তনশীল NO_PROXY পরীক্ষা করেছি

> echo %NO_PROXY%

এটি
এখন খালি মান সহ ফিরে এসেছে আমি লোকালহোস্ট এবং 127.0.0.1 এর সাথে NO_PROXY সেট করেছি

> set NO_PROXY=127.0.0.1,localhost  

আপনি যদি বিদ্যমান মানগুলিতে যুক্ত করতে চান তবে

> set NO_PROXY=%NO_PROXY%,127.0.0.1,localhost  

এর পরে, আমি চিড়িয়াখানার পুনরায় শুরু করেছি এবং কাফকা
একটি কবজির মতো কাজ করেছে worked

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.