Swarm容器編排與Docker原生集群

Swarm容器編排與Docker原生集群 pdf epub mobi txt 電子書 下載 2025

[俄] Fabrizio,Soppelsa(法布裏齊奧·索貝爾薩),[泰] Chanwit,Kaewkasi(占偉·瓦卡斯) 著,崔婧雯 鍾最龍 譯
想要找書就要到 新城書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 電子工業齣版社
ISBN:9787121317927
版次:1
商品編碼:12215652
品牌:Broadview
包裝:平裝
開本:16
齣版時間:2017-07-01
用紙:膠版紙
頁數:240

具體描述

産品特色

編輯推薦

本地測試環境→大型分布式基礎設施→Swarm內部運作|SwarmKit新特性→大規模部署自動化→公有私有雲配置運營Swarm集群→大型生産級應用|大規模容器部署→捲|調度|Libnetwork、安全|平颱伸縮性→與Docker生態無縫整閤→無需重構容器應用便可適配其他平颱。具體內容包括:

? 創建並管理任意大小的Swarm Mode集群

? 深入瞭解迄今為止創建的至大的Swarm集群的幕後,即Swarm 2k和Swarm 3k,分彆有2300和4700個節點

? 理解發現機製和Raft

? 在Swarm上部署容器化應用

? 管理AWS、Azure和DigitalOcean上的Swarm集群

? 在Swarm中整閤Flocker捲

? 在Openstack Magnum上創建並管理Swarm

內容簡介

Docker Swarm作為Docker集群原生的容器編排解決方案,是Docker生態係統中的關鍵組件之一。《Swarm容器編排與Docker原生集群》涵蓋瞭Swarm中的發現、調度、高可用、安全和平颱伸縮性等重要主題,能幫助你瞭解Swarm如何組建包含4700個節點的集群,並掌握Swarm的使用與管理,以及如何使用實現大規模應用的可伸縮。

《Swarm容器編排與Docker原生集群》適閤企業架構、開發、運維等各崗位從業者閱讀,同樣適閤廣大想瞭解當前主流CaaS架構內在運行原理與真實場景實踐的普通學習者。

作者簡介

Fabrizio Soppelsa是一傢OpenStack公司——Mirantis的高級工程師。從Docker 0.3版本開始,他就是Docker的積極使用者和倡導者,他用三個國傢的語言發錶瞭Docker工具相關的多篇文章。他也是一些項目,特彆是Machine項目的實際貢獻者。他目前生活在俄羅斯的莫斯科,他和他的蜘蛛Mosha是那裏Docker見麵會的組織者。

我要感謝ClusterHQ的工作人員對Flocker的幫助,特彆感謝Ryan Wallner。也要感謝Yandex團隊和Denis Kutin提供瞭免費的OpenStack實驗室,讓我能夠很容易地使用。感謝Mirantis創建瞭(我認為是)極好的OpenStack發行版本。感謝Docker團隊和Docker社區帶給我的所有快樂。

Chanwit Kaewkasi是泰國蘇蘭拉裏理工大學計算機學院的助理教授。Chanwit從0.1版本就開始參與Docker Swarm項目的貢獻,他協同設計並且實現瞭策略過濾器、ZooKeeper發現,以及其他特性。他目前是Docker Swarm的維護者以及Docker Captain(社區給Docker專傢的稱號)。

我還要感謝我的妻子——Pitchaya,感謝她的鼓勵以及對我的工作,包括這本書的大力支持。

要送給Docker Engineering團隊特彆的感謝,感謝他們開發齣的偉大的軟件。感謝蘇蘭拉裏理工大學為我提供瞭很棒的工作場所。感謝我的父母對我的支持。最後還要感謝Fabrizio邀請我閤作撰寫本書。

審閱者介紹

Baohua Yang是IBM的資深研究員。他的興趣包括雲計算、Fintech、分布式係統和分析的核心領域。他對那些新興技術特彆感興趣,比如,SDN/NFV、容器、大數據、區塊鏈和認知計算。

作為首席架構師,他領導企業産品的架構設計和係統實現,並且幫助解決瞭行業解決方案的關鍵技術難題。

