k8s优雅操作pod容器组

k8s优雅操作pod容器组

回退备份

sh 复制代码
kubectl get deploy deployName -o yaml>>deployName-bak-`date "+%Y-%m-%d"`.yaml

获取副本数

sh 复制代码
replicas=`echo | kubectl get -o template deploy/deployName --template={{.spec.replicas}}`

停止容器组

sh 复制代码
kubectl scale deployment deployName --replicas=0

修改配置

sh 复制代码
kubectl set env deploy/deployName privateCertPath="/var/www/cert/xxx.key"

替换内容

sh 复制代码
kubectl get deploy deployName -o yaml | sed "s#cert#cert-new#g" | kubectl replace -f -

增加内容

sh 复制代码
cat <<EOF > ./patch-file.yaml
spec:
  template:
    spec:
      containers:
      - name: patch-demo
        image: redis
EOF
kubectl patch deployment deployName --patch "$(cat patch-file.yaml)"

恢复容器组

sh 复制代码
kubectl scale deployment trade-service --replicas=$replicas

验证比较

sh 复制代码
kubectl get deploy deployName -oyaml>>deployName-new-`date "+%Y-%m-%d"`.yaml
kubectl diff --filename="deployName-new-`date "+%Y-%m-%d"`.yaml,deployName-bak-`date "+%Y-%m-%d"`.yaml"

回退

sh 复制代码
kubectl apply -f deployName-bak-`date "+%Y-%m-%d"`.yaml

其他

操作secret数据卷

sh 复制代码
kubectl delete secret secretName
kubectl create secret generic secretName --from-file=./xxx.key --from-file=./xx.cer --from-file=./xxx.cer
相关推荐
胡斌附体15 分钟前
linux测试端口是否可被外部访问
linux·运维·服务器·python·测试·端口测试·临时服务器
愚润求学24 分钟前
【Linux】自旋锁和读写锁
linux·运维
大锦终25 分钟前
【Linux】常用基本指令
linux·运维·服务器·centos
知北游天1 小时前
Linux:多线程---深入互斥&&浅谈同步
linux·运维·服务器
Gappsong8741 小时前
【Linux学习】Linux安装并配置Redis
java·linux·运维·网络安全
try2find1 小时前
移动conda虚拟环境的安装目录
linux·运维·conda
码农101号2 小时前
Linux中容器文件操作和数据卷使用以及目录挂载
linux·运维·服务器
程序员弘羽2 小时前
Linux进程管理:从基础到实战
linux·运维·服务器
大熊程序猿3 小时前
netcore PowerShell 安装-linux
linux·运维
AIbase20243 小时前
国内MCP服务平台推荐!aibase.cn上线MCP服务器集合平台
运维·服务器·人工智能