內容簡介
◆ 全面性深入探究主流容器雲技術架構方法。
◆ 從原始碼解讀深度剖析Docker核心原理。
◆ 完全解析Kubernetes技術原理及設計概念。
◆ 介紹Docker典型編排部屬工具「三劍客」與「Fleet」。
◆ 進階Docker、Kubernetes高階技巧實踐與應用。
◆ 快速程式碼部署-將小型的容器化應用程式自動化為可攜式且
可自足的容器,在各類雲端或個人單機都能輕鬆發佈、部署與
執行。
◆ 標準化應用程式操作-語法簡單易懂,有穩固的工具和立即可
用之應用程式生態系統,還能提供完整控制權,並能加速檢測
、監測與排除或補救問題。
◆ 無縫移動程式碼-將開發程式用容器打包起來,快速移植到另
一個平台。
◆ Docker讓使用者可在每部伺服器上,都能輕鬆同時執行數百個
不同的虛擬應用程式,不只提高資源使用率還能節省成本。
本書以原始碼解讀為基礎,以構建Docker容器雲端服務平台為目
標,通過回應實際專案問題為線索,全面解析Docker概念及原理
,同時深入實踐Docker三件套件和雲端平臺,並加深入解讀
Kubernetes的專業書籍;此外基於Docker1.10以上版本,新增runc
和libnetwork兩個全新而又十分重要的概念;以及基於
Kubernetes1.2以上版本,全面解讀volume plugin、secret、auto
scaling等全新特性。
------------------------------------------------------------------------------------
適用:有一定Docker基礎的開發者、架構師、電腦相關科系學生
,以及探索基於Docker構建雲端計算平台的技術人員,也非常適
合作為大專院校教材或培訓資料。
◆ 從原始碼解讀深度剖析Docker核心原理。
◆ 完全解析Kubernetes技術原理及設計概念。
◆ 介紹Docker典型編排部屬工具「三劍客」與「Fleet」。
◆ 進階Docker、Kubernetes高階技巧實踐與應用。
◆ 快速程式碼部署-將小型的容器化應用程式自動化為可攜式且
可自足的容器,在各類雲端或個人單機都能輕鬆發佈、部署與
執行。
◆ 標準化應用程式操作-語法簡單易懂,有穩固的工具和立即可
用之應用程式生態系統,還能提供完整控制權,並能加速檢測
、監測與排除或補救問題。
◆ 無縫移動程式碼-將開發程式用容器打包起來,快速移植到另
一個平台。
◆ Docker讓使用者可在每部伺服器上,都能輕鬆同時執行數百個
不同的虛擬應用程式,不只提高資源使用率還能節省成本。
本書以原始碼解讀為基礎,以構建Docker容器雲端服務平台為目
標,通過回應實際專案問題為線索,全面解析Docker概念及原理
,同時深入實踐Docker三件套件和雲端平臺,並加深入解讀
Kubernetes的專業書籍;此外基於Docker1.10以上版本,新增runc
和libnetwork兩個全新而又十分重要的概念;以及基於
Kubernetes1.2以上版本,全面解讀volume plugin、secret、auto
scaling等全新特性。
------------------------------------------------------------------------------------
適用:有一定Docker基礎的開發者、架構師、電腦相關科系學生
,以及探索基於Docker構建雲端計算平台的技術人員,也非常適
合作為大專院校教材或培訓資料。
作者簡介
浙江大學SEL實驗室
浙江大學軟體工程實驗室(Software Engineeting Lab,SEL)雲計
算團隊組建於2011年,在4年多的時間裡成長為一個充滿熱情、富
有能力的雲計算研發團隊,也在國內外開源雲計算社區,尤其是
在Docker、kubernetes和Cloud Foundry社區得到廣泛認可。
◆ 本書主要作者群
丁軼群、張磊、何思玫、張浩
高相林、孫健波、馮明振
◆部分章節貢獻者
王哲、賴春斌、孫宏亮、杜軍
浙江大學軟體工程實驗室(Software Engineeting Lab,SEL)雲計
算團隊組建於2011年,在4年多的時間裡成長為一個充滿熱情、富
有能力的雲計算研發團隊,也在國內外開源雲計算社區,尤其是
在Docker、kubernetes和Cloud Foundry社區得到廣泛認可。
◆ 本書主要作者群
丁軼群、張磊、何思玫、張浩
高相林、孫健波、馮明振
◆部分章節貢獻者
王哲、賴春斌、孫宏亮、杜軍
內容目錄
前言
第一部分 Docker深入解讀
Chapter 01» 從容器到容器雲
1.1 雲端運算平台
1.2 容器,新的革命
1.3 進化:從容器到容器雲
Chapter 02» Docker 基礎
2.1 Docker的安裝
2.2 Docker指令引數解讀
2.3 架設你的第一個Docker應用堆疊
Chapter 03» Docker 核心原理解讀
3.1 Docker背後的核心知識
3.2 Docker架構概覽
3.3 client和daemon
3.4 libcontainer
3.5 Docker映像檔管理
3.6 Docker儲存管理
3.7 Docker資料卷冊
3.8 Docker網路管理
3.9 Docker與容器安全
Chapter 04» Docker 進階實作技巧
4.1 容器化思維
4.2 Docker進階網路實作
4.3 Dockerfile最佳做法
4.4 Docker容器的監控方法
4.5 容器化應用建置的基礎:高可用配置中心
第二部分 Docker雲端平台解讀
Chapter 05» 建置自己的容器雲
5.1 再談雲端平台的層次架構
5.2 從小工到專家
Chapter 06» 專注編排與部署:三劍客與Fleet
6.1 編排小神器Fig/Compose
6.2 跨平台宿主環境管理工具Machine
6.3 叢集抽象工具Swarm
6.4 編排之秀Fleet
Chapter 07» 專注應用支撐和執行時期:Flynn 和Deis
7.1 Flynn,一個小而美的兩層架構
7.2 談談Deis與Flynn
Chapter 08» 一切皆容器:Kubernetes
8.1 Kubernetes是個什麼樣的專案
8.2 Kubernetes的設計解讀
8.3 Kubernetes核心元件解讀
8.4 Kubernetes儲存核心原理
8.5 Kubernetes網路核心原理
8.6 Kubernetes多租戶管理與資源控制
8.7 Kubernetes進階實作
8.8 Kubernetes未來動向
8.9 不要停止思考
第三部分 附錄
Appendix A» Docker的安裝
A.1 安裝Docker的要求
A.2 在Ubuntu系統中安裝Docker
A.3 在REHL及其衍生的發行版本系統中安裝Docker
A.4 在OS X系統中安裝Docker
A.5 在Microsoft Windows系統中安裝Docker
A.6 Docker的安裝驗證
Appendix B» 閱讀Docker原始程式碼的神兵利器
B.1 Golang開發環境的安裝
B.2 工具的設定與技巧
Appendix C» 快速熟悉開放原始碼專案
C.1 第一步:查閱文件
C.2 第二步:動手實作
C.3 第三步:閱讀原始程式
Appendix D» cgroups的測試與使用
D.1 安裝cgroups工具函數庫
D.2 查詢cgroup及子系統掛載狀態
D.3 建立層級並掛載子系統
D.4 移除cgroup
D.5 設定cgroups參數
D.6 增加工作到cgroup
D.7 許可權管理
Appendix E» cgroups子系統設定參數介紹
E.1 blkio:BLOCK IO資源控制
E.2 cpu:CPU資源控制
E.3 cpuacct:CPU資源報告
E.4 cpuset:CPU綁定
E.5 device:限制工作對device的使用
E.6 freezer:暫停/恢復cgroup中的工作
E.7 memory:記憶體資源管理
Appendix F» Kubernetes的安裝
F.1 安裝Docker
F.2 取得Kubernetes各元件和etcd的二進位可執行檔
F.3 安裝upstart指令稿
F.4 安裝Kubernetes 用戶端程式
後記
第一部分 Docker深入解讀
Chapter 01» 從容器到容器雲
1.1 雲端運算平台
1.2 容器,新的革命
1.3 進化:從容器到容器雲
Chapter 02» Docker 基礎
2.1 Docker的安裝
2.2 Docker指令引數解讀
2.3 架設你的第一個Docker應用堆疊
Chapter 03» Docker 核心原理解讀
3.1 Docker背後的核心知識
3.2 Docker架構概覽
3.3 client和daemon
3.4 libcontainer
3.5 Docker映像檔管理
3.6 Docker儲存管理
3.7 Docker資料卷冊
3.8 Docker網路管理
3.9 Docker與容器安全
Chapter 04» Docker 進階實作技巧
4.1 容器化思維
4.2 Docker進階網路實作
4.3 Dockerfile最佳做法
4.4 Docker容器的監控方法
4.5 容器化應用建置的基礎:高可用配置中心
第二部分 Docker雲端平台解讀
Chapter 05» 建置自己的容器雲
5.1 再談雲端平台的層次架構
5.2 從小工到專家
Chapter 06» 專注編排與部署:三劍客與Fleet
6.1 編排小神器Fig/Compose
6.2 跨平台宿主環境管理工具Machine
6.3 叢集抽象工具Swarm
6.4 編排之秀Fleet
Chapter 07» 專注應用支撐和執行時期:Flynn 和Deis
7.1 Flynn,一個小而美的兩層架構
7.2 談談Deis與Flynn
Chapter 08» 一切皆容器:Kubernetes
8.1 Kubernetes是個什麼樣的專案
8.2 Kubernetes的設計解讀
8.3 Kubernetes核心元件解讀
8.4 Kubernetes儲存核心原理
8.5 Kubernetes網路核心原理
8.6 Kubernetes多租戶管理與資源控制
8.7 Kubernetes進階實作
8.8 Kubernetes未來動向
8.9 不要停止思考
第三部分 附錄
Appendix A» Docker的安裝
A.1 安裝Docker的要求
A.2 在Ubuntu系統中安裝Docker
A.3 在REHL及其衍生的發行版本系統中安裝Docker
A.4 在OS X系統中安裝Docker
A.5 在Microsoft Windows系統中安裝Docker
A.6 Docker的安裝驗證
Appendix B» 閱讀Docker原始程式碼的神兵利器
B.1 Golang開發環境的安裝
B.2 工具的設定與技巧
Appendix C» 快速熟悉開放原始碼專案
C.1 第一步:查閱文件
C.2 第二步:動手實作
C.3 第三步:閱讀原始程式
Appendix D» cgroups的測試與使用
D.1 安裝cgroups工具函數庫
D.2 查詢cgroup及子系統掛載狀態
D.3 建立層級並掛載子系統
D.4 移除cgroup
D.5 設定cgroups參數
D.6 增加工作到cgroup
D.7 許可權管理
Appendix E» cgroups子系統設定參數介紹
E.1 blkio:BLOCK IO資源控制
E.2 cpu:CPU資源控制
E.3 cpuacct:CPU資源報告
E.4 cpuset:CPU綁定
E.5 device:限制工作對device的使用
E.6 freezer:暫停/恢復cgroup中的工作
E.7 memory:記憶體資源管理
Appendix F» Kubernetes的安裝
F.1 安裝Docker
F.2 取得Kubernetes各元件和etcd的二進位可執行檔
F.3 安裝upstart指令稿
F.4 安裝Kubernetes 用戶端程式
後記
ISBN: 9789863797470