Example: new topics (no cluster link)¶
mode: new reads the source topic list and reproduces the selected topics as
plain topics directly on the target — copying each source topic's partition
count and explicitly-set (non-default) configs. Topics are created at the
target's default replication factor (Confluent Cloud uses RF=3). It needs no
cluster link, so there is no spec.clusterLink block.
create is additive: it only creates absent topics. An existing target topic whose
partition count differs from the source is reported as drift and left
untouched; it is never altered or deleted.
Credential slots¶
| Slot | Family | This example | Catalog |
|---|---|---|---|
spec.source.credentials |
Kafka | SASL/SCRAM | kafka-sasl-scram.yaml |
spec.target.clusterCredentials |
REST | API key | rest-api-key.yaml |
Any Kafka credential works for the source (swap in IAM, mTLS, SASL/PLAIN, …); any REST credential works for the target. See the credential catalog.
Run¶
kcp migration resources validate -f migration.yaml # structural check
kcp migration resources create -f migration.yaml --dry-run # preview, change nothing
kcp migration resources create -f migration.yaml # create the topics
Credential paths here point at the shared catalog (
../../credentials/…) to avoid duplication. For a real migration, copy the credential files next to your manifest and update the paths.