Kubernetes從入門到實踐

Kubernetes從入門到實踐

《Kubernetes從入門到實踐》是2020年人民郵電出版社出版的圖書,作者是趙卓。

基本介紹

  • 中文名:Kubernetes從入門到實踐
  • 作者:趙卓
  • 出版時間:2020年6月1日
  • 出版社:人民郵電出版社
  • ISBN:9787115534712
內容簡介,作者簡介,圖書目錄,

內容簡介

本書共11章,由淺入深地介紹了Kubernetes的相關技術。主要內容包括容器的發展史,Kubernetes的核心概念,Kubernetes的安裝與部署,Kubernetes的基本單位Pod,Kubernetes中的各種控制器,Kubernetes發布服務的方式,Kubernetes中的存儲卷與用法,Kubernetes中的幾種實用擴展,Kubernetes管理資源的方式與Pod的調度原理,API Server的基本使用方式及身份認證與授權方式等。
本書適合開發人員、運維人員、測試人員閱讀,同時也適合對Kubernetes或容器技術感興趣的讀者閱讀。

作者簡介

趙卓,新蛋科技有限公司電子商務研發團隊項目經理,從事過多年測試工作和開發工作,精通各類開發和測試技術。編寫過的圖書有《Selenium自動化測試指南》,翻譯過的圖書有《精通Selenium WebDriver 3.0 (第2版)》《Visual Studio 2010軟體測試指南》和《快速編碼:高效使用Microsoft Visual Studio》。

圖書目錄

