Repository navigation
ntk v1.0.0
The first stable release of ntk, a CLI and terminal UI for Apache Kafka. It covers the day-to-day work of inspecting clusters, moving messages, watching lag and fixing things, in a single binary.
Highlights
- Profiles for every cluster: keep connection details for all your clusters in one file and switch with
-p. Supports plaintext, TLS, mTLS (including encrypted keys) and SASL PLAIN or SCRAM.ntk profile createwalks you through it, can import a Javaclient.properties, andntk profile testchecks DNS, TCP, TLS, SASL and metadata one step at a time. - Topics: list, describe, create with presets, change configs with human units like
7dor4MiB, add partitions, truncate, reassign replicas and run leader elections. - Consume and produce as raw bytes: no decoding, no surprises. Read from any position (
--from -1h,-10,@offset), pipe values to other tools, export to lossless JSON Lines and replay them withproduce --in jsonl. - A command per message:
consume -o exec:<command>runs a command for each message with the bytes on stdin and the key, partition and offset inNTK_*variables. - Mirroring: copy a topic between clusters with
produce --from-topic --from-profile, through a pipe with-m, or over a Unix socket withconsume -o unix:andproduce --in unix:. Keys, headers and tombstones are kept. - Consumer groups: lag per partition, members and assignments, and offset resets that show a dry run until you add
--execute, in the CLI and in the TUI, where partition lists likeorders:0,3-5work too. Classic groups, the new consumer protocol and share groups are all understood. - Monitoring: live throughput and lag with
topic watchandgroup watch, rankings withtop, time lag and an ETA to catch up, stuck-consumer detection, andntk healthfor a one-line cluster check.group lagandhealthexit non-zero on problems, so they work in scripts and CI. - Access control: ACLs granted by role (
acl grant consumer,producer,streams-appand more),acl checkto see why a principal can or can't do something, export and import, SCRAM users and quotas. - Transactions: find hanging transactions that block consumers, and abort them.
- Terminal UI: run
ntkto browse topics, messages, groups, ACLs and cluster health, with the same safety checks as the CLI. - Safe by default: risky changes show a plan and ask before doing anything, and
--dry-runpreviews any change to the cluster without touching it, includingproduce. Read-only profiles refuse writes. Deleting topics by pattern, and anything destructive on aprodprofile, needs a typed confirmation, andacl deleterefuses filters that would match ACLs across the whole cluster.
Install
- Binaries for Linux (amd64, arm64, armv7), macOS (Intel and Apple silicon), Windows (amd64, arm64) and FreeBSD (amd64) are attached below, with a checksums file.
- Docker:
ghcr.io/ntailio/ntk:v1.0.0, also taggedlatest - Go:
go install github.com/ntailio/ntk/cmd/ntk@v1.0.0
Good to know
- Tested against Apache Kafka 4.3 in KRaft mode.
- OAUTHBEARER, AWS MSK IAM and Kerberos authentication aren't supported yet.
- On Windows, everything works except the Unix socket input and output.
- Coming from v1.0.0-rc.1?
topic delete --regexwith-ynow also needs--confirm, andacl deleteneeds a--principalor a resource.