學習k8s——基本架構

對部署流水線有了個大體的認知以後,開始學習k8snode

  1. k8s的基本架構 kubernateskubernates這個單詞起源於古希臘,是舵手的意思,因此它的logo既像一個漁網,又像一個羅盤。K8S是它的縮寫,用「8」字替代了「ubernete」這8個字符。

        k8s是容器編排引擎,前身是google的brog.docker

  • 基本架構圖

我們從左往右來看這個圖,最左邊是client端,是操做k8S的輸入端,如UI,好比k8s dashboard, command Line interface 也就是kubectl。這個api表明api server, 一個k8s集羣包含一個master節點和多個node節點。其中master是管理節點,node是工做節點。Node是kubernetes集羣的工做節點,能夠是物理機也能夠是虛擬機。api

 

  • master節點

接下來我們看master節點,master節點呢上面的呢是master節點,一共有4個組件,master上運行的是Api server, scheduler, controller manager, etcd四個組件。其中controller manager ,api server, scheduler 構成了k8s的總控中心,負責對集羣中全部資源進行管控和調度。而etcd是高可用的key/value存儲系統,用於持久化存儲集羣中的全部的資源。 apiserver提供了資源操做的惟一入口,並提供認證、受權、訪問控制、API註冊和發現等機制; controller manager負責維護集羣的狀態,好比故障檢測、自動擴展、滾動更新等; scheduler負責資源的調度,按照預約的調度策略將Pod調度到相應的機器上;架構

  • node節點

node節點,全部的業務容器都在node上運行,全部的node上要先裝上docker,或者其餘的容器, 運行kubelet,kube-proxy,這個兩個組件是k8s的組件 docker,fluentd是第3方的組件,其中docker是容器,而fluentd是用來收集日誌的組件學習

optional: kube-dns負責爲整個集羣提供DNS服務 Ingress Controller爲服務提供外網入口;google

Heapster提供資源監控 Dashboard提供GUI Federation提供跨可用區的集羣3d

相關文章
相關標籤/搜索