K8S(二) 核心物件概念

2021-09-11 01:49:05 字數 1305 閱讀 5999

pod

pod是最小部署單元,乙個pod有乙個或者多個容器組成,pod中容器共享儲存和網路,在同一臺docker主機上執行。

service

service乙個應用服務抽象,定義了pod邏輯集合和訪問這個pod集合的策略。

service**pod集合對外表現是為乙個訪問入口,分配乙個集群ip位址,來自這個ip的請求將負載均衡**後端pod中的容器。

service通過label selector選擇一組pod提供服務。

volume

資料卷,共享pod中容器使用的資料。

可能在集群外,防止pod重啟或者故障檔案丟失,一般做持久化。

namespace

命名空間將物件邏輯上分配不同namespace,可以是不同的專案、使用者等區分管理,並設定控制策略,從而實現多租戶。

命名空間也稱為虛擬集群。

label

標籤用於區分物件(比如pod、service),鍵/值對存在;每個物件可以有多個標籤,通過標籤關聯物件。

replicaset

下一代replication controller,確保任何給定時間指定的pod副本數量,並提供宣告式更新等功能。

rc與rs唯一區別:label selector支援不同,rs支援新的基於集合的標籤,rc僅支援基於等式的標籤。

deployement

deployement是乙個更高層次的api物件,他管理rs和pod,並提供宣告式更新等功能。

官方建議使用deployement管理rs,而不是直接使用rs,這就意味著可能永遠不需要直接操作rs物件。

staefulset(null)

有狀態的部署,比如zookeeper

statefulset適合永續性的應用程式,有唯一的網路識別符號(ip),持久儲存,有序的部署、擴充套件、刪除和滾動更新。

daemonset(null)

比如監控,每個節點部署乙個

deamonset確保所有(或一些)節點執行同乙個pod。當節點加入kubernetes集群中,pod會被排程到該節點上執行,當節點從集群中移除時,daemonset的pod會被刪除,刪除daemonset會清理他所有建立的pod。

job(null)

一次性任務,執行完成後pod』銷毀,不再重新啟動新容器,還可以任務定時執行

K8s核心概念詳解

kubernetes 通常簡稱為k8s 是乙個用於管理在容器中執行的應用的容器編排工具。kubernetes不僅有你所需要的用來支援複雜容器應用的所有東西,它還是市面上最方便開發和運維的框架。kubernetes的工作原理是通過將容器分組來把乙個應用程式拆分成多個邏輯單元,以方便管理和發現。它對由小...

k8s核心元件

k8s的設計理念類似於linux的分層架構。1.master 核心控制 是老大 它主要負責排程,決定服務在 執行,master執行linux系統,可以是物理機或虛擬機器,master是k8s cluster的大腦,執行著的守護程序服務包括 kube apiserver,kube scheduler,...

K8s概念指南

cluster 集群是指由 k8s使用一些列的物理機 虛擬機器和其他基礎資源來執行你的應用程式 node 乙個 node 就是乙個執行著 k8s的物理機或虛擬機器,平切 pod可以在其上面被排程 pod 乙個 pod對應乙個由相關容器和卷組成的容器組 label 乙個 label 是乙個被附加到資源...