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

精通Kubernetes

  • 作者:(美)吉吉·塞凡|責編:陳聰聰|譯者:任瑾睿//胡久林
  • 出版社:人民郵電
  • ISBN:9787115536112
  • 出版日期:2020/07/01
  • 裝幀:平裝
  • 頁數:319
人民幣:RMB 89 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書通過理論與實踐相結合,全方位地介紹Kubernetes這一容器編排的理想工具。本書共14章,涉及的主題包括理解Kubernetes架構,創建Kubernetes集群,監控、日誌記錄和故障排除,高可用性和可靠性,配置Kubernetes安全、限制和賬戶,使用關鍵Kubernetes資源,管理Kubernetes存儲,使用Kubernetes運行有狀態應用程序,滾動更新、可伸縮性和配額,高級Kubernetes網路,在雲平台和集群聯邦中運行Kubernetes,自定義Kubernetes API和插件,操作Kubernetes軟體包管理器以及Kubernetes的未來。本書綜合考慮不同環境和用例,使讀者了解如何創建大型系統並將其部署在Kubernetes上。在各章節主題中,讀者提供了豐富的實踐案例分析,娓娓道來,引人入勝。
    本書可以作為Kubernetes的實踐參考手冊,聚焦于設計和管理Kubernetes集群,為開發人員、運維工程師詳細介紹了Kubernetes所提供的功能和服務。

作者介紹
(美)吉吉·塞凡|責編:陳聰聰|譯者:任瑾睿//胡久林
    吉吉·塞凡(Gigi Sayfan)是Helix的軟體架構師,Helix是一家生物信息學和基因組學的創業公司。他已有20多年的軟體開發經驗,涉及即時通信、變形、晶元製造過程式控制制、遊戲控制台嵌入式多媒體應用、腦啟發機器學習、定製瀏覽器開發、3D分散式遊戲平台的Web服務以及物聯網感測器和虛擬現實等多個領域。     他使用多種編程語言在多種操作系統中編寫代碼,編程語言諸如Go、Python、C、C++、C#、Java、Delphi、JavaScript,甚至Cobol和PowerBuilder;操作系統包括Windows (3.11?7)、Linux、macOS、嵌入式Lynx;另外,還有Sony PlayStation遊戲機等。他的技術專長包括資料庫、底層網路、分散式系統、非正統的用戶界面和一般軟體開發生命周期。

目錄
第1章  理解Kubernetes架構
  1.1  理解容器編排
    1.1.1  物理機、虛擬機和容器
    1.1.2  雲端容器
    1.1.3  伺服器運行模式
  1.2  Kubernetes的相關概念
    1.2.1  集群
    1.2.2  節點
    1.2.3  主節點
    1.2.4  Pod
    1.2.5  標籤
    1.2.6  註解
    1.2.7  標籤選擇器
    1.2.8  副本控制器和副本集
    1.2.9  服務
    1.2.10  存儲卷
    1.2.11  有狀態服務集
    1.2.12  密鑰對象
    1.2.13  名稱
    1.2.14  命名空間
  1.3  深入了解Kubernetes架構
  1.4  Kubernetes API
    1.4.1  Kubernetes API
    1.4.2  自動伸縮 API
  1.5  Kubernetes組件
    1.5.1  主組件
    1.5.2  節點組件
  1.6  Kubernetes運行時
    1.6.1  運行時介面
    1.6.2  Docker
    1.6.3  Rkt
    1.6.4  Hyper Container
  1.7  持續集成與部署
    1.7.1  CI/CD流水線
    1.7.2  為Kubernetes設計CI/CD流水線
  1.8  總結
