### K8s触发机器重启流程
| 步骤 | 操作 | 代码示例 |
| :--: | :--: | :--: |
| 1 | 获取要重启的机器的节点名称 | `kubectl get nodes` |
| 2 | 标记节点为不可调度 | `kubectl cordon
| 3 | 将节点上的Pod驱逐到其他节点 | `kubectl drain
| 4 | 重启节点 | 手动重启节点 |
| 5 | 恢复节点调度功能 | `kubectl uncordon
### 操作及代码示例
#### 步骤1:获取要重启的机器的节点名称
```
kubectl get nodes
```
这条命令将列出集群中所有的节点,您可以根据节点的状态选择要重启的机器的节点名称。
#### 步骤2:标记节点为不可调度
```
kubectl cordon
```
这条命令将节点标记为不可调度,确保新的Pod不会被调度到该节点上。
#### 步骤3:将节点上的Pod驱逐到其他节点
```
kubectl drain
```
这条命令将节点上的Pod迁移至其他节点,`--delete-local-data`参数将删除该节点上的本地数据,`--ignore-daemonsets`参数将忽略DaemonSet中的Pod。
#### 步骤4:重启节点
在这一步,您需要手动重启节点,可以通过相应的云平台控制台或命令行进行操作。
#### 步骤5:恢复节点调度功能
```
kubectl uncordon
```
这条命令用于恢复节点的调度功能,使节点可以再次接收新的Pod调度。
通过以上操作,您就可以在Kubernetes中触发机器重启了。请确保在执行这些操作之前,仔细理解每一步的含义,以免造成不必要的损失。希望本文对您理解K8s触发机器重启有所帮助!