conduktor.io ↗

Minimum Replication Factor

Production topics must have replication factor ≥ 3.

Rationale

RF=1 means one broker failure equals data loss. RF=2 cannot tolerate any failure while staying in-sync with min.insync.replicas=2. RF=3 is the durability floor for production.

Pattern

replicationFactor >= 3 (prod), >= 2 (staging)

Examples

replicationFactor: 3
replicationFactor: 5
replicationFactor: 1
replicationFactor: 2 (in prod)

Parameters

NameDefaultDescription
prod 3 Minimum RF in production environments.
staging 2 Minimum RF in staging.

Governs

This policy relates to the following Kafka configuration keys:

Implementation

Drop this YAML into Conduktor Console as a ResourcePolicy, then link it from an ApplicationInstance, Application, or KafkaCluster.

Conduktor ResourcePolicy
# Conduktor self-service ResourcePolicy
# Schema: https://docs.conduktor.io/platform/reference/resource-reference/self-service/#resourcepolicy
# Scoping: ResourcePolicy has no native "appliesTo" — we gate the rule on the
# topic name prefix inside the CEL condition itself (vacuously true for non-prod).
---
apiVersion: self-serve/v1
kind: ResourcePolicy
metadata:
  name: min-replication-factor
spec:
  targetKind: Topic
  description: Production topics must have replication factor >= 3
  rules:
    - condition: '!metadata.name.startsWith("prod.") || spec.replicationFactor >= 3'
      errorMessage: "Production topics must have replication factor >= 3"

Related policies

Try Conduktor Console

Enforce policies like this across your team — central audit history, pre-commit guardrails, ApplicationInstance bindings. 5-min Docker install.

Get Started →