第 一部分 基礎知識
第 1章 容器的發展史 3
1.1 開發過程的發展 3
1.1.1 瀑布式開發 3
1.1.2 敏捷式開發 4
1.1.3 DevOps 5
1.2 套用架構的發展 6
1.2.1 單體架構與多層架構 6
1.2.2 微服務架構 7
1.3 部署/打包的發展 9
1.3.1 物理機和虛擬機 9
1.3.2 容器 10
1.3.3 容器的舵手—Kubernetes 11
第 2章 Kubernetes的核心概念 12
2.1 Kubernetes的設計架構 12
2.1.1 Master 13
2.1.2 Node 15
2.1.3 組件間的基本互動流程 16
2.2 Kubernetes的核心對象 17
2.2.1 Pod 17
2.2.2 控制器 18
2.2.3 服務與存儲 20
2.2.4 資源劃分 22
2.3 本章小結 23
第二部分 套用
第3章 Kubernetes的安裝與部署 27
3.1 Master與Node都要安裝的
基礎組件 28
3.1.1 在Debian、Ubuntu系統上安裝
基礎組件 28
3.1.2 在CentOS以及RHEL和Fedora
系統上安裝基礎組件 28
3.2 Master的安裝與配置 29
3.2.1 如何解決CPU數量
不夠的問題 29
3.2.2 如何解決不支持交換
記憶體的問題 29
3.2.3 如何解決網路連線
錯誤的問題 30
3.3 Node的安裝與配置 32
3.4 本章小結 36
第4章 Pod—Kubernetes的基本單位 37
4.1 Pod的基本操作 37
4.1.1 創建Pod 37
4.1.2 查詢Pod 38
4.1.3 修改Pod 40
4.1.4 刪除Pod 41
4.2 Pod模板詳解 41
4.3 Pod與容器 45
4.3.1 Pod創建容器的方式 45
4.3.2 Pod組織容器的方式 50
4.4 Pod的生命周期 55
4.4.1 Pod的相位 55
4.4.2 Pod的重啟策略 56
4.4.3 Pod的創建與銷毀過程 57
4.4.4 Pod的生命周期事件 58
4.5 Pod的健康檢查 63
4.6 本章小結 68
第5章 控制器—Pod的管理 70
5.1 Deployment控制器 70
5.1.1 Deployment控制器的
基本操作 71
5.1.2 Deployment控制器的模板 75
5.1.3 Deployment控制器的伸縮 76
5.1.4 Deployment控制器的更新 77
5.1.5 Deployment控制器的回滾 84
5.2 DaemonSet控制器 85
5.2.1 DaemonSet控制器的基本操作 86
5.2.2 DaemonSet控制器的更新 88
5.3 Job與CronJob控制器 90
5.3.1 Job控制器的基本操作 90
5.3.2 Job的異常處理 95
5.3.3 CronJob控制器的基本操作 98
5.4 其他控制器 101
5.5 本章小結 102
第6章 Service和Ingress—
發布Pod提供的服務 103
6.1 Service 103
6.1.1 向外發布—通過
ClusterIP發布 107
6.1.2 向外發布—通過
NodePort發布 110
6.1.3 向外發布—通過
LoadBalancer發布 112
6.1.4 向內發布—通過
無頭Service 115
6.1.5 向內發布—通過
ExternalName 117
6.1.6 服務發現 119
6.1.7 其他配置方式 121
6.2 Ingress 124
6.2.1 Ingress控制器的安裝 126
6.2.2 Ingress的基本操作 127
6.3 本章小結 137
第7章 存儲與配置 138
7.1 本地存儲卷 138
7.1.1 emptyDir 139
7.1.2 hostPath 140
7.2 網路存儲卷 142
7.2.1 安裝NFS 142
7.2.2 使用NFS 144
7.3 持久存儲卷 146
7.3.1 PV與PVC 147
7.3.2 StorageClass 154
7.4 StatefulSet控制器 159
7.4.1 StatefulSet控制器的
基本操作 161
7.4.2 PVC及PV的使用 163
7.4.3 無頭Service的訪問 165
7.4.4 Pod的重建 167
7.4.5 StatefulSet控制器的
伸縮與更新 168
7.5 配置存儲卷 168
7.5.1 ConfigMap 169
7.5.2 Secret 174
7.5.3 Downward API 181
7.6 本章小結 184
第8章 Kubernetes資源的管理及調度 186
8.1 資源調度—為Pod設定
計算資源 186
8.2 資源管理—命名空間 190
8.2.1 命名空間的基本操作 190
8.2.2 命名空間的資源配額 193
8.2.3 命名空間中單個資源的
限額範圍 197
8.3 資源管理—標籤、
選擇器及註解 202
8.3.1 標籤 202
8.3.2 選擇器 204
8.3.3 註解 207
8.4 資源調度—Pod調度
策略詳解 208
8.4.1 調度過程 208
8.4.2 節點選擇調度 211
8.4.3 節點親和性調度 212
8.4.4 Pod親和性與反親和性調度 215
8.4.5 污點與容忍度 219
8.4.6 優先權與搶占式調度 222
8.5 本章小結 224
第三部分 進階
第9章 API Server 227
9.1 API Server的基本操作 227
9.1.1 寫操作 228
9.1.2 讀操作 234
9.1.3 獨有操作 237
9.1.4 狀態操作 241
9.2 API Server的身份認證、授權、
準入控制 245
9.2.1 身份認證 246
9.2.2 RBAC授權 253
9.3 本章小結 260
第 10章 Kubernetes的擴展 261
10.1 可視化管理—
Kubernetes Dashboard 261
10.1.1 安裝Kubernetes Dashboard 261
10.1.2 使用Kubernetes Dashboard 264
10.2 資源監控—Prometheus與
Grafana 269
10.2.1 安裝與配置Prometheus 269
10.2.2 安裝與配置Grafana 270
10.3 日誌管理—ElasticSearch、
Fluentd、Kibana 275
10.4 本章小結 277
第四部分 實踐
第 11章 項目部署案例 281
11.1 無狀態項目的部署案例 281
11.2 有狀態項目的部署案例 287
11.3 使用Helm部署項目 292
11.3.1 Helm簡介 293
11.3.2 Helm的安裝 294
11.3.3 Helm Chart的基本操作 296
11.3.4 將Chart打包到
Chart倉庫中 306
11.3.5 發布版本的更新、
回滾和刪除 308
11.3.6 使用Helm部署的項目案例 310
11.4 本章小結 313

相關詞條

熱門詞條

聯絡我們