作為開源社區的貢獻者,他嚮數個項目提交代碼、方案和演講,包括OpenStack、Hyperledger、OpenvSwitch、Docker、OpenDaylight和Kubernetes,並且領導瞭一些項目,包括easyOVS、Hyperledger Fabric-SDK-py和 Cello。他現在是中國Hyperledger技術工作組的主席。

他在前列的互聯網會議和期刊(包括IEEE INFOCOM,IEEE Trans on Computers)上發錶瞭十多篇文章,並且參與撰寫瞭一些技術書籍和專利。他現在是數個學術會議和期刊的TPC成員。

他的主頁:https://yeasy.github.com。

譯者介紹

崔婧雯,具有近10年軟件測試開發經驗。現就職於IBM,高級軟件工程師,負責IBM WebSphere業務流程管理軟件的係統測試和自動化CI測試平颱的開發工作。曾就職於VMware從事桌麵虛擬化産品的質量保證工作。對Dokcer,虛擬化,業務流程管理等技術有濃厚的興趣。譯有《Mesos 大數據資源調度與大規模容器運行 佳實踐》《持續輕量級Java EE開發:編寫可測試的代碼》《用Mesos框架構建分布式應用》等技術著作。

目錄

第1章 歡迎來到Docker Swarm1

集群工具和容器管理器3

Swarm的目標3

為什麼使用Swarm4

真實的示例5

-- 寵物模型vs牛群模型5

Swarm特性6

類似項目7

-- Kubernetes7

-- CoreOS Fleet8

-- Apache Mesos9

-- Kubernetes vs Fleet vs Mesos10

-- Swarm vs所有10

Swarm v1架構10

-- 術語12

開始使用Swarm13

-- Mac係統上的Docker14

-- Windows係統上的Docker16

-- 使用Linux18

-- 檢查Docker Machine是否可用——所有係統19

以前的Swarm19

-- Boot2Docker21

-- 使用Docker Machine創建4個集群節點21

-- 配置Docker主機24

-- 啓動Docker Swarm25

-- 測試Swarm集群29

-- 如今的Swarm31

本章小結35

第2章 探索發現服務36

發現服務37

Token38

-- 使用token重新架構第1章示例38

-- Token的限製43

Raft43

-- Raft理論43

-- 實際的Raft45

Etcd47

-- 使用Etcd重新架構第1章示例47

ZooKeeper50

Consul50

-- 使用Consul重新架構第1章示例50

實現去中心化的發現服務52

本章小結52

第3章 遇見Docker Swarm Mode53

SwarmKit53

-- 版本和支持54

-- SwarmKit架構54

-- SwarmKit的核心:swarmd56

-- SwarmKit的控製器:swarmctl57

-- 使用Ansible預配SwarmKit集群58

-- 在SwarmKit上創建服務62

Swarm Mode63

-- Swarm v1 vs Swarm Mode vs SwarmKit64

-- 深入瞭解Swarm Mode部署65

本章小結72

第4章 創建生産級彆Swarm73

工具73

Swarm2k的HA拓撲74

-- 管理器配置75

-- Raft恢復場景75

-- Raft文件76

-- 運行任務76

-- 管理器拓撲76

使用belt預配基礎架構79

使用Docker Machine保護管理器安全81

理解Swarm內部機製83

-- 加入worker84

-- 升級管理器85

監控Swarm2k87

-- InfluxDB時間序列數據庫87

Swarm3k90

-- Swarm3k的搭建和工作負載90

-- 大規模Swarm的性能92

總結Swarm2k和Swarm3k的經驗教訓95

本章小結96

第5章 管理Swarm集群97

Docker Swarm standalone97

Docker Swarm Mode98

-- 手動添加節點99

-- 管理器99

-- Worker數量100

-- 添加腳本化節點100

-- belt102

-- 使用Ansible103

集群管理105

-- 操作節點106

降級和升級107

-- 標記節點108

-- 移除節點110

Swarm健康111

備份集群配置111

災難恢復112

Swarm的圖形化界麵112

-- Shipyard112

-- Portainer114

本章小結115

第6章 Swarm上真實應用的部署116

微服務116

部署一個復製的Nginx117

-- 一個極簡的Swarm118

-- Docker Service120

overlay網絡124

集成的負載均衡124

服務的連接:用WordPress例子展示124

-- Swarm的調度策略127

-- 現在,WordPress127

Docker Compose和Swarm Mode130

