Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AWS MSK - Updates doesn't work with kafka-controller #2249

Open
kkopuru opened this issue Jan 23, 2025 · 5 comments
Open

AWS MSK - Updates doesn't work with kafka-controller #2249

kkopuru opened this issue Jan 23, 2025 · 5 comments
Assignees
Labels
kind/bug Categorizes issue or PR as related to a bug. needs-investigation Indicates an issue needs some investigation. service/kafka Indicates issues or PRs that are related to kafka-controller. target/q1-2025 Issues scheduled for Q1 in 2025

Comments

@kkopuru
Copy link

kkopuru commented Jan 23, 2025

Provisioning of AWS MSK using kafka-controller works fine but any updates to existing deployment doesn't work. Any updates like volume size, instance type etc are not getting rolled out.

Environment:

  • AWS EKS: 1.29
  • Kafka-controller: 1.0.1
@a-hilaly a-hilaly added kind/bug Categorizes issue or PR as related to a bug. service/kafka Indicates issues or PRs that are related to kafka-controller. needs-investigation Indicates an issue needs some investigation. labels Jan 23, 2025
@a-hilaly
Copy link
Member

a-hilaly commented Feb 4, 2025

Indeed looks like there is a missing logic for volume size/instance type updates in https://github.com/aws-controllers-k8s/kafka-controller/blob/main/pkg/resource/cluster/hooks.go#L114-L155

@a-hilaly
Copy link
Member

a-hilaly commented Feb 4, 2025

cc @michaelhtm @rushmash91

@eqe-aws eqe-aws added the target/q1-2025 Issues scheduled for Q1 in 2025 label Feb 10, 2025
@rushmash91 rushmash91 self-assigned this Feb 15, 2025
@michaelhtm michaelhtm self-assigned this Feb 24, 2025
@michaelhtm
Copy link
Member

Hey @kkopuru
Can you provide sample manifests that you're using? I can try replicating on my end

@kkopuru
Copy link
Author

kkopuru commented Mar 3, 2025

Hi @michaelhtm
Here is the manifest file

apiVersion: kafka.services.k8s.aws/v1alpha1
kind: Cluster
metadata:
  name: pd1-tst-msk
  namespace: tst
spec:
  brokerNodeGroupInfo:
    brokerAZDistribution: DEFAULT
    clientSubnets:
    - subnet-xxxx
    - subnet-xxxx
    - subnet-xxxx
    instanceType: kafka.m7g.large
    securityGroups:
    - sg-xxxx
    storageInfo:
      ebsStorageInfo:
        volumeSize: 20
  clientAuthentication:
    sasl:
      scram:
        enabled: false
  configurationInfo:
    arn: arn:aws:kafka:us-west-2:xxxx:configuration/pd1-tst-msk-conf/xxxxx
    revision: 1
  encryptionInfo:
    encryptionInTransit:
      clientBroker: PLAINTEXT
      inCluster: false
  enhancedMonitoring: DEFAULT
  kafkaVersion: 3.6.0
  name: pd1-tst-msk
  numberOfBrokerNodes: 3
  openMonitoring:
    prometheus:
      jmxExporter:
        enabledInBroker: true
      nodeExporter:
        enabledInBroker: true
  tags:
    ClusterType: integration
    Environment: Non Prod

ack-prow bot pushed a commit to aws-controllers-k8s/kafka-controller that referenced this issue Mar 5, 2025

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
)

Issue [#2249](aws-controllers-k8s/community#2249)

Description of changes:
Also added reconcile before deletion attempt if cluster is 
not active. Before, if we tried deleting a cluster that was 
not active, the controller would set it to terminal, and does 
not reconcile.

Another change being added is a field in the Cluster status
called ClusterVersion. This field is returned by the sdkFind 
operation, and is crutial to make updates to VolumeSize,
InstanceType, and BrokerCount.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
@michaelhtm
Copy link
Member

Hi @kkopuru, is this issue resolved for you?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug. needs-investigation Indicates an issue needs some investigation. service/kafka Indicates issues or PRs that are related to kafka-controller. target/q1-2025 Issues scheduled for Q1 in 2025
Projects
None yet
Development

No branches or pull requests

5 participants