Commit Graph

228 Commits

Author SHA1 Message Date
Mickael Maison f4ce123505 MINOR: Cleanups in ops docs (#20532)
CI / build (push) Has been cancelled Details
- Fix typo in `process.role`
- Fix formatting of quorum description commands

Reviewers: Lan Ding <isDing_L@163.com>, Ken Huang <s7133700@gmail.com>,
TengYao Chi <frankvicky@apache.org>
2025-09-28 19:14:02 +08:00
Kuan-Po Tseng 9575cbbc80 MINOR: update kraft dynamic voter set doc (#20401)
Update the KRaft dynamic voter set documentation. In Kafka 4.1, we
introduced a powerful new feature that enables seamless migration from a
static voter set to a dynamic voter set.

Reviewers: Ken Huang <s7133700@gmail.com>, TengYao Chi
<kitingiao@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2025-09-28 19:13:00 +08:00
Luke Chen cdc7a4e2b7 MINOR: improve the min.insync.replicas doc (#20237)
Along with the change: https://github.com/apache/kafka/pull/17952

([KIP-966](https://cwiki.apache.org/confluence/display/KAFKA/KIP-966%3A+Eligible+Leader+Replicas)),
the semantics of `min.insync.replicas` config has small change, and add
some constraints. We should document them clearly.

Reviewers: Jun Rao <junrao@gmail.com>, Calvin Liu <caliu@confluent.io>,
 Mickael Maison <mickael.maison@gmail.com>, Paolo Patierno
 <ppatierno@live.com>, Federico Valeri <fedevaleri@gmail.com>, Chia-Ping
 Tsai <chia7712@gmail.com>
2025-08-05 00:27:04 +08:00
José Armando García Sancio b0ff9ba161 KAFKA-19184: Add documentation for upgrading the kraft version (#20071)
CI / build (push) Waiting to run Details
Update the documentation to describe how to upgrade the kraft feature
version from 0 to 1.

Reviewers: Mickael Maison <mickael.maison@gmail.com>, Alyssa Huang
<ahuang@confluent.io>
2025-07-09 11:21:36 +02:00
Calvin Liu b420e4092e
MINOR: ELR release note for 4.1 (#19909)
CI / build (push) Waiting to run Details
Mention that ELR will be enabled by default on new clusters in 4.1

Reviewers: Justine Olshan <jolshan@confluent.io>
2025-06-09 17:05:20 -07:00
Andrew Schofield 016a4a6c4c
KAFKA-19353: Upgrade note and initial docs for KIP-932 (#19863)
CI / build (push) Waiting to run Details
This is the initial documentation for KIP-932 preview in AK 4.1. The aim
is to get very minimal docs in before the cutoff. Longer term, more
comprehensive documentation will be provided for AK 4.2.

The PR includes:
* Generation of group-level configuration documentation
* Add link to KafkaShareConsumer to API docs
* Add a summary of share group rational to design docs
* Add basic operations information for share groups to ops docs
* Add upgrade note describing arrival of KIP-932 preview in 4.1

Reviewers: Apoorv Mittal <apoorvmittal10@gmail.com>

---------

Co-authored-by: Apoorv Mittal <apoorvmittal10@gmail.com>
2025-06-03 13:23:11 +01:00
Bolin Lin 388db49191
KAFKA-19287 document all group coordinator metrics (#19749)
add following metrics

1.
kafka.server:type=group-coordinator-metrics,name=event-queue-time-ms-p95
2.

kafka.server:type=group-coordinator-metrics,name=num-partitions,state=[loading|active|failed]
3.

kafka.server:type=group-coordinator-metrics,name=event-processing-time-ms-p95
4.

kafka.server:type=group-coordinator-metrics,name=event-purgatory-time-ms-p95
5.
kafka.server:type=group-coordinator-metrics,name=batch-flush-time-ms-p95

Reviewers: David Jacot <djacot@confluent.io>, Chia-Ping Tsai
 <chia7712@gmail.com>
2025-05-21 19:15:07 +08:00
Stanislav Kozlovski 0bc8d0c962
MINOR: Add documentation about KIP-405 remote reads serving just one partition per FetchRequest (#19336)
[As discussed in the mailing
list](https://lists.apache.org/thread/m03mpkm93737kk6d1nd6fbv9wdgsrhv9),
the broker only fetches remote data for ONE partition in a given
FetchRequest. In other words, if a consumer sends a FetchRequest
requesting 50 topic-partitions, and each partition's requested offset is
not stored locally - the broker will fetch and respond with just one
partition's worth of data from the remote store, and the rest will be
empty.

Given our defaults for total fetch response is 50 MiB and per partition
is 1 MiB, this can limit throughput. This patch documents the behavior
in 3 configs - `fetch.max.bytes`, `max.partition.fetch.bytes` and
`remote.fetch.max.wait.ms`

Reviewers: Luke Chen <showuon@gmail.com>, Kamal Chandraprakash
 <kamal.chandraprakash@gmail.com>, Satish Duggana <satishd@apache.org>
2025-05-10 16:48:55 +05:30
grace 5af3547c6e
KAFKA-18572: Update Kafka Streams metric documenation (#18673)
Updated the Kafka Streams documentation to include metrics for tasks,
process nodes, and threads that were missing. I was unable to find
metrics such as stream-state-metrics, client-metrics,
state-store-metrics, and record-cache-metrics in the codebase, so they
are not included in this update.

Reviewers: Bill Bejeck <bbejeck@apache.org>
2025-04-22 16:32:23 -04:00
Calvin Liu 1c582a4a35
KAFKA-18954: Add ELR election rate metric (#19180)
Add a metric to track the number of election is done using ELR.
https://issues.apache.org/jira/browse/KAFKA-18954

Reviewers: Colin P. McCabe <cmccabe@apache.org>, Justine Olshan
<jolshan@confluent.io>
2025-03-20 15:37:49 -07:00
Nick Guo 52061bf4aa
MINOR: Add documentation to describe default quotas for user and client-id (#19184)
Add documentation to describe default quotas for user and client-id, which were previously missing.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2025-03-11 23:51:33 +08:00
Nick Guo 3ebe21c8f1
MINOR: correct user reference in quota configuration from 'userA' to 'user1' (#19140)
Reviewers: TengYao Chi <kitingiao@gmail.com>, Ken Huang <s7133700@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2025-03-09 23:44:56 +08:00
Ken Huang b129ed4566
MINOR: Use immutable KIP link (#19153)
Reviewers: TengYao Chi <kitingiao@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2025-03-09 23:42:33 +08:00
mingdaoy 21358342f4
MINOR: Improve the example of kafka-metadata-shell.sh (#19107)
Reviewers: Jhen-Yung Hsu <jhenyunghsu@gmail.com>, TengYao Chi <kitingiao@gmail.com>, Ken Huang <s7133700@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2025-03-06 17:32:07 +08:00
mingdaoy 0b6a42d437
KAFKA-18876: 4.0 docs follow-up (#19103)
https://github.com/apache/kafka/pull/19065#issuecomment-2698614575

Fixed:

![image](https://github.com/user-attachments/assets/2995f962-298f-4a4c-8f52-0b0459fd3b00)

Reviewers: Ken Huang <s7133700@gmail.com>, TengYao Chi <kitingiao@gmail.com>, David Jacot <djacot@confluent.io>
2025-03-05 01:06:26 -08:00
mingdaoy 8533c43c9d
KAFKA-18876 4.0 documentation improvement (#19065)
1. add prefix "config" to the commands' properties
2. add missed sections (6.11 and 6.12)
3. fix some incorrect commands

Reviewers: David Jacot <djacot@confluent.io>, Ken Huang <s7133700@gmail.com>, TengYao Chi <kitingiao@gmail.com>, Jun Rao <junrao@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2025-03-05 00:22:07 +08:00
TengYao Chi e2d9ced098
KAFKA-18860 Remove Missing Features section (#19048)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2025-02-28 06:38:56 +08:00
Dongnuo Lyu 36f19057e1
KAFKA-18813: ConsumerGroupHeartbeat API and ConsumerGroupDescribe API must check topic describe (#18989)
This patch filters out the topic describe unauthorized topics from the
ConsumerGroupHeartbeat and ConsumerGroupDescribe response.

In ConsumerGroupHeartbeat, 
- if the request has `subscribedTopicNames` set, we directly check the
authz in `KafkaApis` and return a topic auth failure in the response if
any of the topics is denied.
- Otherwise, we check the authz only if a regex refresh is triggered and
we do it based on the acl of the consumer that triggered the refresh. If
any of the topic is denied, we filter it out from the resolved
subscription.

In ConsumerGroupDescribe, we check the authz of the coordinator
response. If any of the topic in the group is denied, we remove the
described info and add a topic auth failure to the described group.
(similar to the group auth failure)

Reviewers: David Jacot <djacot@confluent.io>, Lianet Magrans
<lmagrans@confluent.io>, Rajini Sivaram <rajinisivaram@googlemail.com>,
Chia-Ping Tsai <chia7712@gmail.com>, TaiJuWu <tjwu1217@gmail.com>,
TengYao Chi <kitingiao@gmail.com>
2025-02-26 13:05:36 -05:00
Calvin Liu 009bee75ab
KIP-966 part 1 release doc (#18898)
Add notes to explain how ELR and how to manage ELR.

Reviewers: Colin P. McCabe <cmccabe@apache.org>
2025-02-24 15:19:18 -08:00
Ismael Juma 3dba3125e9
KAFKA-18601: Assume a baseline of 3.3 for server protocol versions (#18845)
3.3.0 was the first KRaft release that was deemed production-ready and also
when KIP-778 (KRaft to KRaft upgrades) landed. Given that, it's reasonable
for 4.x to only support upgrades from 3.3.0 or newer (the metadata version also
needs to be set to "3.3" or newer before upgrading).

Noteworthy changes:
1. `AlterPartition` no longer includes topic names, which makes it possible to
simplify `AlterParitionManager` logic.
2. Metadata versions older than `IBP_3_3_IV3` have been removed and
`IBP_3_3_IV3` is now the minimum version.
3. `MINIMUM_BOOTSTRAP_VERSION` has been removed.
4. Removed `isLeaderRecoverySupported`, `isNoOpsRecordSupported`,
`isKRaftSupported`, `isBrokerRegistrationChangeRecordSupported` and
`isInControlledShutdownStateSupported` - these are always `true` now.
Also removed related conditional code.
5. Removed default metadata version or metadata version fallbacks in
multiple places - we now fail-fast instead of potentially using an incorrect
metadata version.
6. Update `MetadataBatchLoader.resetToImage` to set `hasSeenRecord`
based on whether image is empty - this was a previously existing issue that
became more apparent after the changes in this PR.
7. Remove `ibp` parameter from `BootstrapDirectory`
8. A number of tests were not useful anymore and have been removed.

I will update the upgrade notes via a separate PR as there are a few things that
need changing and it would be easier to do so that way.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, Jun Rao <junrao@gmail.com>, David Arthur <mumrah@gmail.com>, Colin P. McCabe <cmccabe@apache.org>, Justine Olshan <jolshan@confluen.io>, Ken Huang <s7133700@gmail.com>
2025-02-19 05:35:42 -08:00
Justine Olshan 48283ad2e5
MINOR: Add release notes for Transactions Server Side Defense (KIP-890) (#18896)
Add some notes about upgrading and performance

Reviewers: David Jacot <djacot@confluent.io>
2025-02-14 08:41:08 -08:00
David Jacot 1cbd0a2bd7
MINOR: Add KIP-848's metric to the doc (#18890)
This patch update the documentation to include all the new metrics introduced by KIP-848.

Reviewers: Jeff Kim <jeff.kim@confluent.io>
2025-02-14 07:36:36 -08:00
Lianet Magrans c465cf6b4b
KAFKA-17298: Update upgrade notes for 4.0 KIP-848 (#18756)
Reviewers: David Jacot <djacot@confluent.io>
2025-02-13 11:51:56 -05:00
Ismael Juma da21b536c4
MINOR: Java version and TLS documentation improvements (#18822)
Most of the changes are obvious clean-ups/fixes. A couple of noteworthy items:

1. Support for non LTS versions is clarified (we were incorrectly stating full support
for Java 23).
2. TLS version negotiation details are clarified.

Reviewers: Matthias J. Sax <matthias@confluent.io>, Chia-Ping Tsai <chia7712@gmail.com>
2025-02-10 12:24:28 -08:00
Albert f6d9ce2bcd
MINOR: Add missing MirrorMaker2 metrics to docs (#18691)
Reviewers: Mickael Maison <mickael.maison@gmail.com>
Co-authored-by: u0184996 <alozano@caixabanktech.com>
2025-02-04 14:22:54 +01:00
Mehari Beyene cc259d76e9
KAFKA-18570: Update documentation to add remainingLogsToRecover, remainingSegmentsToRecover and LogDirectoryOffline metrics (#18731)
Reviewers: Divij Vaidya <diviv@amazon.com>
2025-01-30 11:52:35 +01:00
Matthias J. Sax faff2de6a5
KAFKA-17561: add processId tag to thread-state metric (#18581)
Part of KIP-1091.

Reviewers: Bill Bejeck <bill@confluent.io>
2025-01-21 08:09:43 -08:00
TengYao Chi c0b3e12dcf
KAFKA-18330: Update documentation to remove controller deployment limitations (#18281)
Reviewers: José Armando García Sancio <jsancio@apache.org>
2025-01-14 16:31:16 -05:00
Kirk True 403fe71c5f
KAFKA-18400: Don't use YYYY when formatting/parsing dates in Java client (#18404)
Reviewers: Andrew Schofield <aschofield@confluent.io>
2025-01-11 18:29:01 +00:00
Swikar Patel 8b72204bfd
KAFKA-15443: Upgrade RocksDB to 9.7.3 (#18275)
This PR upgrades RocksDB from 7.9.2 to 9.7.3 and addresses the following compatibility issues introduced by the RocksDB upgrade:

- Removal of AccessHint: The AccessHint class was completely removed in RocksDB 9.7.3. This required removing all import statements, variable declarations, method parameters, method return types, and static method calls related to AccessHint in RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter.java RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapterTest.java Unused methods are removed in RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter.java
- Removal of NO_FILE_CLOSES: The NO_FILE_CLOSES metric was also removed in RocksDB 9.7.3. The calculation for numberOfOpenFiles in RocksDBMetricsRecorder.java has been adjusted to now track the total number of file opens since the last reset. The previous calculation, which subtracted NO_FILE_CLOSES from NO_FILE_OPENS, is no longer possible. The reason RocksDB removed NO_FILE_CLOSES seems to be that it did not properly work: https://github.com/search?q=repo%3Afacebook%2Frocksdb+NO_FILE_CLOSES&type=issues
- Removal of methods related to compressed block cache configuration in BlockBasedTableConfig
- Change of the signature of org.rocksdb.Options.setLogger()

Reviewers: Anna Sophie Blee-Goldman <ableegoldman@apache.org>, Matthias J. Sax <matthias@confluent.io>, Bruno Cadonna <cadonna@apache.org>
2025-01-09 11:55:56 +01:00
Matthias J. Sax ca511cd1cf
MINOR: update Kafka Streams docs for 4.0 KIP changes (#18307)
Reviewers: Lucas Brutschy <lbrutschy@confluent.io>
2025-01-03 12:47:15 -08:00
Ken Huang 4896d02ca7
MINOR: fix sh command and properties file (#18369)
In document the shell command base dir is in Kafka, so we should make all command is bin/<tools>.sh
In kafka repo doesn't have controller_static.properties this file, this would misunderstanding user, I change to use controller.properties

Reviewers: Luke Chen <showuon@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2025-01-02 09:35:58 +08:00
Matthias J. Sax a0a501952b
MINOR: improve Kafka Streams metrics documentation (#17900)
Reviewers: Bruno Cadonna <bruno@confluent.io>, Guozhang Wang <guozhang.wang.us@gmail.com>
2024-12-11 18:34:43 -08:00
Kuan-Po Tseng b4258a0cb9
KAFKA-18070: Update kafka-metadata-quorum.sh output in docs to match KIP-853 (#17921)
Reviewers: Ziming Deng <dengziming1993@gmail.com>.
2024-12-02 19:58:00 +08:00
Mickael Maison 13d9a199f2
KAFKA-18011 Remove ZooKeeper sections from the docs (#17813)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-11-26 01:58:48 +08:00
Bill Bejeck f5781d59dd
Update streams docs with alive stream threads (#17868)
Add alive-stream-threads to Kafka Streams client metrics table
Reviewers: Matthias Sax <mjsax@apache.org>
2024-11-21 11:15:14 -05:00
Joao Pedro Fonseca Dantas 6c59e657c0
KAFKA-17640 Document Java 23 support and include release note (#17403)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-11-21 22:29:10 +08:00
xijiu 7413a5a9e4
KAFKA-17913 Fix KRaft controller count recommendations (#17657)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-11-08 04:18:30 +08:00
Yung b7e69ebf5c
KAFKA-17924: Remove `bufferpool-wait-time-total`, `io-waittime-total`, and `iotime-total` (#17697)
These metrics were deprecated in KIP-773 and are being removed in Kafka 4.0.

Reviewers:  Chia-Ping Tsai <chia7712@gmail.com>, Divij Vaidya <diviv@amazon.com>
2024-11-06 08:46:28 +01:00
Luke Chen 67e2a0ae6f
MINOR: Improve the KIP-853 documentation (#17598)
In docs/ops.html, add a section discussion the difference between static and dynamic quorums. This section also discusses how to find out which quorum type you have. Also discuss the current limitations, such as the inability to transition from static quorums to dynamic.

Add a brief section to docs/upgrade.html discussing controller membership change.

Co-authored-by: Federico Valeri <fedevaleri@gmail.com>, Colin P. McCabe <cmccabe@apache.org>
Reviewers: Justine Olshan <jolshan@confluent.io>
2024-10-30 09:41:19 -07:00
Yung 984777f0b9
KAFKA-17875: Align KRaft controller count recommendations (#17600)
Reviewers: Mickael Maison <mickael.maison@gmail.com>
Co-authored-by: yungh <yungh@nvidia.com>
2024-10-29 11:37:49 +01:00
xijiu 71f4001a21
KAFKA-17874: Fix the KRaft metric names in the documentation (#17599)
Reviewers: Mickael Maison <mickael.maison@gmail.com>
2024-10-28 11:12:18 +01:00
Federico Valeri d705be05d9
MINOR: Fix other tools' formatting in documentation (#17572)
Reviewers: Luke Chen <showuon@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2024-10-23 02:24:55 +08:00
Colin Patrick McCabe e3751a838c
KAFKA-17794: Add some formatting safeguards for KIP-853 (#17504)
KIP-853 adds support for dynamic KRaft quorums. This means that the quorum topology is
no longer statically determined by the controller.quorum.voters configuration. Instead, it
is contained in the storage directories of each controller and broker.

Users of dynamic quorums must format at least one controller storage directory with either
the --initial-controllers or --standalone flags.  If they fail to do this, no quorum can be
established. This PR changes the storage tool to warn about the case where a KIP-853 flag has
not been supplied to format a KIP-853 controller. (Note that broker storage directories
can continue to be formatted without a KIP-853 flag.)

There are cases where we don't want to specify initial voters when formatting a controller. One
example is where we format a single controller with --standalone, and then dynamically add 4
more controllers with no initial topology. In this case, we want the 4 later controllers to grab
the quorum topology from the initial one. To support this case, this PR adds the
--no-initial-controllers flag.

Reviewers: José Armando García Sancio <jsancio@apache.org>, Federico Valeri <fvaleri@redhat.com>
2024-10-21 10:06:41 -07:00
Federico Valeri 7aaffed372
MINOR: Add missing extention to tools commands (#17548)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-10-19 22:01:36 +08:00
Ken Huang e01f6a5c1e
KAFKA-17740 Update Readme and documentation (#17435)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-10-18 10:54:02 +08:00
José Armando García Sancio 34c158f67f
MINOR: Replace gt and lt char with html encoding (#17235)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-09-24 19:29:11 +08:00
José Armando García Sancio aee44efd40
KAFKA-17048; Update docs for KIP-853 (#17076)
Change the configurations under config/kraft to use controller.quorum.bootstrap.servers instead of controller.quorum.voters. Add comments explaining how to use the older static quorum configuration where appropriate.

In docs/ops.html, remove the reference to "tentative timelines for ZooKeeper removal" and "Tiered storage is considered as an early access feature" since they are no longer up-to-date. Add KIP-853 information.

In docs/quickstart.html, move the ZK instructions to be after the KRaft instructions. Update the KRaft instructions to use KIP-853.

In docs/security.html, add an explanation of --bootstrap-controller and document controller.quorum.bootstrap.servers instead of controller.quorum.voters.

Reviewers: Mickael Maison <mickael.maison@gmail.com>, Alyssa Huang <ahuang@confluent.io>, Colin P. McCabe <cmccabe@apache.org>
2024-09-18 11:23:58 -07:00
Luke Chen 887b947d8a
MINOR: Update doc for tiered storage GA (#17088)
Reviewers: Satish Duggana <satishd@apache.org>
2024-09-05 15:56:23 +05:30
Eric Chang 4b41071165
KAFKA-17086 add missing Java 21 to ops.html (#16911)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-08-19 00:51:27 +08:00