redpanda-provisioner

Topics, Schema Registry and access control for Redpanda and Kafka. Never deletes, never shrinks partitions.

  • v2.0.0 · latest
  • MIT
  • Go
  • never deletes
  • never decreases partition count
docker pull ghcr.io/datarocks-ag/redpanda-provisioner:2.0.0

What it does

  • Topics, schemas, users, ACLs — Idempotent provisioning of topics, Schema Registry schemas, SASL users and ACLs.
  • Schema Registry — Avro, Protobuf and JSON Schema.
  • SASL/SCRAM — SCRAM-SHA-256 and SCRAM-SHA-512.
  • ACLs — Literal and prefixed resource patterns.
  • Never destructive — Never deletes topics, schemas, users or ACLs that are not in the config, and warns instead of decreasing a partition count.
  • Resilient and observable — Exponential backoff for broker and Schema Registry connectivity; structured JSON logs.
config.example.yaml
topics:
  - name: orders
    partitions: 6
    replication_factor: 3
    config:
      retention.ms: "259200000"
      cleanup.policy: delete
      min.insync.replicas: "2"
      compression.type: zstd

  - name: user-state
    partitions: 6
    replication_factor: 3
    config:
      cleanup.policy: compact
      min.insync.replicas: "2"

schemas:
  - subject: orders-value
    type: avro
    file: schemas/orders.avsc
    compatibility: BACKWARD

users:
  - username: orders-service
    password: ${ORDERS_SERVICE_PASSWORD}
    mechanism: SCRAM-SHA-256

acls:
  - principal: "User:orders-service"
    operations: [write, describe]
    resource_type: topic
    resource_name: orders
    pattern: literal
    permission: allow

  - principal: "User:orders-service"
    operations: [read, describe]
    resource_type: group
    resource_name: order-processors
Excerpt from config.example.yaml

Documentation for this project lives in its README on GitHub.

Documentation on GitHub ↗

Data Rocks AG

[ONE OR TWO LINES ON WHAT DATA ROCKS DOES AND FOR WHOM]

Visit datarocks.ch →