目錄
- 一、Kubernetes
- (1)Kubernetes組件
- (2)Kubernetes主要用途
- (3)Kubernetes優點
- (4)Kubernetes系統框架和計算模型
- (5)Kubernetes 認證方式
一、Kubernetes
kubernetes是google2014年開源的一個容器集群管理系統
官方網站:https://kubernetes.io/
中文社區:https://www.kubernetes.org.cn/k8s

> 用于容器化應用程式的部署,擴展和管理
> 提供了容器編排,資源調度,彈性伸縮,部署管理,服務發現等
> 目標是讓部署容器化應用簡單高效
(1)Kubernetes組件
- etcd 保存了整個集群的狀態;
- apiserver 提供了資源操作的唯一入口,并提供認證、授權、訪問控制、API注冊和發現等機制;
- controller manager 負責維護集群的狀態,比如故障檢測、自動擴展、滾動更新等;
- scheduler 負責資源的調度,按照預定的調度策略將Pod調度到相應的機器上;
- kubelet 負責維護容器的生命周期,同時也負責Volume(CVI)和網路(CNI)的管理;
- Container runtime 負責鏡像管理以及Pod和容器的真正運行(CRI);
- kube-proxy 負責為Service提供cluster內部的服務發現和負載均衡;
(2)Kubernetes主要用途
- 自動化部署、擴展和管理容器應用
- 資源調度
- 部署管理
- 服務發現
- 擴容縮容
- 監控
(3)Kubernetes優點
微服務架構
>單體服務拆分成很多小的互相連接的微服務
>實體副本數量根據負載進行調整
>每個微服務的開發者可以自由選擇開發技術
>使得系統具備很高的穩定性和快速迭代進化能力
超強的橫向擴容能力
>橫向擴容能力是互聯網業務系統的關鍵指標
>支持在線完成集群擴容
(4)Kubernetes系統框架和計算模型

> 管理員操作順序:先進行管理員身份驗證,然后通過API Server控制其他組件進行操作,并且將資料寫入ETCD中
> 操作pod需要kubelet接收到API Server的指令進行代理執行
> 外網操作順序:用戶使用外網通過防火墻,到達Kube-proxy進行網路代理映射到服務中
(5)Kubernetes 認證方式
在 Kubernetes 中包含多個以獨立行程形式運行的組件
這些組件之間通過 HTTP/GRPC 相互通信,以協同完成集群中應用的部署和管理作業,
組件之間的相互呼叫都是通過網路進行的,
在進行網路通信時,通信雙方需要驗證對方的身份,以避免惡意第三方偽造身份竊取資訊或者對系統進行攻擊,
為了相互驗證對方的身份,通信雙方中的任何一方都需要做下面兩件事情
- 向對方提供標明自己身份的一個證書
- 驗證對方提供的身份證書是否合法,是否偽造的?
證書的作用如下:
etcd 集群中各個節點之間相互通信使用的證書,
由于一個 etctd 節點既為其他節點提供服務,又需要作為客戶端訪問其他節點,因此該證書同時用作服務器證書和客戶端證書,
etcd 集群向外提供服務使用的證書,該證書是服務器證書,
kube-apiserver 作為客戶端訪問 etcd 使用的證書,該證書是客戶端證書,
kube-apiserver 對外提供服務使用的證書,該證書是服務器證書,
kube-controller-manager 作為客戶端訪問 kube-apiserver 使用的證書,該證書是客戶端證書,
kube-scheduler 作為客戶端訪問 kube-apiserver 使用的證書,該證書是客戶端證書,
kube-proxy 作為客戶端訪問 kube-apiserver 使用的證書,該證書是客戶端證書,
kubelet 作為客戶端訪問 kube-apiserver 使用的證書,該證書是客戶端證書,
管理員用戶通過 kubectl 訪問 kube-apiserver 使用的證書,該證書是客戶端證書,
kubelet 對外提供服務使用的證書,該證書是服務器證書,
kube-apiserver 作為客戶端訪問 kubelet 采用的證書,該證書是客戶端證書,
kube-controller-manager 用于生成和驗證 service-account token 的證書,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/275766.html
標籤:其他
上一篇:Mysql資料庫分庫分表實踐
下一篇:ES小結【帥哥必看篇】
