9.8. (预览)删除受管主题


单向主题管理支持通过 KafkaTopic 资源删除通过 OpenShift 终结器管理的主题。这由 STRIMZI_USE_FINALIZERS Topic Operator 环境变量控制。默认情况下,这被设置为 true,但如果您不想 主题 Operator 来添加终结器,则可以在主题 Operator env 配置中将其设置为 false

注意

单向主题管理作为技术预览提供。默认情况下,不启用单向主题管理,因此您必须 启用 UnidirectionalTopicOperator 功能门 才能使用它。

终结器(finalizers)可确保按顺序控制地删除 KafkaTopic 资源。Topic Operator 的终结器添加到 KafkaTopic 资源的元数据中:

控制删除主题的终结器

apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaTopic
metadata:
  generation: 1
  name: my-topic-1
  finalizer:
    strimzi.io/topic-operator
  labels:
    strimzi.io/cluster: my-cluster

在本例中,为主题 my-topic-1 添加了终结器。finalizer 会阻止主题被完全删除,直到最终化过程完成为止。如果使用 oc delete kafkatopic my-topic-1 删除主题,则会在元数据中添加时间戳:

删除时的终结器时间戳

apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaTopic
metadata:
  generation: 1
  name: my-topic-1
  finalizer:
    strimzi.io/topic-operator
  labels:
    strimzi.io/cluster: my-cluster
  deletionTimestamp: 20230301T000000.000

资源仍然存在。如果删除失败,则会在资源的状态中显示。

当成功执行最终任务时,终结器会从元数据中删除,并且资源会被完全删除。

终结器还阻止相关资源被删除。如果单向主题 Operator 没有运行,则无法删除 metadata.finalizer。因此,在 Operator 重启前,尝试删除包含 KafkaTopic 资源的命名空间不会完成,或者删除终结器(例如,使用 oc edit)。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.