第2章  創建Kubernetes集群
  2.1  用Minikube快速創建單節點集群
    2.1.1  準備工作
    2.1.2  創建集群
    2.1.3  故障排除
    2.1.4  檢查集群
    2.1.5  部署服務
    2.1.6  用儀錶板檢查集群
  2.2  用Kubeadm創建多節點集群
    2.2.1  準備工作
    2.2.2  組建Vagrant虛擬機集群
    2.2.3  安裝所需軟體
    2.2.4  創建集群
    2.2.5  建立Pod網路

    2.2.6  添加工作節點
  2.3  在GCP、AWS和Azure雲端創建集群
    2.3.1  雲提供商介面
    2.3.2  GCP
    2.3.3  AWS
    2.3.4  Azure
  2.4  從頭開始創建裸金屬集群
    2.4.1  裸金屬用例
    2.4.2  什麼時候應該考慮創建裸金屬集群
  2.5  進程
  2.6  使用虛擬私有雲基礎設施
  2.7  總結
第3章  監控、日誌記錄和故障排除
  3.1  用Heapster監控Kubernetes
  3.2  InfluxDB後端
    3.2.1  存儲模式
    3.2.2  Grafana可視化
  3.3  儀錶板的性能分析
    3.3.1  頂視圖
    3.3.2  添加中央日誌
  3.4  檢測節點問題
    3.4.1  節點問題檢測器
    3.4.2  DaemonSet
    3.4.3  節點問題檢測DaemonSet
  3.5  故障排除方案
  3.6  設計健壯的系統
    3.6.1  硬體故障
    3.6.2  配額、份額和限制
    3.6.3  Bad Configuration
    3.6.4  成本和性能
  3.7  總結
第4章  高可用性和可靠性
  4.1  高可用性概念
    4.1.1  冗余
    4.1.2  熱交換
    4.1.3  領導選舉
    4.1.4  智能負載均衡
    4.1.5  冪等
    4.1.6  自愈
  4.2  高可用性最佳實踐
    4.2.1  創建高可用性集群
    4.2.2  確保節點可靠
    4.2.3  保護集群狀態
    4.2.4  保護數據
    4.2.5  運行冗余API伺服器
    4.2.6  用Kubernetes運行領導選舉
    4.2.7  使預演環境高度可用
    4.2.8  測試高可用性
  4.3  集群在線升級
    4.3.1  滾動升級

    4.3.2  藍綠升級
    4.3.3  管理數據契約變更
    4.3.4  數據遷移
    4.3.5  檢測過期API
  4.4  大型集群的性能、成本和設計權衡
    4.4.1  可用性要求
    4.4.2  儘力而為
    4.4.3  維護窗口
    4.4.4  快速恢復
    4.4.5  零停機時間
    4.4.6  性能和數據的一致性
  4.5  總結
第5章  配置Kubernetes安全、限制和賬戶
  5.1  理解Kubernetes安全挑戰
    5.1.1  節點挑戰
    5.1.2  網路挑戰
    5.1.3  鏡像挑戰
    5.1.4  配置和部署挑戰
    5.1.5  Pod和容器挑戰
    5.1.6  組織、文化和過程挑戰
  5.2  加固Kubernetes
    5.2.1  理解Kubernetes的服務賬戶
    5.2.2  訪問API伺服器
    5.2.3  保護Pod
    5.2.4  管理網路策略
    5.2.5  使用密鑰對象
  5.3  運行多用戶集群
    5.3.1  多用戶集群的案例
    5.3.2  安全多租戶使用命名空間
    5.3.3  避免命名空間陷阱
  5.4  總結
第6章  使用關鍵Kubernetes資源
  6.1  設計Hue平台
    6.1.1  定義Hue的範圍
    6.1.2  規劃工作流
  6.2  利用Kubernetes構建Hue平台
    6.2.1  有效使用kubectl
    6.2.2  理解kubectl資源配置文件
    6.2.3  在Pod中部署長時間運行的微服務
  6.3  內外部服務分離
    6.3.1  部署內部服務
    6.3.2  創建Hue-reminders服務
    6.3.3  從外部公開服務
  6.4  使用命名空間限制訪問
  6.5  啟動Job
    6.5.1  並行運行作業
    6.5.2  清理已完成的作業
    6.5.3  調度計劃作業
  6.6  kubectl獲得Pod
  6.7  混合非集群組件

    6.7.1  集群網路外部組件
    6.7.2  集群網路內部組件
    6.7.3  用Kubernetes管理Hue平台
    6.7.4  使用就緒探針管理依賴
  6.8  為有序啟動Pod採用初始容器
  6.9  用Kubernetes進化Hue平台
    6.9.1  Hue在企業中的運用
    6.9.2  用Hue推進科學
    6.9.3  用Hue實施教育
  6.10  總結
