9.2. 手动为自动卷分离添加 out-of-service 污点


先决条件

  • 使用 cluster-admin 权限访问集群。

流程

允许卷在非正常节点关闭后自动从节点分离:

  1. 节点检测到不健康后,关闭 worker 节点。
  2. 运行以下命令检查状态,确保节点已关闭:

    oc get node <node name> 1
    1
    <node name> = 非正常关闭节点的名称
    重要

    如果节点没有完全关闭,请不要继续污点该节点。如果节点仍处于 up 状态并且应用了污点,则可能会出现文件系统崩溃。

  3. 运行以下命令来污点对应的节点对象:

    重要

    以这种方式污点节点会删除该节点上的所有 pod。这也会导致任何由 statefulsets 支持的 pod 被驱除,并在不同的节点上创建替换 pod。

    oc adm taint node <node name> node.kubernetes.io/out-of-service=nodeshutdown:NoExecute 1
    1
    <node name> = 非正常关闭节点的名称

    应用污点后,卷将从关闭节点分离,允许将其磁盘附加到其他节点。

    示例

    生成的 YAML 文件类似如下:

    spec:
      taints:
      - effect: NoExecute
        key: node.kubernetes.io/out-of-service
        value: nodeshutdown
  4. 重启该节点。
  5. 运行以下命令,从对应的节点对象中删除污点:

    oc adm taint node <node name> node.kubernetes.io/out-of-service=nodeshutdown:NoExecute- 1
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.