1. 程式人生 > 實用技巧 >k8s資源型別

k8s資源型別

叢集資源分類

  • 名稱空間級別:各個名稱空間之間是隔離的
  • 叢集級別:資源被定義後在全叢集都可以被看見
  • 元資料型:不屬於名稱空間級別和叢集級別,通過某些指標進行操作(比如分析系統的cpu指標)

名稱空間級別下資源

工作負載型資源: Pod、ReplicaSet、Deployment、StatefulSet、DaemonSet、Job\CronJob
服務發現型以及負載均衡資源: Service、Ingress
配置與儲存資源:Volume、CSI(容器儲存介面)
特殊型別的儲存卷:ConfigMap(當配置中心來使用的資源型別)、Secret(儲存敏感資料)、DownWardAPI(把外部環境中的資訊輸出給容器)

容器的生命週期

pod執行週期

pod的生命週期

  • init C:初始化容器階段,只是用於初始化的一個程式,並不會一直伴隨著pod程式的執行,初始化完成之後init C 就會退,在數量上≥0,在同一時間只有一個initC程式在執行,一個initC程式結束之後才會執行下一個init C程式。在這個階段就已經會建立pause容器
  • Main C:主容器,在容器執行之前執行START操作,結束之後會執行Stop操作
  • Readiness:就緒檢測,檢視當前的容器能被叢集的外面所使用的
  • liveness:生存檢測,在極端的情況下,如果主程序變成殭屍程序,不能提供正常訪問時可以重啟重建pod。

init C

  • init c包含和執行很多實用的工具,但是出於安全和冗餘方面的考慮,不建議在應用程式映象中包含這些實用工具。
  • 應用程式映象可以分離出建立和部署的角色,而沒有必要聯合它們構建一個單獨的映象,建立程式的部分可以放在init C去完成
  • Init 容器實用Linux Namespace所以相對應用程式容器來說具有不同的檔案系統檢視。因此他們可以具備訪問Secret的許可權,而應用程式容器則不能。