在 Kubernetes 中,对节点进行维护(如升级内核、硬件维修)时,通常需要两个步骤:首先停止向该节点调度新 Pod(Cordon),然后安全地将现有 Pod 迁移走(Drain)。 以下是具体的操作命令和详细说明: 1. 将节点设置为不可调度 (Cordon) 作用:标记该节点为 。Kubernetes 调度器将不再把新的 Pod 分配到该节点上,但节点上现有的 Pod 不受影响,继续正常运行。 命令: 验证: 执行 ,你会看到该节点的状态包含 。 --- 2. 驱逐节点上的 Pod (Drain) 作用:安全地驱逐节点上的 Pod。 它会自动先执行 命令。 它会删除节点上的 Pod(静态 Pod 和 DaemonSet 除外),并让控制器(如 Deployment)在集群中的其他可用节点上重新创建这些 Pod。 它会遵守 (PDB) 策略,确保服务高可用。 基本命令: 常用参数(重要): 在实际生产环境中,直接运行 通常会报错,因为节点上可能包含 DaemonSet 或使用本地存储的 Pod。通常需要加上以下参数: :忽略 DaemonSet 管理的 Pod(如 kube...