第7章  管理Kubernetes存儲
  7.1  持久存儲卷指導
    7.1.1  存儲卷
    7.1.2  創建持久存儲卷
    7.1.3  持續存儲卷聲明
    7.1.4  按使用存儲卷掛載聲明
    7.1.5  存儲類
    7.1.6  從端到端演示持久存儲卷
  7.2  公共存儲卷類型——GCE、AWS和Azure
    7.2.1  AWS彈性塊存儲(EBS)
    7.2.2  AWS彈性文件系統(EFS)
    7.2.3  GCE持久化磁碟
    7.2.4  Azure數據盤
    7.2.5  Azure文件存儲
  7.3  Kubernetes中的GlusterFS和Ceph存儲卷
    7.3.1  使用GlusterFS
    7.3.2  使用Ceph
  7.4  Flocker作為集群容器數據存儲卷管理器
  7.5  將企業存儲集成到Kubernetes
  7.6  總結
第8章  使用Kubernetes運行有狀態的應用程序
  8.1  Kubernetes中的有狀態與無狀態應用
    8.1.1  理解分散式數據密集型應用的本質
    8.1.2  為什麼在Kubernetes中管理狀態
    8.1.3  為什麼在Kubernetes以外管理狀態
  8.2  共享環境變數與DNS記錄
    8.2.1  通過DNS訪問外部數據存儲
    8.2.2  通過環境變數訪問外部數據存儲
    8.2.3  使用冗余內存狀態
    8.2.4  使用DaemonSet進行冗余持久存儲
    8.2.5  應用持久存儲卷聲明
    8.2.6  利用有狀態服務集
  8.3  在Kubernetes運行Cassandra集群
    8.3.1  Cassandra快速入門
    8.3.2  Cassandra Docker鏡像
    8.3.3  連接Kubernetes和Cassandra
    8.3.4  創建Cassandra無源服務
    8.3.5  使用有狀態服務集創建Cassandra集群
    8.3.6  使用副本控制器分佈Cassandra
    8.3.7  利用DaemonSet分佈Cassandra

  8.4  總結
第9章  滾動更新、可伸縮性和配額
  9.1  水平Pod自動伸縮
    9.1.1  聲明水平Pod自動伸縮器
    9.1.2  自定義度量
    9.1.3  使用Kubectl自動伸縮
  9.2  用自動伸縮進行滾動更新
  9.3  用限制和配額處理稀缺資源
    9.3.1  啟用資源配額
    9.3.2  資源配額類型
    9.3.3  配額範圍
    9.3.4  請求與限制
    9.3.5  使用配額
  9.4  選擇與管理集群性能
    9.4.1  選擇節點類型
    9.4.2  選擇存儲解決方案
    9.4.3  交易成本與響應時間
    9.4.4  有效使用多節點配置
    9.4.5  利用彈性雲資源
    9.4.6  考慮Hyper.sh
  9.5  挑戰Kubernetes性能極限
    9.5.1  提高Kubernetes的性能和可擴展性
    9.5.2  測量Kubernetes的性能和可伸縮性
    9.5.3  按規模測試Kubernetes
  9.6  總結
