[9.5](backport #51772) filebeat kafka input: add group_instance_id for static group membership#51885
Conversation
…ip (#51772) * filebeat kafka input: add group_instance_id for static group membership The Kafka input now has a `group_instance_id` option wiring it to Consumer.Group.InstanceId (KIP-345): a member that rejoins within `session_timeout` keeps its partitions instead of rebalancing. Static membership needs Kafka `version` >= 2.3.0, so the input fails fast with a clear error when it is set on the default 2.1.0. Unset by default; existing configs are unaffected. Assisted-By: Claude Code (cherry picked from commit 6811ebc)
🤖 GitHub commentsJust comment with:
|
|
Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane) |
🔍 Preview links for changed docs |
✅ Elastic Docs Style Checker (Vale)No issues found on modified lines! The Vale linter checks documentation changes against the Elastic Docs style guide. To use Vale locally or report issues, refer to Elastic style guide for Vale. |
TL;DRThe only failed job is Remediation
Investigation detailsRoot CauseThe failure is isolated to the UDP OTel end-to-end integration test, not the changed Kafka code. The job artifact list contains Evidence
VerificationThe affected Kafka configuration tests pass locally: Follow-upIf the retry reproduces the failure, use the test artifact output to determine whether the UDP listener, OTel receiver, Elasticsearch document ingestion, or fixed-port setup is responsible before changing code. What is this? | From workflow: PR Buildkite Detective Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not. |
|
/test |
Proposed commit message
Checklist
./changelog/fragmentsusing the changelog tool.Disruptive User Impact
None by default — the option is opt-in and unset out of the box; existing
configurations are unchanged. When enabled, operators should be aware:
versionmust be >= 2.3.0; otherwise the input fails fast with a clearerror.
group_idmust use a uniquegroup_instance_id.reassigned until
session_timeoutexpires — that is the intended trade-off;tune
session_timeoutaccordingly.How to test this PR locally
Unit tests:
Friendly version gate (no broker needed) — configure the input with
group_instance_idset butversionleft at the default and confirm startupfails with
group_instance_id requires 'version' >= 2.3.0 ....End-to-end (optional, needs a broker >= 2.3.0): run two Filebeat instances that
share a
group_id, each with a distinctgroup_instance_idandversion: "2.3.0";restart one instance and confirm the group does not rebalance within
session_timeout(no partition reassignment in the broker logs).Related issues
group_instance_id, KIP-345) #51768Use cases
Multi-replica, containerized Filebeat consuming a high-throughput Kafka topic.
Setting a stable per-instance
group_instance_idlets rolling restarts completewithout cascading rebalances, keeping consumption steady.
This is an automatic backport of pull request #51772 done by Mergify.