Docker stacks介紹130

-- 分布式應用包131

-- Docker deploy132

另外一個應用:Apache Spark133

-- 為什麼要在Docker上運行Spark134

-- 沒有Swarm的Spark單機134

-- 在Swarm上的Spark單機137

-- 在Swarm上啓動Spark138

本章小結140

第7章 平颱的嚮上伸縮141

再次登場的Spark例子142

Docker插件142

實驗室環境143

-- 一個獨一無二的秘鑰143

-- Docker Machine144

-- 安全組145

-- 網絡配置146

-- 存儲配置和架構146

安裝Flocker148

-- 生成Flocker證書149

-- 安裝軟件151

-- 安裝控製節點153

-- 安裝集群節點153

-- 測試一切是否正常154

安裝並配置Swarm156

-- 為Spark添加一個捲157

再次部署Spark157

-- 測試Spark159

-- 使用Flocker存儲161

伸縮Spark164

監控Swarm托管的應用165

-- Prometheus165

-- 安裝一個監控係統166

-- 在Grafana中導入Prometheus167

本章小結169

第8章 Swarm附加特性的探索171

Libnetwork171

-- Networking插件172

-- 容器網絡模型173

加密和路由矩陣174

MacVLAN174

-- overlay網絡175

網絡控製麵闆177

Libkv179

-- 如何使用libkv180

本章小結181

第9章 Swarm集群和Docker軟件供應鏈的安全加固182

軟件供應鏈182

Swarm集群的安全加固183

安全加固Swarm:最佳實踐184

-- 證書頒發機構185

-- 證書和相互TLS185

-- 集群加入令牌185

-- 在Docker Machine中添加TLS186

Docker Notary187

Docker Secret介紹190

本章小結192

第10章 Swarm和雲193

Docker for AWS和Docker for Azure193

-- Docker for AWS194

-- Docker for Azure198

Docker Datacenter201

OpenStack上的Swarm202

-- OpenStack Nova204

-- 當下現實:OpenStack友好的方式205

-- OpenStack Heat205

-- OpenStack Magnum206

本章小結215

第11章 Swarm的未來展望216

Provisioning的挑戰216

軟件定義基礎設施216

-- Infrakit217

-- TUF—— The Update Framework219

Docker Stacks和Compose220

Caas ——容器即服務220

Unikernel220

為Docker做貢獻222

-- Github222

-- 提交issue222

-- 代碼223

-- belt和其他項目223

本章小結223

前言/序言

歡迎來到《Swarm容器編排與Docker原生集群》一書!這是一本關於容器和分布式係統的書。本書將介紹如何使用原生的Docker工具建模微服務、生成任務、擴大應用程序的規模,以及將容器推送到Docker集群裏!一句話來說,本書將討論Docker的編排。

隨著最近Swarm Mode的崛起,以及Docker Engine啓用瞭Swarm功能,編排Docker的最佳方式其實還是Docker!

聽上去不錯,但是“編排Docker”是什麼意思呢?什麼是編排?更確切的說法是,什麼是管弦樂隊?

管弦樂隊指的是音樂傢的全體,它由指揮傢指揮,指揮傢負責控製節奏、鏇律,塑造齣音樂的整體。弦樂隊、管樂隊、打擊樂隊、鍵盤樂隊以及其他樂隊都會遵循指揮傢的指揮,共同演奏齣驚人的交響樂麯,比如貝多芬的《第九交響樂》。

類似地,在容器編排係統裏,音樂傢是任務,指揮傢則是領導者服務(Swarm primitives)。任務並不演奏鏇律,或者並不僅僅做這些:更為抽象地說,它們執行一些計算型工作,比如,運行Web服務器。而指揮傢——Swarm,則負責它們的預配,它們的可用性,它們的鏈接,它們的擴展。這也就是大傢所說的“Docker編排”。

本書講述如何預配這樣的Docker“管弦樂隊”,如何保證服務的可用性,如何連接任務,以及如何擴展平颱,從而演奏齣屬於應用程序的動人交響樂。

本書範圍

第1章“歡迎來到Docker Swarm”會介紹Swarm,並且解釋用戶為什麼需要集群解決方案來管理容器。這一章介紹Swarm的特性,介紹其架構的高層級描述。這一章還設計瞭一些示例,講述Swarm和Fleet、Kubernetes、Mesos的不同之處。之後也會介紹Docker工具的安裝以及兩種Swarm的預配方式:本地的Swarm Standalone和遠程在DigitalOcean上的Swarm Mode集群。

