kubernetes中資源清單以yaml文件或json格式編寫清單列表node
經過一個清單定義好一個應用後就能夠使用kubectl工具來應用他
$ kubectl create -f xxxx.yaml算法
原理:
(1)kubectl直接操做APIServer,至關於咱們把清單交付給APIServer,而後獲取清單描述的應用信息後存入etcd數據庫中
(2)kube-sheduler組件發現這時候有個pod還沒綁定到節點上,就會對pod進行一系列的調度,把他分配到合適的節點
(3)kube-sheduler把節點和pod綁定到一塊兒寫回etcd數據庫中
(4)節點的kubelet組件發現有個pod分配過來,就去把pod信息拉取下來,經過描述信息將容器運行時把容器建立出來
(6)把pod信息寫回etcd數據庫
kube-sheduler是什麼?
調度器,爲新建立的pod在集羣中尋找最合適的node,並將pod調度到Node上。
職責:json
1.從集羣全部節點中,根據調度算法挑選出全部能夠運行該pod的節點。
2.再根據調度算法從上述node節點選擇最優節點做爲最終結果。
3.Scheduler調度器運行在master節點,它的核心功能是監聽apiserver來獲取PodSpec.NodeName爲空的pod,而後爲pod建立一個binding指示pod應該調度到哪一個節點上,調度結果寫入apiserverapi