You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无需使用Azure Portal,如何通过命令重启Kubernetes Pod?

无需Azure Portal,用命令重启Kubernetes Pod的方法

Kubernetes本身没有直接的restart pod命令,不过可以通过以下几种常用方式实现Pod重启,适用于Azure Kubernetes Service(AKS)集群:

1. 删除Pod让控制器自动重建

如果Pod由Deployment、StatefulSet、DaemonSet等控制器管理,直接删除Pod后控制器会立刻重建新的Pod:

# 指定命名空间删除单个Pod
kubectl delete pod <pod-name> -n <namespace>

# 默认命名空间下删除Pod(省略-n参数)
kubectl delete pod <pod-name>

注意:单副本Deployment场景下,删除期间会有短暂服务中断;多副本场景则不会完全中断服务。

2. 滚动更新控制器(推荐生产环境使用)

通过触发控制器的滚动更新,实现优雅重启Pod——逐个替换现有实例,避免服务中断:

  • Deployment:
    kubectl rollout restart deployment <deployment-name> -n <namespace>
    
  • StatefulSet:
    kubectl rollout restart statefulset <statefulset-name> -n <namespace>
    
  • DaemonSet:
    kubectl rollout restart daemonset <daemonset-name> -n <namespace>
    

3. 修改Pod注解触发重建

通过给Pod添加/更新重启时间注解,让控制器检测到配置变化并重建Pod:

kubectl patch pod <pod-name> -n <namespace> -p '{"metadata":{"annotations":{"kubectl.kubernetes.io/restartedAt":"'$(date +%Y-%m-%dT%H:%M:%S)'"}}}'

这种方式适合需要精准触发单个Pod重启的场景。

前置条件

确保本地已安装kubectl,且已配置好AKS集群的访问权限,可通过以下命令确认及切换集群上下文:

# 查看当前可用的集群上下文
kubectl config get-contexts

# 切换到目标AKS集群上下文
kubectl config use-context <context-name>

内容的提问来源于stack exchange,提问作者Malith Alawatta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 23:24:37