Strimzi - 0.24.0 - KafkaConnect Cluster deployment on AWS EKS for AWS MSK with AWS IAM Role #5239
Replies: 3 comments 7 replies
-
If you could format the YAML examples and logs as code, it would be much more readable. I'm not sure what do you expect to achieve with the service account and with AWS IAM TBH. The way you seem to have it configured is that it should connect to the bootstrap servers on port 9098 (I assume the |
Beta Was this translation helpful? Give feedback.
-
@ashemachandan did u solve? |
Beta Was this translation helpful? Give feedback.
-
Not sure if the OP had solved his issue, but we ended up solved our same issue with podTemplate with something like this. template:
pod:
metadata:
annotations:
iam.amazonaws.com/role: <my-arn-aws-iam> |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
We have a use case to connect AWS MSK with MongoDB using KafkaConnect sink connector on AWS EKS (Strimzi Operator) with AWS IAM role authentication and we are using below environment with KafkaConnect deployment yaml declarative for Service Account creation to link with AWS IAM Role.
Environment (please complete the following information):
Strimzi version: 0.24.0
Installation method: YAML files
Infrastructure: Amazon EKS
Kubernetes versionInfo: 1.19
Platform versionInfo: eks.5
AWS MSK: Apache Kafka version 2.7.0
KafkaConnect.yaml
apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaConnect
metadata:
name: kafka-connect-cluster
annotations:
strimzi.io/use-connector-resources: "true"
spec:
image: 238514202959.dkr.ecr.eu-west-1.amazonaws.com/demo-python-microservice:strimzi-kafkaconnect-mongodb
version: 2.7.0
replicas: 1
bootstrapServers: b-2..kafka.eu-west-1.amazonaws.com:9098,b-3.b-2..kafka.eu-west-1.amazonaws.com:9098,b-1.b-2..kafka.eu-west-1.amazonaws.com:9098
template:
serviceAccount:
metadata:
labels:
name: kafka-connect-cluster
annotations:
eks.amazonaws.com/role-arn: "arn:aws:iam::XXXXXXXXXX:role/AWS-MSK-strimzi-kafka-connect"
config:
group.id: kafka-connect-cluster
offset.storage.topic: kafka-connect-cluster-offsets
config.storage.topic: kafka-connect-cluster-configs
status.storage.topic: kafka-connect-cluster-status
config.storage.replication.factor: 3
offset.storage.replication.factor: 3
status.storage.replication.factor: 3
After deployment, we found that ServiceAccount got created and KafkaConnect pods tried make initial connect with AWS MSK bootstrap on port 9098 but Pods are crashing due to readiness failure and cloud watch as well as pods logs captured the below
ServiceAccount-
Name: kafka-connect-cluster-connect
Namespace: kafka
Labels: app.kubernetes.io/instance=kafka-connect-cluster
app.kubernetes.io/managed-by=strimzi-cluster-operator
app.kubernetes.io/name=kafka-connect
app.kubernetes.io/part-of=strimzi-kafka-connect-cluster
name=kafka-connect-cluster
strimzi.io/cluster=kafka-connect-cluster
strimzi.io/kind=KafkaConnect
strimzi.io/name=kafka-connect-cluster-connect
Annotations: eks.amazonaws.com/role-arn: arn:aws:iam::XXXXXXX:role/AWS-MSK-strimzi-kafka-connect
Image pull secrets:
Mountable secrets: kafka-connect-cluster-connect-token-s999j
Tokens: kafka-connect-cluster-connect-token-s999j
Events:
Cloud Watch -
[SocketServer brokerId=3] Failed authentication with ip-10-254-192-74.eu-west-1.compute.internal/INTERNAL_IP (SSL handshake failed) (org.apache.kafka.common.network.Selector)
Pods Logs -
Warning Unhealthy 16m (x165 over 18h) kubelet Readiness probe failed: Get "http://10.254.192.74:8083/": dial tcp 10.254.192.74:8083: connect: connection refused
Since i couldn't able to make this SerivceAccount which has required AWS IAM roles for AWS MSK in KafkaConnect yaml to work with this bootstrap ports on 9098 so required more details or steps or configuration to make this working.
Beta Was this translation helpful? Give feedback.
All reactions