第2章“探索發現服務”是描述性語言最多、最抽象的一章。這一章介紹發現機製和共識算法是什麼,以及它們為什麼對於分布式係統來說至關重要。本章會詳細介紹Swarm Mode包含的共識機製Raft及其實現Etcd。還會介紹第1章“歡迎來到Docker Swarm”裏所使用的發現機製的局限性,並且使用Consul擴展上一章的本地示例,之後重新將其部署。

第3章“遇見Docker Swarm Mode”介紹全新的Docker kit,它能夠幫助用戶創建任何規模的任務集群。本章會介紹Docker Swarm Mode的基礎——SwarmKit,介紹它在Docker 1.12+版本裏是如何工作的,討論其架構、理念,它和“舊”Swarm的不同之處在哪裏,以及它是如何通過抽象齣服務和任務來組織工作負載的。

第 4 章“創建生産級彆Swarm”介紹並且討論瞭社區驅動的項目——Swarm2k和Swarm3k,我們實驗瞭2300和4800個節點的Swarm集群,可以運行成韆上萬個容器。最後總結瞭可用計劃,預配多大規模的集群,以及實驗中的經驗教訓。

第5章“管理Swarm集群”主要探討基礎架構。這一章展示如何增加或者降低Swarm的規模,如何promote以及demote節點,以及如何更新集群和節點的屬性。這一章還會介紹Shipyard和Portainer.io,其可以作為Swarm的圖形UI。

第6章“Swarm上真實應用的部署”介紹瞭將真實應用程序放到Swarm上,並且討論瞭Compose、Docker Stacks和Docker Application Bundles。這一章展示瞭典型的部署工作流如何在集群裏過濾並且調度容器,將其作為服務啓動,將容器作為任務處理。這一章從定義一個使用Nginx的Web服務開始,然後部署一個使用MySQL的WordPress,最終介紹一個更為實際的應用:Apache Spark。

第7章“平颱的嚮上伸縮”將在前幾章的基礎上開始新的話題討論。這一章將介紹Flocker,給Swarm上運行的Spark增加存儲能力,並且會展示如何安裝,以及如何和Swarm一起大規模、自動地使用它。這一章將完善之前的Spark示例,運行一些真實的大數據job,並且為該基礎架構搭建基礎的監控係統。

第8章“Swarm附加特性的探索”討論瞭一些對於Swarm來說很重要的高級話題,包括Libnetwork和libkv。

第9章“Swarm集群和Docker軟件供應鏈的安全加固”關注Swarm集群的安全方麵,會介紹平颱的參數、證書、防火牆等概念,並且會介紹Notary。

第10章“Swarm和雲”介紹瞭在雲供應商那裏運行Swarm的最為流行的幾種方案。將在AWS和Azure上安裝Swarm,然後介紹Docker Datacenter,最後會轉嚮OpenStack,介紹在Magnum上如何安裝以及管理Swarm,Magnum是OpenStack提供的容器即服務方案。

第11章“Swarm的未來展望”展望瞭Docker編排的趨勢,比如軟件定義的基礎架構、Infrakit、unikernel以及Caas。偉大的徵途尚未結束!

閱讀本書的要求

本書假定讀者有在命令行裏使用Docker的經驗:本書通篇會持續地拉取鏡像、運行容器、定義服務、暴露端口以及創建網絡。

另外,讀者最好對網絡協議有一些基本瞭解,並且熟悉公有雲和私有雲的概念,比如虛擬機和tenant網絡。

要實踐本書的示例,讀者需要Docker及其工具。第1章“歡迎來到Docker Swarm”介

用戶評價

評分

專業性很強。

評分

Swarm容器編排與Docker原生集群

評分

一邊看視頻,一邊學習書

評分

挺好的,需要實際操練一下

評分

不錯很好、下來還買這個

評分

挺好的書,現在來說還挺難找

評分

正在部署,不過看谘詢都說swarm正在死亡,現在都在用k8s

評分

沒事看看,學習學習。

評分

囤貨中,買來學習,超實用,超低價,趕緊下手囤貨。

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有