注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)云原生Kubernetes自動(dòng)化運(yùn)維實(shí)踐

云原生Kubernetes自動(dòng)化運(yùn)維實(shí)踐

云原生Kubernetes自動(dòng)化運(yùn)維實(shí)踐

定 價(jià):¥99.00

作 者: 高鵬舉
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787302679349 出版時(shí)間: 2025-03-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《云原生Kubernetes自動(dòng)化運(yùn)維實(shí)踐》以一名大型企業(yè)集群運(yùn)維工程師的實(shí)戰(zhàn)經(jīng)驗(yàn)為基礎(chǔ),全面系統(tǒng)地闡述Kubernetes(K8s)在自動(dòng)化運(yùn)維領(lǐng)域的技術(shù)應(yīng)用?!对圃鶮ubernetes自動(dòng)化運(yùn)維實(shí)踐》共16章,內(nèi)容由淺入深,逐步揭示K8s的原理及實(shí)際操作技巧。第1章引領(lǐng)讀者踏入Kubernetes的世界,詳細(xì)介紹其起源、核心組件的概念以及集群安裝方法。第2~4章深入剖析Pod控制器、Label標(biāo)簽、容器鉤子、探針、Service服務(wù)發(fā)現(xiàn)與負(fù)載均衡機(jī)制。第5~7章則探討Ingress-Nginx服務(wù)網(wǎng)關(guān)的應(yīng)用、存儲(chǔ)卷管理、配置和密鑰管理的高級(jí)功能。第8~10章聚焦于鑒權(quán)機(jī)制、容器運(yùn)行時(shí)的選擇與配置,以及GitLab企業(yè)級(jí)代碼倉庫的部署和管理。第11~13章涵蓋Jenkins持續(xù)集成交付工具、ArgoCD聲明式持續(xù)交付,以及云原生負(fù)載均衡MetalLB的應(yīng)用。第14章和第15章分別介紹云原生日志與監(jiān)控集成架構(gòu),以及Istio微服務(wù)時(shí)代的服務(wù)網(wǎng)格領(lǐng)航者。最后,第16章通過一系列實(shí)戰(zhàn)案例,展示在K8s環(huán)境中安裝并實(shí)驗(yàn)多種服務(wù)的詳細(xì)過程?!对圃鶮ubernetes自動(dòng)化運(yùn)維實(shí)踐》不僅整合了多種自動(dòng)化運(yùn)維工具,還提供了豐富的運(yùn)維案例,無論是初學(xué)者還是有一定經(jīng)驗(yàn)的運(yùn)維工程師,都能從中獲得寶貴的知識(shí)和實(shí)踐經(jīng)驗(yàn),提升自身的技術(shù)水平。

作者簡(jiǎn)介

  高鵬舉,現(xiàn)任國(guó)家電網(wǎng)公司高級(jí)運(yùn)維開發(fā)工程師。在Linux相關(guān)技術(shù)領(lǐng)域擁有深厚的造詣,尤其在容器化、虛擬化、自動(dòng)化運(yùn)維、系統(tǒng)監(jiān)控、腳本編寫以及服務(wù)網(wǎng)格等方面具備豐富的實(shí)踐經(jīng)驗(yàn)和深入的研究。憑借其扎實(shí)的技術(shù)功底與廣泛的項(xiàng)目經(jīng)歷,成功主導(dǎo)并實(shí)施了多個(gè)國(guó)有企業(yè)的關(guān)鍵項(xiàng)目。此外,他還活躍于各大技術(shù)社區(qū),累計(jì)發(fā)表了超過2000篇關(guān)于運(yùn)維開發(fā)的高質(zhì)量教程文章,廣受讀者贊譽(yù)。

圖書目錄

第 1 章  走進(jìn)Kubernetes的世界 1
1.1  為什么使用Kubernetes 1
1.2  Kubernetes節(jié)點(diǎn)組件 2
1.2.1  Master節(jié)點(diǎn)運(yùn)行的組件 2
1.2.2  Node節(jié)點(diǎn)運(yùn)行的組件 2
1.3  Kubernetes集群的搭建與配置 3
1.3.1  Kubeadm工具介紹 3
1.3.2  基礎(chǔ)環(huán)境配置 4
1.3.3  升級(jí)內(nèi)核版本 10
1.3.4  三大組件的安裝 12
1.3.5  集群鏡像處理 13
1.3.6  集群初始化 14
1.3.7  Node節(jié)點(diǎn)加入集群 14
1.3.8  Calico網(wǎng)絡(luò)插件安裝 16
1.3.9  Metrics-Server服務(wù)的安裝 17
1.3.10  Kuboard管理平臺(tái)安裝 20
1.4  本章小結(jié) 22
第 2 章  Pod控制器 23
2.1  Pod、Kubectl與YAML 23
2.1.1  Pod及其操作 24
2.1.2  Kubectl命令行工具 25
2.1.3  YAML文件 27
2.2  Replication 28
2.3  ReplicaSet 31
2.4  Deploymant 36
2.4.1  Deployment概述 36
2.4.2  Deployment創(chuàng)建與訪問 36
2.4.3  滾動(dòng)更新策略實(shí)例 38
2.4.4  更新/回滾/暫停/恢復(fù) 41
2.4.5  擴(kuò)容的3種方式 45
2.5  StatefulSet 46
2.5.1  StatefulSet概述 46
2.5.2  StatefulSet創(chuàng)建服務(wù) 47
2.5.3  Ping域名實(shí)驗(yàn) 49
2.5.4  解析域名實(shí)驗(yàn) 50
2.5.5  創(chuàng)建StatefulSet服務(wù)自動(dòng)申請(qǐng)PV實(shí)驗(yàn) 51
2.6  DaemonSet 55
2.6.1  DaemonSet概述 55
2.6.2  DaemonSet實(shí)例 56
2.7  CronJob 57
2.7.1  CronJob概述 57
2.7.2  CronJob資源清單詳解 58
2.7.3  CronJob實(shí)驗(yàn) 59
2.7.4  CronJob實(shí)戰(zhàn)備份MySQL數(shù)據(jù)庫 61
2.8  Job 64
2.8.1  Job概述 64
2.8.2  Job實(shí)驗(yàn) 64
2.9  本章小結(jié) 66
第 3 章  Label、容器鉤子、探針 67
3.1  Label標(biāo)簽 67
3.1.1  Label概述 67
3.1.2  Label實(shí)驗(yàn) 68
3.2  InitC 70
3.2.1  InitC概述 71
3.2.2  InitC實(shí)驗(yàn) 71
3.2.3  部署Elasticsearch服務(wù)時(shí)配置InitC 73
3.3  容器鉤子 75
3.3.1  容器鉤子概述 75
3.3.2  容器鉤子實(shí)驗(yàn) 76
3.4  探針 78
3.4.1  探針概述 78
3.4.2  StartUp Probe啟動(dòng)探針實(shí)驗(yàn) 79
3.4.3  Readiness Probe就緒探針實(shí)驗(yàn) 80
3.4.4  LivenessProbe存活探針實(shí)驗(yàn) 82
3.5  本章小結(jié) 83
第 4 章  Service服務(wù)發(fā)現(xiàn)與負(fù)載均衡 84
4.1  Service原理 84
4.2  ClusterIP 85
4.2.1  ClusterIP概述 85
4.2.2  ClusterIP實(shí)驗(yàn) 86
4.3  NodePort 88
4.3.1  NodePort概述 88
4.3.2  NodePort實(shí)驗(yàn) 89
4.4  Headless Service 91
4.4.1  Headless Service概述 91
4.4.2  Headless Service實(shí)驗(yàn) 92
4.5  ExternalName 94
4.5.1  ExternalName概述 95
4.5.2  ExternalName實(shí)驗(yàn) 95
4.6  LoadBalancer 98
4.6.1  LoadBalancer概述 98
4.6.2  如何指定LoadBalancer類型的服務(wù)IP 98
4.7  Service端口范圍及解除限制 99
4.7.1  Service端口范圍概述 99
4.7.2  Service端口范圍解除限制 99
4.8  使用Service代理K8s外部應(yīng)用 100
4.8.1  使用Service代理K8s外部應(yīng)用概述 101
4.8.2  使用Service代理K8s外部應(yīng)用實(shí)驗(yàn) 101
4.9  本章小結(jié) 103
第 5 章  Ingress-Nginx服務(wù)網(wǎng)關(guān) 104
5.1  Ingress-Nginx概述 104
5.2  Ingress-Nginx安裝 104
5.3  Annotations注解 109
5.3.1  流量復(fù)制 109
5.3.2  IP白名單 110
5.3.3  IP黑名單 111
5.3.4  域名轉(zhuǎn)發(fā) 111
5.3.5  返回字符串 112
5.3.6  文件上傳大小 113
5.3.7  域名HTTPS訪問 113
5.3.8  對(duì)接外部的認(rèn)證服務(wù) 115
5.3.9  配置默認(rèn)頁面 116
5.3.10  Nginx如何獲取客戶端真實(shí)IP 117
5.3.11  重定向 117
5.3.12  重寫 118
5.3.13  多域名指向同一個(gè)后端服務(wù) 118
5.4  本章小結(jié) 119
第 6 章  Kubernetes存儲(chǔ)與持久化 120
6.1  Kubernetes存儲(chǔ)類概述 120
6.2  Kubernetes持久卷聲明 121
6.3  持久卷的生命周期 121
6.4  動(dòng)態(tài)申請(qǐng)持久卷實(shí)驗(yàn) 122
6.4.1  NFS共享存儲(chǔ)搭建 122
6.4.2  nfs-client-provisioner存儲(chǔ)類搭建 124
6.4.3  服務(wù)使用存儲(chǔ)類動(dòng)態(tài)申請(qǐng)資源實(shí)驗(yàn) 129
6.5  PV/PVC詳解 131
6.5.1  PV/PVC概述 131
6.5.2  PVC的創(chuàng)建流程 131
6.5.3  PV訪問模式 132
6.5.4  PV回收策略 132
6.5.5  PV/PVC卷狀態(tài) 133
6.6  Deployment直連NFS存儲(chǔ) 134
6.7  本章小結(jié) 135
第 7 章  ConfigMap配置和Secret密鑰管理 136
7.1  ConfigMap:非敏感配置信息的集中管理 136
7.1.1  ConfigMap概述 136
7.1.2  使用目錄方式創(chuàng)建ConfigMap 137
7.1.3  使用文件方式創(chuàng)建ConfigMap 139
7.1.4  使用字面值方式創(chuàng)建ConfigMap 139
7.1.5  設(shè)置ConfigMap不允許更改 140
7.1.6  通過envfrom方式指定ConfigMap 140
7.1.7  通過valueFrom方式指定ConfigMap 142
7.1.8  Nginx通過ConfigMap管理配置文件 143
7.2  Secret:敏感信息的安全存儲(chǔ)與訪問 147
7.2.1  Secret概述 147
7.2.2  使用文件方式創(chuàng)建Secret 147
7.2.3  使用YAML方式創(chuàng)建Secret 149
7.2.4  Secret權(quán)限解析 149
7.2.5  使用Docker的config.json方式創(chuàng)建Secret 149
7.2.6  使用Kubectl創(chuàng)建Docker Registry認(rèn)證的Secret 150
7.3  本章小結(jié) 151
第 8 章  Kubernetes鑒權(quán)機(jī)制 152
8.1  Kubernetes鑒權(quán)機(jī)制概述 152
8.2  鑒權(quán)機(jī)制的工作流程 152
8.3  角色/角色綁定概述 153
8.4  用戶鑒權(quán)實(shí)戰(zhàn) 154
8.5  本章小結(jié) 160
第 9 章  容器運(yùn)行時(shí)Containerd 161
9.1  Containerd概述 161
9.2  安裝與配置Containerd 162
9.2.1  安裝Containerd 162
9.2.2  配置Containerd阿里云鏡像加速器 164
9.2.3  配置Containerd使用自建鏡像倉庫 164
9.3  使用nerdctl管理Containerd 165
9.3.1  安裝nerdctl 165
9.3.2  nerdctl常用命令示例 166
9.4  使用nerdctl構(gòu)建鏡像 167
9.4.1  安uildKit和cni-plugins 168
9.4.2  構(gòu)建鏡像 169
9.5  本章小結(jié) 170
第 10 章  GitLab企業(yè)級(jí)代碼倉庫 171
10.1  GitLab目錄結(jié)構(gòu) 171
10.2  部署GitLab 172
10.3  GitLab的配置與使用 183
10.3.1  基礎(chǔ)設(shè)置 183
10.3.2  創(chuàng)建項(xiàng)目 184
10.3.3  修改克隆地址 185
10.3.4  拉取/提交代碼 188
10.4  本章小結(jié) 190
第 11 章  Jenkins持續(xù)集成交付工具 191
11.1  Jenkins概述 191
11.2  Kubernetes集群部署Jenkins 192
11.3  Jenkins對(duì)接K8s實(shí)現(xiàn)動(dòng)態(tài)Slave 199
11.3.1  基礎(chǔ)設(shè)置并對(duì)接K8s 199
11.3.2  自由風(fēng)格項(xiàng)目實(shí)現(xiàn)動(dòng)態(tài)Slave 203
11.3.3  Pipeline流水線項(xiàng)目實(shí)現(xiàn)動(dòng)態(tài)Slave 205
11.4  本章小結(jié) 208
第 12 章  ArgoCD聲明式持續(xù)交付 209
12.1  ArgoCD概述 209
12.2  Kubernetes部署ArgoCD 210
12.3  ArgoCD的配置及使用 215
12.3.1  ArgoCD連接Kubernetes 215
12.3.2  使用ArgoCD CLI集成GitLab并創(chuàng)建App 215
12.4  本章小結(jié) 221
第 13 章  云原生負(fù)載均衡之MetalLB 222
13.1  自建LoadBalancer種類 222
13.2  MetalLB的核心概念與架構(gòu) 223
13.2.1  MetalLB的核心概念 224
13.2.2  MetalLB架構(gòu) 224
13.3  Kubernetes部署MetalLB 225
13.3.1  檢查是否開啟IPVS功能 225
13.3.2  配置并創(chuàng)建MetaLB服務(wù) 226
13.3.3  創(chuàng)建LoadBalancer類型的服務(wù) 228
13.3.4  使用MetalLB進(jìn)行服務(wù)的外部訪問 229
13.4  本章小結(jié) 230
第 14 章  Helm與Loki-Stack搭建日志監(jiān)控系統(tǒng) 231
14.1  Helm包管理與部署 231
14.1.1  Helm概述 231
14.1.2  CentOS 7系統(tǒng)安裝Helm3 232
14.2  Loki-Stack部署與實(shí)踐 233
14.2.1  Loki與Loki-Stack概述 233
14.2.2  Helm3部署Loki-Stack 234
14.2.3  外部訪問Grafana 237
14.2.4  日志監(jiān)控查詢 238
14.2.5  導(dǎo)入儀表盤面板 239
14.2.6  監(jiān)控告警 242
14.3  本章小結(jié) 246
第 15 章  Istio微服務(wù)時(shí)代的服務(wù)網(wǎng)格領(lǐng)航者 247
15.1  Istio概述 247
15.2  Istio核心組件 248
15.2.1  Istio-Pilot 248
15.2.2  Istio-Telemetry 248
15.2.3  Istio-Policy 249
15.2.4  Istio-Citadel 249
15.2.5  Istio-Sidecar-Injector 250
15.2.6  Istio-Proxy 250
15.2.7  Istio-Ingress-Gateway 251
15.2.8  Istio-Envoy 251
15.3  部署Istio 251
15.3.1  Istioctl的安裝 251
15.3.2  Istioctl安裝Istio 253
15.4  Sidecar邊車容器注入 256
15.4.1  Sidecar手動(dòng)注入 256
15.4.2  Sidecar自動(dòng)注入 259
15.4.3  Sidecar取消自動(dòng)注入 260
15.5  4種配置資源概念詳解 261
15.5.1  VirtualService 261
15.5.2  DestinationRule 261
15.5.3  ServiceEntry 262
15.5.4  Gateway 262
15.6  VirtualService關(guān)鍵字配置示例 262
15.6.1  使用weight關(guān)鍵字拆分流量 262
15.6.2  使用timeout關(guān)鍵字設(shè)置請(qǐng)求超時(shí)時(shí)間 263
15.6.3  使用retries關(guān)鍵字設(shè)置重試 264
15.6.4  使用fault關(guān)鍵字設(shè)置故障注入 264
15.6.5  VirtualService資源清單詳解 265
15.7  Istio流量治理 265
15.7.1  請(qǐng)求頭httpHeaderName 266
15.7.2  HTTP流量鏡像 269
15.7.3  重寫 274
15.7.4  重定向 277
15.7.5  流量權(quán)重-藍(lán)綠與金絲雀發(fā)布 282
15.7.6  超時(shí) 287
15.7.7  重試 293
15.7.8  斷路器/熔斷 303
15.7.9  故障注入 313
15.8  本章小結(jié) 316
第 16 章  Kubernetes服務(wù)部署實(shí)戰(zhàn) 317
16.1  K8s部署MinIO開源對(duì)象存儲(chǔ) 317
16.2  K8s部署Metabase數(shù)據(jù)庫連接工具 321
16.3  K8s部署phpMyAdmin數(shù)據(jù)庫連接工具 326
16.4  K8s部署Nacos配置中心 330
16.5  本章小結(jié) 338
 

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)