1、node
Kubernetes中內建了不少controller(控制器),這些至關於一個狀態機,用來控制Pod的具體狀態和行爲。blog
Pod :
1)自主式pod(指定調度到某節點,如節點down, pod 沒法恢復)
2)控制器管理pod 通常有以下控制器 不一樣類型的控制器用於不一樣相似的pod部署
ReplicationController (控制副本數,滾動更新)
ReplicaSet (新一代的控制器)
Deployment (通常使用此聲明式管理器,只能用於無狀態應該)
statefulset (有狀態副本集控制器)io
DaemonSet (使用此控制器部署的副本,會在每個node上構建)
Job (job的pod多用於執行一次性任務,執行完成pod後就會中止)
Cronjob (計劃性job執行)方法
3)ReplicationController、ReplicaSet、Deploymentim
如今主要關注ReplicaSet、Deployment,二者關係以下圖:img
ReplicaSet 也是用來管理多個 Pod 的副本;升級
Deployment運行於ReplicaSet之上,擁有更加靈活的升級、回滾功能。co
當建立了 Deployment 以後,實際上也建立了 ReplicaSet,因此說 Deployment 管理着 ReplicaSet( Deployment 比 ReplicaSet 有着更多功能);controller
建議使用Deployment而不直接使用Replica Set;
Deployment 爲 Pod 和 ReplicaSet 提供了一個聲明式定義(declarative)方法,用來替代之前的ReplicationController 來方便的管理應用。典型的應用場景包括:
定義Deployment來建立Pod和ReplicaSet
滾動升級和回滾應用
擴容和縮容
暫停和繼續Deployment
2、
3、
未完待續。。。