Closed BFrancisA closed 4 years ago
Using KafkaChannel 0.10.3 Create a new broker with a KafkaChannel. The Kafka topic is created. kubectl get brokers shows READY = true.
kubectl get brokers
$ kubectl get brokers -n events-kafka-1 NAME READY REASON URL AGE default True http://default-broker.events-kafka-1.svc.cluster.local 18h kafka-20 False NoAddress http://kafka-20-broker.events-kafka-1.svc.cluster.local 101m
kubectl create namespace events-kafka-1 kubectl label namespace events-kafka-1 knative-eventing-injection=enabled kubectl get brokers -n events-kafka-1
No errors with this:
$ kubectl get brokers -n events-kafka-1 NAME READY REASON URL AGE default True http://default-broker.events-kafka-1.svc.cluster.local 18h
Next create another broker called kafka-20 using:
cat << EOF | kubectl apply -f - apiVersion: eventing.knative.dev/v1alpha1 kind: Broker metadata: name: kafka-20 namespace: events-kafka-1 spec: channelTemplateSpec: apiVersion: messaging.knative.dev/v1alpha1 kind: KafkaChannel spec: numPartitions: 20 replicationFactor: 1 EOF
This completes. Check the brokers again:
Logs for controller kafka-ch-controller-88d7b9c76-zz2lk show:
{"level":"info","ts":"2019-12-12T19:41:32.828Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:406","msg":"Creating topic on Kafka cluster","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.003Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:416","msg":"Successfully created topic","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.013Z","logger":"controller.kafka-ch-controller.event-broadcaster","caller":"record/event.go:258","msg":"Event(v1.ObjectReference{Kind:\"KafkaChannel\", Namespace:\"events-kafka-1\", Name:\"kafka-20-kne-trigger\", UID:\"b85f8091-fe1f-4190-845d-6930be325392\", APIVersion:\"messaging.knative.dev/v1alpha1\", ResourceVersion:\"141824\", FieldPath:\"\"}): type: 'Normal' reason: 'ChannelReconciled' KafkaChannel reconciled","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller"} {"level":"info","ts":"2019-12-12T19:41:33.017Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:378","msg":"KafkaChannel \"kafka-20-kne-trigger\" became ready after 1.017566918s","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller"} {"level":"info","ts":"2019-12-12T19:41:33.018Z","logger":"controller.kafka-ch-controller","caller":"controller/controller.go:351","msg":"Reconcile succeeded. Time taken: 224.966865ms.","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.025Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:406","msg":"Creating topic on Kafka cluster","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"96359022-e20b-4bf3-931b-dce4ba07464c","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"error","ts":"2019-12-12T19:41:33.043Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:414","msg":"Error creating topic","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"96359022-e20b-4bf3-931b-dce4ba07464c","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger","error":"kafka server: Topic with this name already exists. - Topic 'knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger' already exists.","stacktrace":"knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(*Reconciler).createTopic\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:414\nknative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(*Reconciler).reconcile\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:250\nknative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(*Reconciler).Reconcile\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:192\nknative.dev/eventing-contrib/vendor/knative.dev/pkg/controller.(*Impl).processNextWorkItem\n\t/home/prow/go/src/knative.dev/eventing-contrib/vendor/knative.dev/pkg/controller/controller.go:342\nknative.dev/eventing-contrib/vendor/knative.dev/pkg/controller.(*Impl).Run.func2\n\t/home/prow/go/src/knative.dev/eventing-contrib/vendor/knative.dev/pkg/controller/controller.go:291"}
The error repeats... {"level":"info","ts":"2019-12-12T19:41:32.828Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:406","msg":"Creating topic on Kafka cluster","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.003Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:416","msg":"Successfully created topic","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.013Z","logger":"controller.kafka-ch-controller.event-broadcaster","caller":"record/event.go:258","msg":"Event(v1.ObjectReference{Kind:\"KafkaChannel\", Namespace:\"events-kafka-1\", Name:\"kafka-20-kne-trigger\", UID:\"b85f8091-fe1f-4190-845d-6930be325392\", APIVersion:\"messaging.knative.dev/v1alpha1\", ResourceVersion:\"141824\", FieldPath:\"\"}): type: 'Normal' reason: 'ChannelReconciled' KafkaChannel reconciled","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller"} {"level":"info","ts":"2019-12-12T19:41:33.017Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:378","msg":"KafkaChannel \"kafka-20-kne-trigger\" became ready after 1.017566918s","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller"} {"level":"info","ts":"2019-12-12T19:41:33.018Z","logger":"controller.kafka-ch-controller","caller":"controller/controller.go:351","msg":"Reconcile succeeded. Time taken: 224.966865ms.","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.025Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:406","msg":"Creating topic on Kafka cluster","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"96359022-e20b-4bf3-931b-dce4ba07464c","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"error","ts":"2019-12-12T19:41:33.043Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:414","msg":"Error creating topic","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"96359022-e20b-4bf3-931b-dce4ba07464c","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger","error":"kafka server: Topic with this name already exists. - Topic 'knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger' already exists.","stacktrace":"knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(Reconciler).createTopic\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:414\nknative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(Reconciler).reconcile\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:250\nknative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(Reconciler).Reconcile\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:192\nknative.dev/eventing-contrib/vendor/knative.dev/pkg/controller.(Impl).processNextWorkItem\n\t/home/prow/go/src/knative.dev/eventing-contrib/vendor/knative.dev/pkg/controller/controller.go:342\nknative.dev/eventing-contrib/vendor/knative.dev/pkg/controller.(*Impl).Run.func2\n\t/home/prow/go/src/knative.dev/eventing-contrib/vendor/knative.dev/pkg/controller/controller.go:291"}
KafkaChannels are of course not ready.
$ kubectl get KafkaChannels -n events-kafka-1 NAME READY REASON URL AGE kafka-20-kne-ingress False TopicCreateFailed http://kafka-20-kne-ingress-kn-channel.events-kafka-1.svc.cluster.local 131m kafka-20-kne-trigger False TopicCreateFailed 131m
The Kafka topics are being created:
root@kafka-a-0:/var/opt/kafka/bin# ./kafka-topics.sh --bootstrap-server localhost:9092 --list __consumer_offsets knative-messaging-kafka.events-kafka-1.kafka-20-kne-ingress knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger
## Additional Info This was working ok with KafkaChannel 0.9.0.
Retested this example with Knative Eventing 0.11.0 and KafkaChannel 0.11.2. It worked correctly without any errors. Since the error has disappeared in the new version, I am closing this issue.
Expected Behavior
Using KafkaChannel 0.10.3
Create a new broker with a KafkaChannel. The Kafka topic is created.
kubectl get brokers
shows READY = true.Actual Behavior
Steps to Reproduce the Problem
No errors with this:
Next create another broker called kafka-20 using:
This completes. Check the brokers again:
Logs for controller kafka-ch-controller-88d7b9c76-zz2lk show:
The error repeats... {"level":"info","ts":"2019-12-12T19:41:32.828Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:406","msg":"Creating topic on Kafka cluster","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.003Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:416","msg":"Successfully created topic","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.013Z","logger":"controller.kafka-ch-controller.event-broadcaster","caller":"record/event.go:258","msg":"Event(v1.ObjectReference{Kind:\"KafkaChannel\", Namespace:\"events-kafka-1\", Name:\"kafka-20-kne-trigger\", UID:\"b85f8091-fe1f-4190-845d-6930be325392\", APIVersion:\"messaging.knative.dev/v1alpha1\", ResourceVersion:\"141824\", FieldPath:\"\"}): type: 'Normal' reason: 'ChannelReconciled' KafkaChannel reconciled","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller"} {"level":"info","ts":"2019-12-12T19:41:33.017Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:378","msg":"KafkaChannel \"kafka-20-kne-trigger\" became ready after 1.017566918s","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller"} {"level":"info","ts":"2019-12-12T19:41:33.018Z","logger":"controller.kafka-ch-controller","caller":"controller/controller.go:351","msg":"Reconcile succeeded. Time taken: 224.966865ms.","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"792cfc5c-3689-426c-8ea1-8e70bc5f6fc0","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger"} {"level":"info","ts":"2019-12-12T19:41:33.025Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:406","msg":"Creating topic on Kafka cluster","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"96359022-e20b-4bf3-931b-dce4ba07464c","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger"} {"level":"error","ts":"2019-12-12T19:41:33.043Z","logger":"controller.kafka-ch-controller","caller":"controller/kafkachannel.go:414","msg":"Error creating topic","controller/impl":"pkg","knative.dev/controller":"kafka-ch-controller","knative.dev/traceid":"96359022-e20b-4bf3-931b-dce4ba07464c","knative.dev/key":"events-kafka-1/kafka-20-kne-trigger","topic":"knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger","error":"kafka server: Topic with this name already exists. - Topic 'knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger' already exists.","stacktrace":"knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(Reconciler).createTopic\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:414\nknative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(Reconciler).reconcile\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:250\nknative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller.(Reconciler).Reconcile\n\t/home/prow/go/src/knative.dev/eventing-contrib/kafka/channel/pkg/reconciler/controller/kafkachannel.go:192\nknative.dev/eventing-contrib/vendor/knative.dev/pkg/controller.(Impl).processNextWorkItem\n\t/home/prow/go/src/knative.dev/eventing-contrib/vendor/knative.dev/pkg/controller/controller.go:342\nknative.dev/eventing-contrib/vendor/knative.dev/pkg/controller.(*Impl).Run.func2\n\t/home/prow/go/src/knative.dev/eventing-contrib/vendor/knative.dev/pkg/controller/controller.go:291"}
$ kubectl get KafkaChannels -n events-kafka-1 NAME READY REASON URL AGE kafka-20-kne-ingress False TopicCreateFailed http://kafka-20-kne-ingress-kn-channel.events-kafka-1.svc.cluster.local 131m kafka-20-kne-trigger False TopicCreateFailed 131m
root@kafka-a-0:/var/opt/kafka/bin# ./kafka-topics.sh --bootstrap-server localhost:9092 --list __consumer_offsets knative-messaging-kafka.events-kafka-1.kafka-20-kne-ingress knative-messaging-kafka.events-kafka-1.kafka-20-kne-trigger