CKS真題 -- 無狀態和不可變應用

任務

檢查在namespace development中運行的pod,並刪除任何非無狀態和非不可變的pod

名詞解釋:
無狀態應用:指應用本身不依賴於持久化的狀態數據,沒有存儲掛載,更強調每個請求的獨立性。
不可變應用:一旦程序部署完成,其狀態不會在運行時被直接修改,更強調pod的穩定性和不變性。

主要刪除的就是兩種pod:

  1. privileged: true的pod # 允許特權的pod
  2. readOnlyRootFileSystem: false #只讀文件系統爲false的pod
  3. 有pvc、hostpath掛載的
  4. ConfigMap、Secret、Download API、emptyDir不算。
     

解題

  1. 檢查development下所有pod
kubectl get pod -n development
  1. 挨個檢查,如果發現非無狀態應用和非不可變應用就刪掉。
kubectl get pod xxx -n development -oyaml |grep -E "privileged|readOnlyRootFileSystem" #檢查非不可變應用
kubectl get pod xxx -n development -oyaml|grep "persistentvolumeclaim" #檢查非無狀態應用
kubectl get pod xxx -n development -oyaml|grep "hostpath"

kubectl delete pod xxx -n development
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章