發展經歷
https://www.sohu.com/a/108369576_465914
知識圖譜
介紹說明
發展歷史
爲什麼需要 K8S 的誕生
- 公有云類型說明
- 資源管理器對比
- K8S 其優勢
K8S 組件說明
-
Borg 組件說明
-
K8S 結構說明
- 網絡結構
- 組件結構
K8S 中的一些關鍵字解釋
基礎概念
Pod 概念
-
自主式 Pod
-
管理器管理的 Pod
- RS、RC
- deployment
- HPA
- StatefullSet
- DaemonSet
- Job,Cronjob
-
服務發現
-
Pod 協同
網絡通訊模式
- 網絡通訊模式說明
- 組件通訊模式說明
Kubernetes 安裝
系統初始化
Kubeadm 部署安裝
常見問題分析
資源清單
K8S 中資源的概念
- 什麼是資源
- 名稱空間級別的資源
- 集羣級別的資源
資源清單
- yam 語法格式
通過資源清單編寫 Pod
Pod 的生命週期
-
initC
-
Pod phase
-
容器探針
- livenessProbe
- readinessProbe
-
Pod hook
-
重啓策略
Pod 控制器
Pod 控制器說明
-
什麼是控制器
-
控制器類型說明
- ReplicationController 和 ReplicaSet
- Deployment
- DaemonSet
- Job
- CronJob
- StatefulSet
- Horizontal Pod Autoscaling
服務發現
Service 原理
-
Service 含義
-
Service 常見分類
- ClusterIP
- NodePort
- ExternalName
-
Service 實現方式
- userspace
- iptables
- ipvs
Ingress
-
Nginx
- HTTP 代理訪問
- HTTPS 代理訪問
- 使用 cookie 實現會話關聯
- BasicAuth
- Nginx 進行重寫
存儲
configMap
-
定義概念
-
創建 configMap
- 使用目錄創建
- 使用文件創建
- 使用字面值創建
-
Pod 中使用 configMap
- ConfigMap 來替代環境變量
- ConfigMap 設置命令行參數
- 通過數據卷插件使用ConfigMap
-
configMap 熱更新
- 實現演示
- 更新觸發說明
Secret
-
定義概念
- 概念說明
- 分類
-
Service Account
-
Opaque Secret
-
特殊說明
-
創建
-
使用
- Secret 掛載到 Volume
- Secret 導出到環境變量中
-
-
kubernetes.io/dockerconfigjson
volume
-
定義概念
- 卷的類型
-
emptyDir
- 說明
- 用途假設
- 實驗演示
-
hostPath
- 說明
- 用途說明
- 實驗演示
PV
-
概念解釋
- PV
- PVC
- 類型說明
-
PV
- 後端類型
- PV 訪問模式說明
- 回收策略
- 狀態
- 實例演示
-
PVC
- PVC 實踐演示
調度器
調度器概念
- 概念
- 調度過程
- 自定義調度器
調度親和性
-
nodeAffinity
- preferredDuringSchedulingIgnoredDuringExecution
- requiredDuringSchedulingIgnoredDuringExecution
-
podAntiAffinity
- preferredDuringSchedulingIgnoredDuringExecution
- requiredDuringSchedulingIgnoredDuringExecution
-
親和性運算符
污點
-
污點概念
-
Taint
- 組成
- 污點的設置、查看和去除
-
Tolerations
- tolerations 設置演示
固定節點調度
- PodName 指定調度
- 標籤選擇器調度
集羣安全機制
機制說明
認證
- HTTP Token
- HTTP Base
- HTTPS
鑑權
-
AlwaysDeny
-
AlwaysAllow
-
ABAC
-
Webbook
-
RBAC
- RBAC
- Role and ClusterRole
- RoleBinding and ClusterRoleBinding
- Resources
- to Subjects
- 創建一個系統用戶管理 k8s dev 名稱空間:重要實驗
准入控制
HELM
HELM 概念
- HELM 概念說明
- 組將構成
- HELM 部署
- HELM 自定義
HELM 部署實例
-
HELM 部署 dashboard
-
metrics-server
-
HPA 演示
-
資源限制
- Pod
- 名稱空間
-
-
Prometheus
-
EFK
運維
Kubeadm 源碼修改
Kubernetes 高可用構建
組件說明
etcd 的官方將它定位成一個可信賴的分佈式鍵值存儲服務,它能夠爲整個分佈式集羣存儲 一些關鍵數據,協助分佈式集羣的正常運轉
推薦在 Kubernetes 集羣中使用 Etcd v3,v2 版本已在 Kubernetes v1.11 中棄用