stackabletech / stackabletech/kafka-operator

Allow configuration of listeners

Open
#141 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
28
Forks
8
Avg merge
2d 12h
Merged PRs (30d)
9

Description

We want listeners in Kafka to be fully configurable. They should not be automatically added as they are now.
We will follow the Strimzi model (documented here: https://strimzi.io/docs/operators/latest/overview.html#configuration-points-broker_str) with the following exceptions:

  • listener type: "route", "loadbalancer" and "ingress" types removed/not added.
  • authentication type: only "tls" is supported for now, if nothing is specified no authentication is enabled
  • we want to provide additional configuration within the authentication subsection when tls is chosen to specify the Secret where the necessary certificate chain (own cert + CA) and keys are stored (we want to be able to specify CA and certificate etc. in their own Secrets to be able to reuse the CA in other services easily)

I am unsure how well this fits into the product_config model - please talk to @maltesander before starting this task to fully flesh out the implementation details.

This ticket contains of at least two parts:

  • Come up with a proposed CRD structure and put it up for review
  • Implement everything APART from the TLS part, if someone choses "tls" it is fine to bail out/panic for now

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by discussing the product_config model and implementation details with @maltesander, then review the linked Strimzi broker listener configuration. Propose the CRD structure for review before implementing configurable listeners, excluding TLS support for now. Done means the proposal is reviewed and non-TLS listener configuration is implemented.

Written by the indexing model from the issue text.

Assessment

Tech stack
kafka, kubernetes, rust
Domain
distributed-systems, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.