1. 概述
容器服務 kubernetes知識圖譜,部分内容參考網上一知識圖譜,更加結合阿裡雲容器服務。
https://www.processon.com/view/link/5ac64532e4b00dc8a02f05eb#map
2. 連結和備注
類别 | 知識點 | 知識連結 | 備注 |
---|---|---|---|
Docker 原理 | KVM--> ECS | 連結 | 虛拟機 |
網絡隧道技術-->VPC | vpc 虛拟網絡 | ||
NameSpace | 連結1 連結2 | Linux 容器中用來實作“隔離”的技術手段:Namespace,Namespace 技術實際上修改了應用程序看待整個計算機的範圍,它的通路範圍被作業系統做了限制,隻能“看到”某些指定的内容。 | |
CGroup | Linux Control Group。它最主要的作用,就是限制一個程序組能夠使用的資源上限,包括 CPU、記憶體、磁盤、網絡帶寬等等。 | ||
RootFS(Union FS) | rootfs 隻是一個作業系統所包含的檔案、配置和目錄,并不包括作業系統核心。在 Linux 作業系統中,這兩部分是分開存放的,作業系統隻有在開機啟動時才會加載指定版本的核心鏡像。 | ||
windows 2019 | windowserver 2019開始支援 namespace | ||
容器服務部署 | Docker Desktop | Mac 機器上強烈建議安裝該軟體作為學習使用 | |
kuberternetes | kubernetes 叢集,aliyun容器服務支援 | ||
DashBoard | kubernetes 叢集的圖形界面管理工具,容器服務控制台整合了該應用并擴充 | ||
EasyPack | 一批部署 kubernetes 等叢集的腳本集合 | ||
minikube | mini k8s | ||
工具元件 | kubectl | kubectl用于運作Kubernetes叢集指令的管理工具 | |
kubeadm | Kubernetes官方提供的用于快速安裝配置Kubernetes叢集的工具 | ||
Helm | 類似 rpm,yum,是 k8s 用于安裝元件(軟體包:chart)的工具 | ||
CFSSL | CFSSL是開源的一款PKI/TLS工具,常用于 k8s 證書制作 | ||
鏡像倉庫 | aliyun 私有鏡像倉庫 | aliyun 推出的鏡像倉庫,建議采用企業版 | |
雲效配置鏡像倉庫 | 雲效企業設定,配置支援從阿裡雲私有鏡像倉庫拉取鏡像 | ||
Harbor 鏡像倉庫 | 開源免費的存儲和分發Docker鏡像的企業級Registry伺服器 | ||
元件 | kube-apiserver(Master) | 在 generic server 上封裝的一層官方預設的 apiserver(static pod) | |
etcd(Master) | 類 zk 基于Raft 協定的實作,啟動程序 | ||
Kube-scheduler(Master) | 負責 pod 分布到 Node 上的排程器(static pod) | ||
kube-controller-manager(Master) | Deployment 等基礎對象的控制器(static pod) | ||
cloud-controller-manager(Master) | 用于雲資源使用的控制器,是雲服務進行內建的控制器(Daemonset) | ||
kubelet(Node) | 與 Master 通信,對 worker(Node)進行生命周期管理 | ||
kube-proxy(Node) | 節點上運作的網絡代理 (Daemonset) | ||
containner runtime(Node) | CRI 接口 | ||
DNS | aliyun容器服務采用 CoreDNS(deployment) | ||
Ingress controller | aliyun容器服務采用nginx ingress controller, 可以作為 https 服務的統一路由(deployment) | ||
Heapster & influxdb | 監控資料采集與存儲用的時序資料庫(Deployment) | ||
Federation | 叢集聯盟,實作高可用,同步資源等 | ||
kube-flannel | 官方網絡插件,aliyun 另外提供了自己開發的 Terway 元件(daemonset) | ||
logtail | aliyun 日志采集元件(daemonset) | ||
基礎對象 | POD | 容器組,運作應用容器基本機關,kubectl get pods | |
Node | 叢集節點伺服器,Kubernetes中的工作節點。 | ||
用以區分和隔離應用 | |||
Deployement | 無狀态部署,最常用部署配置 | ||
Daemonset | 類似守護程序 | ||
StatefulSet | 有狀态部署 | ||
Job & CronJob | 排程任務 | ||
Static POD | 靜态 pod 配置,yaml位于 Master | ||
HPA | 水準伸縮排程器 | ||
Service | 服務暴露配置,包括 Cluster,NodePort,SLB 等 | ||
Ingress | 路由,阿裡雲預設提供 nginx ingress | ||
Secret | 保密字典,包括 tls,私有倉庫密鑰,Opaque 幾種 | ||
ServiceAccount | 用于資源對象的賬号,比如給一個 Namespace 授予某私有鏡像通路權限 | ||
RBAC | k8s 基于角色的通路控制,role,rolebinding | ||
Volume | 映射磁盤 | ||
Storge Class | t | ||
CustomResourceDefinition | 自定義擴充資源 | ||
插件擴充 | CNI(Falnnel/Terway) | 容器網絡接口 | |
FlexVolume | 開源Volume實作插件,阿裡雲使用中 | ||
Cloud Provider | 雲服務供應接口 | ||
容器服務優化-最佳實踐 | Master 選型及磁盤規格 | ||
網絡選擇 | [連結]( https://yq.aliyun.com/articles/594943 ) | ||
Worker 節點選型 | |||
Ingress Controller 獨立部署 | |||
Master 變配 | |||
節點變配或重新開機、摘除、加入 | |||
基礎鏡像開發 | |||
Service 與 SLB 結合 | |||
叢集審計 | |||
Deployment實作分批釋出 | |||
StatefulSet 分批釋出 | |||
堡壘機上按照應用設定權限 | |||
Pod 均勻分布部署 | |||
應用優雅下線,優雅退出 | |||
ApiServer 通路控制 | |||
監控 | |||
服務治理 | Istio | 目前最流行的網格服務架構,aliyun支援 | |
Linkerd | 最早提出網格服務公司的産品 | ||
雲效 | 支援容器服務 k8s 的 CI/CD 阿裡雲上産品 | ||
Jenkins | 著名的最常用的 CI/CD 産品,容器服務由一鍵安裝産品 |