k8s 如何更新程序?處理方案:kubectl delete pod PODNAME --force --grace-period=0,我來為大家科普一下關于k8s 如何更新程序?下面希望有你要的答案,我們一起來看看吧!

k8s 如何更新程序
問題一
- pod無法删除的問題
處理方案:kubectl delete pod PODNAME --force --grace-period=0
問題二- pv無法删除的問題
處理方案:kubectl patch pv 你的pv名字 -p '{"metadata":{"finalizers":null}}'
問題三- namespace 無法删除
處理方案:
kubectl get namespace jenkins -o json > tmp.json
然後打開tmp.json,删除其中的spec字段 "spec": { #帶有finalizers
},
開啟代理到本地: kubectl proxy --port=8081
然後運行
curl -k -H "Content-Type: application/json" -X PUT --data-binary @tmp.json http://127.0.0.1:8081/api/v1/namespaces/jenkins/finalize
kubecet get ns #查看已經删除了
問題四- k8s 出現failed to watch file "/var/log/pods/xxxx/xxxxxx.log": no space left on deviceroot
解決方法:
vi /etc/sysctl.conf
在文件中添加或者修改成自己想要的值,一般直接翻倍,一直到沒有問題不報錯了
fs.inotify.max_user_watches = 2097152
修改完後執行命令,讀取修改後的值
/sbin/sysctl -p
參數解釋:inotify定義了下列的接口參數,可以用來限制inotify消耗kernel memory的大小。由于這些參數都是内存參數,因此,可以根據應用需求,實時的調節其大小:
- /proc/sys/fs/inotify/max_queued_evnets
- 表示調用inotify_init時分配給inotify instance中可排隊的event的數目的最大值,超出這個值的事件被丢棄,但會觸發IN_Q_OVERFLOW事件。
- /proc/sys/fs/inotify/max_user_instances
- 表示每一個real user ID可創建的inotify instatnces的數量上限。
- /proc/sys/fs/inotify/max_user_watches
- 表示每個inotify instatnces可監控的最大目錄數量。如果監控的文件數目巨大,需要根據情況,适當增加此值的大小。