You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Yet another CLI utility to automate Kafka cluster management
7
+
**Kafka-Ops** is a powerful CLI tool written in Go for automating Apache Kafka cluster management. It allows you to declaratively manage Kafka topics and ACLs using JSON or YAML spec files, applying changes idempotently through the Kafka AdminClient API.
8
8
9
-
**Kafka-Ops** is a command-line utility written in Go and mostly inspired by [KafkaSpecs](https://github.com/streamthoughts/kafka-specs) java tool. It allows to automate Kafka management by describing resources (topics, ACLs) and their configs in spec-files and applying them to Kafka cluster. Kafka-Ops uses AdminClient Kafka API to align cluster resources with the spec idempotently. The spec can be manifested either in YAML or JSON format.
9
+
Inspired by [KafkaSpecs](https://github.com/streamthoughts/kafka-specs), Kafka-Ops provides a clean and scriptable way to describe, version, and apply Kafka resource configurations.
10
10
11
+
## Features
12
+
13
+
- Manage Kafka topics and ACLs via spec files
14
+
- Supports JSON and YAML formats
15
+
- Idempotent apply logic via AdminClient API
16
+
- Pattern matching and ACL operations
17
+
- CLI templating using Go templates
18
+
- Support for SASL, SCRAM, and TLS-secured clusters
11
19
12
20
## Requirements
13
21
14
22
* Kafka 2.0+
15
23
16
-
## Spec Files Examples
24
+
## Example Spec Files
17
25
18
26
Both YAML and JSON formats of spec files have the same notation and can be converted from each other. This is the example for YAML format:
Kafka-Ops can also export the current topics and ACLs from the cluster. This can be useful for editing the spec and applyting back or for migrating the spec to another cluster.
177
185
@@ -221,7 +229,7 @@ name: my-product.{{ if .Plant }}{{ .Plant }}{{ else }}default{{ end }}.{{ .Env }
221
229
But Kafka-Ops fails if some unresolved template key is encountered. In order to override this behaviour use flag *--missingok*.
222
230
223
231
224
-
## How to delete multiple topics and consumer groups by pattern
232
+
## Pattern-Based Deletion
225
233
226
234
Kafka-Ops supports deleting the topics and consumer groups by patterns. Please refer to the Spec-file example showing how to achieve the goal:
0 commit comments