9.6. (Preview) Kafka 주제에 영향을 미치지 않고 KafkaTopic 리소스 관리
다음 절차에서는 KafkaTopic 리소스를 통해 현재 관리되는 Kafka 주제를 비관리 주제로 변환하는 방법을 설명합니다. 이 기능은 다양한 시나리오에서 유용할 수 있습니다. 예를 들어 KafkaTopic 리소스의 metadata.name 을 업데이트할 수 있습니다. 원래 KafkaTopic 리소스를 삭제하고 새 리소스를 다시 생성하는 경우에만 이 작업을 수행할 수 있습니다.
strimzi.io/managed=false 를 사용하여 KafkaTopic 리소스에 주석을 달면 Topic Operator에서 더 이상 특정 주제를 관리하지 않아야 함을 나타냅니다. 이를 통해 리소스의 구성 또는 기타 관리 작업을 변경하는 동안 Kafka 주제를 유지할 수 있습니다.
단방향 주제 관리를 사용하는 경우 이 작업을 수행할 수 있습니다.
Unidirectional 주제 관리는 프리뷰로 사용할 수 있습니다. Unidirectional 주제 관리는 기본적으로 활성화되어 있지 않으므로 UnidirectionalTopicOperator 기능 게이트를 활성화해야 합니다.
사전 요구 사항
절차
OpenShift에서
KafkaTopic리소스에 주석을 답니다.strimzi.io/managed를false로 설정합니다.oc annotate kafkatopic my-topic-1 strimzi.io/managed=falseKafkaTopic리소스에서 topic의metadata.name을 지정합니다(이 예제에서는my-topic-1).KafkaTopic리소스의 상태를 확인하여 요청이 성공했는지 확인합니다.oc get kafkatopics my-topic-1 -o yamlReady상태의 항목 예apiVersion: kafka.strimzi.io/v1beta2 kind: KafkaTopic metadata: generation: 124 name: my-topic-1 finalizer: strimzi.io/topic-operator labels: strimzi.io/cluster: my-cluster spec: partitions: 10 replicas: 2 # ... status: observedGeneration: 1241 topicName: my-topic-1 conditions: - type: Ready status: True lastTransitionTime: 20230301T103000Z- 1
- 리소스를 성공적으로 조정하면 주제를 더 이상 관리하지 않습니다.
metadata.generation(현재 배포 버전)의 값은status.observedGeneration(리소스의 최신 조정)과 일치해야합니다.이제 관리 중인 Kafka 항목에 영향을 미치지 않고
KafkaTopic리소스를 변경할 수 있습니다.예를 들어
metadata.name을 변경하려면 다음과 같이 수행합니다.원래
KafkTopic리소스를 삭제합니다.oc delete kafkatopic <kafka_topic_name>-
다른
metadata.name을 사용하여KafkTopic리소스를 재생성하지만spec.topicName을 사용하여 원본에서 관리하는 것과 동일한 주제를 참조합니다.
-
원래
KafkaTopic리소스를 삭제하지 않았으며 Kafka 주제 관리를 다시 시작하려는 경우strimzi.io/managed주석을true로 설정하거나 주석을 제거합니다.