第10章  高級Kubernetes網路
  10.1  理解Kubernetes網路模型
    10.1.1  容器內通信(容器-容器)
    10.1.2  Pod間通信(Pod-Pod)
    10.1.3  Pod-服務通信
    10.1.4  外部訪問
    10.1.5  Kubernetes網路與Docker網路
    10.1.6  查找與發現
    10.1.7  Kubernetes網路插件
  10.2  Kubernetes網路解決方案
    10.2.1  裸金屬集群橋接
    10.2.2  Contiv
    10.2.3  Open vSwitch
    10.2.4  Nuage網路VCS
    10.2.5  Canal
    10.2.6  Flannel
    10.2.7  Calico工程
    10.2.8  Romana
    10.2.9  Weave Net
  10.3  有效使用網路策略
  10.4  負載均衡選項
    10.4.1  外部負載均衡器
    10.4.2  服務負載均衡器
    10.4.3  入口
  10.5  編寫自己的CNI插件

  10.6  總結
第11章  在雲平台和集群聯邦中運行Kubernetes
  11.1  理解集群聯邦
    11.1.1  集群聯邦的重要用例
    11.1.2  聯邦控制平面
    11.1.3  聯邦資源
    11.1.4  高難度部分
  11.2  管理Kubernetes集群聯邦
  11.3  從底層建立集群聯邦
    11.3.1  初始設置
    11.3.2  使用官方hyperkube鏡像
    11.3.3  運行聯邦控制平面
    11.3.4  用聯邦註冊Kubernetes集群
    11.3.5  更新KubeDNS
    11.3.6  關閉聯邦
    11.3.7  用Kubefed建立集群聯邦
  11.4  運行聯邦工作負載
    11.4.1  創建聯邦服務
    11.4.2  添加後端Pod
    11.4.3  驗證公共DNS記錄
    11.4.4  發現聯邦服務
    11.4.5  後端Pod和整個集群的故障處理
    11.4.6  故障排除
  11.5  總結
第12章  自定義Kubernetes API和插件
  12.1  使用Kubernetes API
    12.1.1  理解OpenAPI
    12.1.2  設置代理
    12.1.3  直接探索Kubernetes API
    12.1.4  通過Kubernetes API創建Pod
    12.1.5  通過Python客戶端訪問Kubernetes API
  12.2  擴展Kubernetes API
    12.2.1  理解第三方資源的結構
    12.2.2  開發第三方資源
    12.2.3  整合第三方資源
  12.3  編寫Kubernetes插件
  12.4  編寫授權插件
    12.4.1  編寫准入控制介面
    12.4.2  編寫自定義度量插件
    12.4.3  編寫卷插件
  12.5  總結
第13章  操作Kubernetes軟體包管理器
  13.1  理解Helm
    13.1.1  Helm的動機
    13.1.2  Helm架構
    13.1.3  Helm組件
    13.1.4  Helm與Helm-Classic
  13.2  使用Helm
    13.2.1  安裝Helm
    13.2.2  尋找圖表

    13.2.3  安裝包
    13.2.4  使用安裝包庫
    13.2.5  使用Helm管理圖表
  13.3  創建自己的圖表
    13.3.1  Chart.yaml文件
    13.3.2  圖表元數據文件
    13.3.3  管理圖表依賴
    13.3.4  使用模板和值
  13.4  總結
第14章  Kubernetes的未來
  14.1  未來發展道路
    14.1.1  Kubernetes的發行版和里程碑
    14.1.2  Kubernetes的特別興趣小組和工作組
  14.2  面臨的挑戰
    14.2.1  捆綁價值
    14.2.2  Docker Swarm
    14.2.3  Mesos/Mesosphere
    14.2.4  雲平台
    14.2.5  AWS
    14.2.6  Azure
    14.2.7  阿里雲
  14.3  Kubernetes勢頭
    14.3.1  社區
    14.3.2  GitHub
    14.3.3  會議
    14.3.4  思維共享
    14.3.5  生態系統
    14.3.6  公有雲提供商
  14.4  教育和培訓
  14.5  動態插件
  14.6  總結

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們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