Overview
Redpanda is a Kafka-compatible streaming platform written in C++. It implements the Kafka wire protocol natively, so any Kafka client, SDK, or tool works without modification. This template deploys a stateful Redpanda broker cluster with SASL authentication, Schema Registry, an optional HTTP REST proxy, and an optional web console.What Gets Created
- Stateful Redpanda Workload — A multi-replica broker cluster using the Seastar async runtime. Each broker gets its own persistent volume.
- Standard Redpanda Console Workload (optional, enabled by default) — Web UI for browsing topics, inspecting messages, managing consumer groups, and viewing Schema Registry schemas.
- Volume Set — One persistent volume per broker replica for data storage.
- Identity & Policy — An identity bound to the workloads with
revealaccess to credential secrets. - Secrets — A dictionary secret holding SASL user credentials injected at startup.
This template does not create a GVC. You must deploy it into an existing GVC.
Prerequisites
This template has no external prerequisites. To install, follow the instructions for your preferred method:UI
Browse, install, and manage templates visually
CLI
Manage templates from your terminal
Terraform
Declare templates in your Terraform configurations
Pulumi
Declare templates in your Pulumi programs
Configuration
The defaultvalues.yaml for this template:
Cluster Size and Resources
redpanda.replicas— Number of broker replicas. A minimum of 3 is recommended for production to ensure Raft quorum.redpanda.cpu/redpanda.memory— Maximum CPU and memory per broker.redpanda.minCpu/redpanda.minMemory— Minimum guaranteed CPU and memory per broker.redpanda.smp— Number of Seastar reactor threads. Must match the floor ofcpu(e.g.,cpu: 1500m→smp: 1,cpu: 3→smp: 3). Without this, Seastar uses all node CPUs and incorrectly divides memory across them.redpanda.reserveMemory— Memory set aside for the OS. Redpanda uses(memory - reserveMemory)for its own heap. Default1Gworks for most configurations.redpanda.multiZone— Spread brokers across availability zones within the location.
Storage
Each broker replica gets its own persistent volume. For production workloads with high throughput, usehigh-throughput-ssd (minimum 200 GiB).
redpanda.volume.initialCapacity— Initial volume size in GiB.redpanda.volume.performanceClass—general-purpose-ssdorhigh-throughput-ssd.redpanda.volume.fileSystemType—xfs(default, recommended for Redpanda) orext4.
After deploying with custom encryption enabled, navigate to each created volume in the Control Plane console, click
spec, and follow the AWS Custom Encryption Instructions to complete the setup.Authentication
SASL is always enabled. All users are defined underredpanda.auth.users. The first user in the list is automatically granted superuser privileges. Additional superusers can be added under redpanda.auth.superusers.
redpanda.auth.saslMechanism—SCRAM-SHA-256(default) orSCRAM-SHA-512.redpanda.auth.users— List ofusername/passwordpairs created at startup.redpanda.auth.superusers— Additional usernames to grant superuser privileges.
ACLs
redpanda.acl.allowEveryoneIfNoAclFound— Whenfalse(default), clients without an explicit ACL are denied. Set totrueto allow unauthenticated access when no ACL exists for a resource.
Listeners
| Listener | Port | Description |
|---|---|---|
| Kafka | 9092 | Kafka-compatible wire protocol (internal) |
| Admin API | 9644 | Redpanda Admin API for cluster management |
| Schema Registry | 8081 | Confluent-compatible Schema Registry |
| PandaProxy | 8082 | HTTP REST proxy (disabled by default) |
Extra Broker Configuration
Pass any Redpanda broker property directly viaextra_configurations. These are injected into redpanda.yaml at startup:
Firewall
redpanda.firewall.internal_inboundAllowType— Controls which workloads can reach the brokers:same-gvc— All workloads in the same GVC (default).same-org— All workloads in the org.
redpanda.firewall.inboundAllowWorkload— Allow specific workloads by path.
Connecting
Redpanda is accessible internally from any workload in the same GVC:| Listener | Hostname | Port |
|---|---|---|
| Kafka | {clusterName}.{gvc}.cpln.local | 9092 |
| Admin API | {clusterName}.{gvc}.cpln.local | 9644 |
| Schema Registry | {clusterName}.{gvc}.cpln.local | 8081 |
| PandaProxy (if enabled) | {clusterName}.{gvc}.cpln.local | 8082 |
rpk:
Redpanda Console
The Redpanda Console is enabled by default and accessible via the Control Plane external endpoint for the{release-name}-console workload. It provides a web UI for browsing topics, inspecting messages, managing consumer groups, and viewing Schema Registry schemas.
To expose the console on a custom domain, set redpanda_console.domain:
redpanda_console.firewall.external_inboundAllowCIDR:
External Access
Redpanda brokers can be exposed over the internet via TLS using a public domain. Each broker advertises its own per-replica subdomain and Control Plane routes clients to the correct broker using SNI.Prerequisites
- A domain you control with DNS managed by your registrar (e.g. Cloudflare).
- Dedicated Load Balancer enabled on your GVC — required for external TCP routing. Enable under GVC settings in the Control Plane console. See Configure Domain documentation.
- DNS records added before deploying. Disable proxying (e.g. Cloudflare’s orange cloud) — TCP traffic must pass through directly:
| Type | Name | Value |
|---|---|---|
| TXT | _cpln.your-domain.com | your Control Plane org name or org ID |
| CNAME | @ | {gvcAlias}.cpln.app |
| CNAME | _acme-challenge | _acme-challenge.cpln.app |
| CNAME | {clusterName}-0-{location} | {gvcAlias}.cpln.app |
| CNAME | {clusterName}-1-{location} | {gvcAlias}.cpln.app |
| CNAME | {clusterName}-N-{location} | {gvcAlias}.cpln.app |
_acme-challenge record is required for Control Plane to issue the TLS certificate via DNS-01. Your GVC alias is visible under GVC settings in the Control Plane console.
Configuration
Connecting Externally
Each broker advertises its own subdomain in the format{clusterName}-{ordinal}-{location}.{domain}. Use all broker addresses as the bootstrap list:
External References
Redpanda Documentation
Official Redpanda documentation
Redpanda Console Documentation
Redpanda Console UI guide
rpk CLI Reference
rpk command reference for managing Redpanda clusters
Schema Registry API
Confluent-compatible Schema Registry and HTTP Proxy API reference