《容器雲運維實戰——Docker與Kubernetes集群》是2019年02月出版的書籍,作譯者是黃靖鈞,馮立燦。
書籍信息,內容簡介,圖書目錄,
書籍信息
作譯者:黃靖鈞,馮立燦
出版時間:2019-02千 字 數:818版次:01-01頁 數:384
開本:16開裝幀:I S B N :9787121339066
換版:
紙質書定價:¥89.0
內容簡介
本書圍繞當前容器雲運維的主流框架:Docker、Kubernetes詳細介紹了容器雲運維的實戰技巧,在內容上分為三大部分:第一部分(第1~2章)介紹了在Linux系統中傳統伺服器運維的基礎知識以及集群管理工具;第二部分(第3~7章)講解了以Docker為主的容器引擎的基本知識與原理,並介紹了容器技術在DevOps中的實際套用場景;第三部分(第8~9章)詳細講解了基於Kubernetes的容器雲集群運維技巧。全書幾乎囊括了容器雲主流的運維開發生態,詳細講解了基於容器雲的集群運維解決方案。本書適合容器雲初學者,也適合那些對Docker有一定了解,但對容器雲的運維方式不甚了解的讀者。
圖書目錄
第1章 Linux 運維基礎 1
1.1 Linux基礎 2
1.1.1 systemd 2
1.1.2 Shell腳本 6
1.2 自動化運維 14
1.2.1 自動化運維之Ansible 14
1.2.2 Ansible的使用 16
1.2.3 Ansible模組 23
1.2.4 playbook 27
1.3 本章小結 38
第2章 高可用的Linux集群 39
2.1 高可用集群基礎 40
2.1.1 高可用衡量標準 40
2.1.2 高可用層次結構 40
2.1.3 常見的高可用方案 41
2.2 虛擬服務的實現 44
2.2.1 DNS輪詢 44
2.2.2 客戶端調度 45
2.2.3 套用層負載調度 46
2.2.4 IP層負載調度 46
2.3 LVS負載均衡 46
2.3.1 LVS體系結構 47
2.3.2 IP負載均衡 48
2.3.3 負載調度算法 54
2.3.4 ipvsadm工具詳解 56
2.3.5 LVS集群實踐 58
2.4 Nginx負載均衡 63
2.4.1 Nginx配置檔案詳解 63
2.4.2 Nginx負載均衡模組 68
2.5 本章小結 75
第3章 Docker容器引擎 76
3.1 容器技術 77
3.1.1 虛擬化技術 77
3.1.2 容器技術與Docker 79
3.1.3 容器技術原理 84
3.2 Docker基礎 89
3.2.1 Docker架構 89
3.2.2 Docker安裝 91
3.2.3 Docker命令 96
3.3 Docker鏡像 97
3.3.1 認識鏡像 97
3.3.2 鏡像操作 99
3.3.3 Dockerfile詳解 103
3.3.4 鏡像倉庫 118
3.4 Docker容器 121
3.4.1 認識容器 121
3.4.2 容器操作 123
3.4.3 數據卷 134
3.5 外掛程式與存儲驅動 138
3.5.1 Docker外掛程式 138
3.5.2 存儲驅動 139
3.6 容器與作業系統 140
3.6.1 為容器而打造:Container Linux(CoreOS) 140
3.6.2 定製化容器系統:RancherOS 142
3.7 本章小結 143
第4章 容器網路 144
4.1 Docker網路基礎 145
4.1.1 連線埠映射 145
4.1.2 連線埠暴露 146
4.1.3 容器互聯 147
4.2 Docker網路模式 152
4.2.1 none模式 152
4.2.2 container模式 154
4.2.3 host模式 155
4.2.4 bridge模式 156
4.2.5 overlay模式 157
4.3 Docker網路配置 158
4.3.1 Daemon網路參數 158
4.3.2 配置DNS 159
4.4 本章小結 159
第5章 容器編排 160
5.1 安裝Docker Compose 161
5.1.1 二進制安裝 161
5.1.2 使用Python pip安裝 161
5.2 Compose命令基礎 162
5.2.1 指定配置檔案 162
5.2.2 指定項目名稱 163
5.2.3 Compose環境變數 163
5.2.4 build:構建服務鏡像 164
5.2.5 bundle:生成DAB包 165
5.2.6 config:檢查配置語法 165
5.2.7 create:創建服務容器 166
5.2.8 down:清理項目 167
5.2.9 events:查看事件 168
5.2.10 exec:進入服務容器 168
5.2.11 kill:殺死服務容器 169
5.2.12 logs:查看服務容器日誌 169
5.2.13 pause:暫停服務容器 170
5.2.14 port:查看服務容器連線埠狀態 170
5.2.15 ps/images:查看容器與鏡像 171
5.2.16 pull:拉取項目鏡像 172
5.2.17 push:推送項目鏡像 172
5.2.18 restart:重啟服務容器 173
5.2.19 rm:刪除項目容器 173
5.2.20 run:執行一次性命令 174
5.2.21 scale:設定服務容器數量 177
5.2.22 start:啟動服務容器 178
5.2.23 stop:停止服務容器 178
5.2.24 top:查看進程狀態 178
5.2.25 unpause:取消暫停 179
5.2.26 up:啟動項目 179
5.3 Compose配置檔案 183
5.3.1 配置檔案基礎 183
5.3.2 基本配置 184
5.3.3 網路配置 199
5.3.4 配置擴展 200
5.4 Compose實戰 204
5.4.1 WordPress部落格部署 204
5.4.2 Django框架部署 205
5.5 本章小結 207
第6章 Docker集群管理 208
6.1 Swarm 基礎 209
6.1.1 Docker Swarm 命令 209
6.1.2 Docker Node 命令 211
6.1.3 Docker Stack 命令 213
6.1.4 Docker集群網路 214
6.2 集群進階 223
6.2.1 Swarm:高可用的Docker集群管理工具 223
6.2.2 Shipyard:集群管理面板 225
6.2.3 Portainer:容器管理面板 227
6.3 本章小結 229
第7章 Docker生態 230
7.1 宿主管理工具:Machine 231
7.1.1 Machine的安裝 231
7.1.2 宿主環境管理 231
7.2 容器編排調度 233
7.2.1 Rancher:集群管理面板 233
7.2.2 Nomad:行業領先的調度系統 235
7.2.3 DC/OS:一切皆可調度 237
7.2.4 服務發現 238
7.3 私有鏡像倉庫 239
7.3.1 私有倉庫的部署 239
7.3.2 VMware Harbor:企業私有
倉庫 250
7.3.3 SUSE Portus:鏡像倉庫前端
分布認證 254
7.4 Docker外掛程式 256
7.4.1 授權外掛程式 256
7.4.2 Flocker存儲外掛程式 257
7.4.3 網路驅動外掛程式 257
7.5 Docker安全 259
7.5.1 Docker安全機制 259
7.5.2 Docker資源控制 261
7.5.3 Docker安全工具 264
7.6 監控與日誌 265
7.6.1 cAdvisor:原生集群監控 265
7.6.2 Logspout:日誌處理 266
7.6.3 Grafana:數據可視化 267
7.6.4 其他監控工具 269
7.7 基於Docker的PaaS平台 270
7.7.1 Deis:輕量級PaaS平台 270
7.7.2 Tsuru:可擴展PaaS平台 270
7.7.3 Flynn:模組化PaaS平台 271
7.8 Docker持續集成 271
7.8.1 Drone:輕量級CI工具 271
7.8.2 Travis CI:著名的CI/CD
服務商 273
7.9 其他 274
7.10 本章小結 276
第8章 Kubernetes入門 277
8.1 Kubernetes介紹 278
8.1.1 什麼是Kubernetes 278
8.1.2 Kubernetes架構 278
8.1.3 Kubernetes的優勢 280
8.2 Kubernetes概念 281
8.2.1 Kubernetes資源 281
8.2.2 調度中心:Master 281
8.2.3 工作節點:Node 281
8.2.4 最小調度單位:Pod 283
8.2.5 資源標籤:Label 284
8.2.6 彈性伸縮:RC與RS 286
8.2.7 部署對象:Deployment 287
8.2.8 水平擴展:HPA 288
8.2.9 服務對象:Service 290
8.2.10 數據卷資源:Volume 293
8.2.11 數據持久化:Persistent
Volume 299
8.2.12 命名空間:Namespace 304
8.2.13 注釋:Annotation 304
8.3 Kubernetes部署 305
8.3.1 使用Minikube安裝Kubernetes 305
8.3.2 使用Kubeadm安裝Kubernetes 307
8.4 Kubernetes命令行詳解 309
8.4.1 基本命令(初級) 310
8.4.2 基本命令(中級) 318
8.4.3 部署命令 320
8.4.4 集群管理命令 323
8.4.5 故障排除與調試命令 326
8.4.6 高級命令 329
8.4.7 設定命令 330
8.4.8 其他命令 332
8.4.9 kubectl全局選項 334
8.5 本章小結 335
第9章 Kubernetes運維實踐 336
9.1 Pod詳解 337
9.1.1 Pod配置詳解 337
9.1.2 Pod生命周期 340
9.1.3 共享Volume 343
9.1.4 Pod配置管理 343
9.1.5 Pod健康檢查 346
9.1.6 Pod擴容和縮容 348
9.2 Service詳解 349
9.2.1 Service的定義 349
9.2.2 Service的創建 350
9.2.3 集群外部訪問 351
9.2.4 Ingress負載網路 353
9.3 集群進階 355
9.3.1 資源管理 355
9.3.2 kubelet垃圾回收機制 359
9.4 監控與日誌 359
9.4.1 原生監控:Heapster 359
9.4.2 星火燎原:Prometheus 360
9.4.3 王牌組合:EFK 366
9.4.4 後起之秀:Filebeat 374
9.5 本章小結 376