[TOC]node
DevOps,分層架構 ---> 微服務git
把一個程序,拆分紅幾個成百個微服務,使其相互獨立運行github
當下把微服務和容器融合起來,使其可以快速的落地。算法
DevOps 在交互和部署環節的易購程度,在部署環節異常困難,而容器的出現,徹底彌補了。docker
做爲運維的角度,獲得一個應程序,須要發佈到生產,藍綠部署,金絲雀,灰度發佈後端
kubernetes,簡稱K8s,是用8代替8個字符「ubernete」而成的縮寫。是一個開源的,用於管理雲平臺中多個主機上的容器化的應用,Kubernetes的目標是讓部署容器化的應用簡單而且高效(powerful),Kubernetes提供了應用部署,規劃,更新,維護的一種機制。 Kubernetes是Google開源的一個容器編排引擎,它支持自動化部署、大規模可伸縮、應用容器化管理。在生產環境中部署一個應用程序時,一般要部署該應用的多個實例以便對應用請求進行負載均衡。api
稱爲:物理機羣架構是。有中心節點架構的集羣 master/nodes(worker)負載均衡
master上最重要的組件:
API Server
Scheduler(調度器)
NodeName
字段)。Controller-Manager(控制器管理器,controller針對node進行健康狀態監控)
etcd
node上重要的組件:
容許自託管:(kubernetes運行在kubernetes自身之上)
pod
,邏輯的。一個pod中,能夠有多個容器。Pod:kubernetes中的最小單位,相似於宿主機上的虛擬機,每一個pod上能夠運行一個或多個容器。
pod的重要組成部分:
Label
Lable Selectes
Replication Controller:副本控制器 ReplicaSet:副本集控制器,幾乎不直接使用,多用Deployment Deployment:經常使用,只能用於管理無狀態的應用 StatefulSet:用於管理有狀態的應用 DaemonSet:只運行一個副本 Job:做業 Ctonjob:週期性任務做業
kubernetes中有三種網絡:
三類通訊: