幫助中心 | 我的帳號 | 關於我們

Kubernetes從入門到DevOps企業應用實戰

  • 作者:編者:韓先超|責編:王金柱
  • 出版社:清華大學
  • ISBN:9787302644347
  • 出版日期:2023/09/01
  • 裝幀:平裝
  • 頁數:460
人民幣:RMB 128 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書以實戰為主,內容涵蓋容器技術、Kubernetes核心資源以及基於Kubernetes的企業級實踐。從容器基礎知識開始,由淺入深,闡述Kubernetes各個方面的知識,並提供大量實際項目和應用場景。全書共20章,第1?3章講解容器技術,這是理解Kubernetes的必要基礎,主要介紹容器的定義、創建和管理容器、容器網路和存儲等方面的知識。第4章講解如何使用Kubeadm和二進位文件安裝高可用Kubernetes集群。第5?12章講解Kubernetes的核心資源,包括Pod、Deployment、Service、Ingress等資源的定義、使用和管理方法,以及實際應用場景。第13?20章講解基於Kubernetes的企業實踐,介紹如何使用Kubernetes解決實際問題,包括使用Kubernetes進行應用程序的部署、容器雲平台的構建、流量治理、監控、自動化擴縮容和灰度發布等項目與案例。
    本書基於Kubernetes 1.27新版本編寫(本書的內容也適合1.20之後的所有版本),從零基礎開始,涵蓋理論知識、企業級案例,以及自動化運維DevOps體系和一些大廠架構設計思路,適合雲原生領域的從業者、Kubernetest初學者、運維和開發人員使用,也可以作為企業內訓、培訓機構和大中專院校的教學用書。

作者介紹
編者:韓先超|責編:王金柱
    韓先超     高級運維,Kubernetes架構師,國內最早一批Kubernetes布道者,曾就職於世界500強上市公司,擁有RHCE、RHCA、CKA等認證證書,對於Linux、DevOps、Kubernetes和自動化等領域有著深入的理解和實踐經驗。     在CSDN、51CTO等平台發表過多篇Linux、DevOps、Kubernetes、自動化等方面的文章,累計閱讀量突破100萬;在51CTO平台的Kubernetes課程擁有近200萬學員;推出的Kubernetes課程被選入工信部人才交流中心官方認證課程。     在2021年5月28日由51CTO主辦,中關村數智人工智慧產業聯盟指導的《數啟創新雲觸未來!Web3.0雲響力新一代雲計算大會》中作為主講嘉賓分享Kubernetes如何助力企業轉型,被北京日報和環球網發文專題報道;受Linux基金會邀請,作為主講嘉賓分享Kubernetes在企業中的發展趨勢和具體應用場景;曾為國家電網、振興銀行、中國移動、中國電信,天翼物聯、任子行等大型企業提供Kubernetes技術培訓;還積极參与企業內訓項目,為各大企業提供技術培訓和解決方案支持。

目錄
第1章  Docker初探
  1.1  Docker概述
    1.1.1  Docker是什麼
    1.1.2  Docker的版本
    1.1.3  學習Docker的方式
  1.2  Docker的組成與特點
    1.2.1  Docker的組成
    1.2.2  Docker的特點
  1.3  安裝和配置Docker
    1.3.1  配置主機名
    1.3.2  關閉Firewalld防火牆
    1.3.3  關閉SELinux
    1.3.4  配置時間同步
    1.3.5  編寫計劃任務
    1.3.6  重啟crond服務使計劃任務生效
    1.3.7  安裝基礎軟體包
    1.3.8  安裝Docker-CE
    1.3.9  修改內核參數
    1.3.10  配置Docker鏡像加速器
  1.4  Docker鏡像與容器
    1.4.1  Docker鏡像
    1.4.2  Docker容器
  1.5  案例:通過Docker部署Nginx服務
    1.5.1  基於CentOS鏡像運行一個Docker容器
    1.5.2  查看Docker容器是否正常運行
    1.5.3  在Docker中安裝Nginx容器
    1.5.4  在Docker容器中通過yum安裝Nginx
  1.6  本章小結
第2章  Dockerfile構建企業級鏡像
  2.1  Dockerfile語法詳解
  2.2  Dockerfile構建企業級鏡像
    2.2.1  案例:Dockerfile構建Nginx鏡像
    2.2.2  案例:Dockerfile構建Tomcat鏡像
  2.3  本章小結
第3章  Docker私有鏡像倉庫Harbor
  3.1  Harbor的概念及證書籤發
  3.2  安裝Harbor
  3.3  Harbor圖形界面使用說明
  3.4  測試使用Harbor私有鏡像倉庫
  3.5  Harbor高可用
  3.6  本章小結
第4章  Kubeadm快速搭建Kubernetes集群
  4.1  初始化實驗環境
    4.1.1  配置靜態IP地址
    4.1.2  配置機器主機名
    4.1.3  配置主機hosts文件
    4.1.4  配置控制節點到工作節點無密碼登錄
    4.1.5  關閉交換分區
    4.1.6  修改機器內核參數
    4.1.7  關閉Firewalld防火牆

    4.1.8  關閉SELinux
    4.1.9  配置安裝Docker和Containerd需要的阿里雲的在線yum源
    4.1.10  配置安裝Kubernetes組件需要的阿里雲的在線yum源
    4.1.11  配置時間同步
    4.1.12  安裝Docker-CE和Containerd服務
  4.2  安裝Kubernetes集群
    4.2.1  安裝初始化Kubernetes集群需要的軟體包
    4.2.2  Kubeadm初始化Kubernetes集群
    4.2.3  配置Kubectl的配置文件config
  4.3  擴容Kubernetes集群
    4.3.1  添加第一個工作節點
    4.3.2  添加第二個工作節點
  4.4  安裝Kubernetes網路插件Calico
    4.4.1  安裝Calico
    4.4.2  Calico的配置
    4.4.3  calico-kube-controllers解析
  4.5  測試Kubernetes集群是否健康
    4.5.1  測試在Kubernetes中創建的Pod是否可以正常訪問網路
    4.5.2  測試CoreDNS是否正常
    4.5.3  延長證書
  4.6  本章小結
第5章  Kubernetes核心資源Pod
  5.1  Pod是什麼
    5.1.1  Pod基本介紹
    5.1.2  Pod如何管理多個容器
    5.1.3  Pod網路
    5.1.4  Pod存儲
  5.2  Pod的工作方式
    5.2.1  自主式Pod
    5.2.2  控制器管理的Pod
  5.3  如何創建一個Pod資源
    5.3.1  通過YAML文件創建Pod資源
    5.3.2  Pod資源清單編寫技巧
    5.3.3  創建一個完整的Pod資源
    5.3.4  和Pod相關的命令解讀
  5.4  nodeName和nodeSelector
    5.4.1  nodeName實例
    5.4.2  nodeSelector實例
  5.5  親和性、污點和容忍度
    5.5.1  節點親和性
    5.5.2  Pod親和性和反親和性
    5.5.3  污點和容忍度
  5.6  Pod生命周期和健康探測
    5.6.1  初始化容器initcontainer
    5.6.2  存活探測
    5.6.3  就緒探測
    5.6.4  容器鉤子
  5.7  本章小結
第6章  ReplicaSet和Deployment控制器管理Pod
  6.1  ReplicaSet如何管理Pod

    6.1.1  ReplicaSet概述
    6.1.2  ReplicaSet資源清單文件的編寫技巧
  6.2  ReplicaSet管理Pod案例:部署Guestbook留言板
  6.3  ReplicaSet管理Pod實例:擴容、縮容、更新
  6.4  Deployment如何管理Pod
    6.4.1  Deployment概述
    6.4.2  Deployment如何管理ReplicaSet和Pod
  6.5  Deployment資源清單文件的編寫技巧
    6.5.1  查看Deployment資源對象YAML文件的組成
    6.5.2  查看Deployment下的spec欄位
  6.6  Deployment管理Pod案例解析
  6.7  Deployment管理Pod:擴容和縮容
    6.7.1  電商網站訪問量急增——擴容Pod
    6.7.2  電商網站淡季或業務低峰期——縮容Pod
  6.8  基於Deployment實現Pod滾動更新——WebApp應用版本升級
  6.9  本章小結
第7章  Service四層負載均衡
  7.1  Service的概念與原理
    7.1.1  Service基本介紹
    7.1.2  Kubernetes集群中的3類IP地址
  7.2  創建Service資源
    7.2.1  創建Service資源的方法
    7.2.2  案例:用YAML文件創建Service資源
    7.2.3  查看定義Service資源需要的欄位
    7.2.4  Service的4種Type類型
    7.2.5  Service的埠定義
    7.2.6  創建Service:類型是ClusterIP
    7.2.7  創建Service:類型是NodePort
    7.2.8  創建Service:類型是ExternalName
  7.3  本章小結
第8章  Kubernetes持久化存儲
  8.1  Kubernetes支持的持久化存儲類型
    8.1.1  Kubernetes持久化存儲:emptyDir案例
    8.1.2  Kubernetes持久化存儲:hostPath案例
    8.1.3  Kubernetes持久化存儲:NFS案例
  8.2  Kubernetes持久化存儲:PV和PVC
    8.2.1  PV和PVC概述
    8.2.2  創建Pod,使用PVC作為持久化存儲卷
  8.3  Kubernetes存儲類:StorageClass
  8.4  本章小結
第9章  Kubernetes控制器:StatefulSet
  9.1  StatefulSet控制器的概念和原理
    9.1.1  為什麼使用Headless Service
    9.1.2  為什麼使用volumeClaimTemplate
  9.2  StatefulSet資源清單文件的編寫技巧
    9.2.1  定義API版本和資源類型
    9.2.2  定義StatefulSet的spec欄位
    9.2.3  定義Pod模板
  9.3  StatefulSet使用案例:部署Web站點
    9.3.1  創建存儲類

    9.3.2  創建StatefulSet資源
    9.3.3  查看StatefulSet是否創建成功
    9.3.4  查看StatefulSet管理的Pod
  9.4  StatefulSet管理Pod:擴容、縮容和更新案例
    9.4.1  案例1:擴容
    9.4.2  案例2:縮容
    9.4.3  案例3:更新
  9.5  本章小結
第10章  Kubernetes控制器:DaemonSet
  10.1  DaemonSet如何管理Pod
  10.2  DaemonSet資源創建方法
    10.2.1  DaemonSet資源清單的定義方法
    10.2.2  DaemonSet使用案例:部署日誌收集組件Fluentd
    10.2.3  DaemonSet管理Pod:滾動更新
  10.3  本章小結
第11章  配置管理中心ConfigMap和Secret
  11.1  ConfigMap概述
  11.2  ConfigMap的創建方法
  11.3  案例:使用ConfigMap維護Pod中容器的配置信息
    11.3.1  通過環境變數引入:configMapKeyRef
    11.3.2  通過環境變數引入:使用envfrom
    11.3.3  把ConfigMap做成Volume,掛載到Pod
  11.4  Secret基本介紹及使用案例
  11.5  本章小結
第12章  Ingress和Ingress Controller
  12.1  Ingress和Ingress Controller基本介紹和安裝
    12.1.1  使用Ingress Controller代理Kubernetes內部Pod的流程
    12.1.2  安裝Ingress Controller
  12.2  案例:測試Ingress HTTP代理Tomcat
  12.3  本章小結
第13章  搭建Prometheus+Grafana監控平台
  13.1  Prometheus基本介紹
    13.1.1  Prometheus的特點
    13.1.2  Prometheus生態系統常用組件介紹
    13.1.3  Prometheus採集數據流程
    13.1.4  Prometheus查詢語言PromQL
  13.2  安裝和配置Prometheus
    13.2.1  安裝和配置Prometheus
    13.2.2  監控利器Node-Exporter
  13.3  可視化UI界面Grafana的安裝和配置
    13.3.1  Grafana介紹
    13.3.2  安裝Grafana
    13.3.3  Grafana界面接入Prometheus數據源
  13.4  配置Alertmanager發送告警
    13.4.1  案例:配置Alertmanager發送告警到QQ郵箱
    13.4.2  案例:配置Alertmanager發送告警到釘釘群組
  13.5  本章小結
第14章  基於Jenkins+Kubernetes構建企業級DevOps容器雲平台
  14.1  Kubernetes助力DevOps企業落地實踐
    14.1.1  DevOps的基本概念

    14.1.2  Kubernetes在DevOps中的核心作用
    14.1.3  在Kubernetes集群安裝和配置Jenkins
    14.1.4  案例:使用Jenkins將代碼自動化部署到Kubernetes集群
  14.2  Jenkins Pipeline語法介紹
    14.2.1  Jenkins Pipeline介紹
    14.2.2  為什麼用Jenkins Pipeline
    14.2.3  Jenkins Pipeline聲明式語法
    14.2.4  Jenkins Pipeline腳本式語法
  14.3  本章小結
第15章  新一代服務網格Istio結合Kubernetes實現流量治理
  15.1  認識Istio服務網格
    15.1.1  Istio服務網格概述
    15.1.2  Istio的核心特性
    15.1.3  Istio的架構與功能
  15.2  Istio組件詳解
    15.2.1  Pilot
    15.2.2  Envoy
    15.2.3  Citadel
    15.2.4  Galley
    15.2.5  其他組件
  15.3  在Kubernetes平台安裝Istio
    15.3.1  準備安裝Istio的壓縮包
    15.3.2  安裝Istio
  15.4  案例:Istio結合Kubernetes部署在線書店Bookinfo
    15.4.1  在線書店(Bookinfo)項目介紹
    15.4.2  在線書店的部署
    15.4.3  啟動應用服務
    15.4.4  卸載Bookinfo服務
  15.5  通過Istio實現灰度發布
    15.5.1  什麼是灰度發布
    15.5.2  使用Istio進行金絲雀發布
  15.6  Istio流量治理實例
    15.6.1  斷路器
    15.6.2  超時
    15.6.3  故障注入和重試
  15.7  分散式追蹤系統Jaeger
  15.8  分散式追蹤系統Kiali
  15.9  本章小結
第16章  高併發場景下基於Kubernetes實現自動擴縮容
  16.1  Metrics Server在自動擴縮容中的核心作用
    16.1.1  Metrics Server的部署方式
    16.1.2  Metrics Server的具體應用
  16.2  水平Pod自動擴縮容HPA
    16.2.1  HPA基本介紹
    16.2.2  HPA設置和使用案例
  16.3  垂直Pod自動擴縮容VPA
    16.3.1  VPA基本介紹
    16.3.2  VPA設置和使用案例
  16.4  本章小結
第17章  基於Kubernetes搭建高吞吐量的日誌收集平台

  17.1  常見的日誌收集方案對比分析
  17.2  EFK案例分享——組件部署
    17.2.1  步驟一:部署Elasticsearch
    17.2.2  步驟二:部署Fluentd服務
    17.2.3  步驟三:部署Kibana服務
    17.2.4  步驟四:驗證
  17.3  ELK案例分享——步驟說明
    17.3.1  創建命名空間
    17.3.2  創建持久卷和持久卷聲明
    17.3.3  創建Elasticsearch集群
    17.3.4  創建Logstash集群
    17.3.5  創建Kibana
  17.4  EFK+Logstash+Kafka案例分享
    17.4.1  安裝和配置Fluentd
    17.4.2  創建Fluentd配置文件
    17.4.3  安裝和配置Kafka和Logstash
    17.4.4  安裝和配置Elasticsearch和Kibana
    17.4.5  測試EFK日誌收集系統
  17.5  本章小結
第18章  在Kubernetes集群部署代碼和服務
  18.1  在Kubernetes集群部署Go代碼
  18.2  在Kubernetes集群部署Python代碼
  18.3  在Kubernetes集群部署Nginx服務
    18.3.1  步驟一:編寫Nginx部署所需的Deployment和Service資源定義文件
    18.3.2  步驟二:在Kubernetes集群上部署Nginx服務
  18.4  在Kubernetes集群部署Tomcat服務
    18.4.1  步驟一:創建命名空間
    18.4.2  步驟二:部署Tomcat服務
  18.5  本章小結
第19章  K3s實際應用場景及案例分享
  19.1  K3s應用領域
    19.1.1  邊緣計算
    19.1.2  嵌入式設備
    19.1.3  雲原生領域
    19.1.4  多雲管理
  19.2  K3s實戰案例分享
  19.3  安裝和使用K3s
    19.3.1  安裝K3s
    19.3.2  使用K3s
  19.4  本章小結
第20章  Kubernetes原生的CI/CD工具Tekton
  20.1  Tekton基本介紹和案例演示
    20.1.1  Tekton概述
    20.1.2  使用Tekton構建和測試應用程序
  20.2  使用Tekton構建CI/CD流水線最佳實踐
    20.2.1  創建應用程序代碼
    20.2.2  創建Docker鏡像
    20.2.3  創建Tekton資源
    20.2.4  執行CI/CD流程
  20.3  本章小結

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032