DevOps - Docker環(huán)境搭建圖文教程 - Docker Swarm篇

Docker是開(kāi)源的應(yīng)用容器引擎劣砍,能很好地支持DevOps中相當(dāng)重要的云計(jì)算对粪,為了搭建完整的應(yīng)用級(jí)別的Docker環(huán)境仿吞,我們一起開(kāi)始探索吧。

本篇知識(shí)點(diǎn)如下淳地,將分為三部分來(lái)介紹:

Registry(v2)

Shipyard

Docker Swarm(本篇)


先來(lái)看兩張圖

Docker Swarm是用于創(chuàng)建Docker主機(jī)(運(yùn)行Docker守護(hù)進(jìn)程的服務(wù)器)集群的工具怖糊,使用Swarm操作集群,會(huì)使用戶(hù)感覺(jué)就像是在一臺(tái)主機(jī)上進(jìn)行操作颇象。

在我們演示之前伍伤,請(qǐng)準(zhǔn)備:至少2臺(tái)可以互相聯(lián)網(wǎng)的機(jī)器,并安裝好Docker 1.12或以上版本夯到。

1 初始化 Swarm

在一臺(tái)機(jī)器上,通過(guò)運(yùn)行init命令饮亏,初始化一個(gè)Leader(默認(rèn)端口:2377)

若忘記token耍贾,可以運(yùn)行以下命令查詢(xún)manager的tokern

2 加入集群

在其他機(jī)器上通過(guò)運(yùn)行 docker swarm join 命令來(lái)加入一個(gè)集群,token在第1步中查看

3 在Leader機(jī)器上查看

可以看到節(jié)點(diǎn)已加入集群路幸,也可以在節(jié)點(diǎn)機(jī)器上運(yùn)行此命令

4 創(chuàng)建服務(wù)

docker service create --name my_web --replicas 4 --publish 9001:80 nginx

創(chuàng)建服務(wù)

稍微講解一下參數(shù)

docker service create:創(chuàng)建服務(wù)的命令

--name my_web:指定服務(wù)的名字

--replicas 3:指定創(chuàng)建容器的實(shí)例數(shù)量

--publish 9001:80:將主機(jī)的9001端口映射到容器的80端口上

nginx:鏡像名稱(chēng)

注意荐开,可以在集群中任意一臺(tái)機(jī)器上進(jìn)行操作

運(yùn)行完后,我們可以通過(guò):docker service ls 來(lái)查看服務(wù)的運(yùn)行狀態(tài)

服務(wù)狀態(tài)
在其中一臺(tái)主機(jī)上運(yùn)行 docker ps -a 查看
在另一臺(tái)主機(jī)上運(yùn)行 docker ps -a 查看

可以看到在第一臺(tái)主機(jī)上简肴,有my_web.2, my_web.3兩個(gè)容器實(shí)例正在運(yùn)行晃听,而在另外一臺(tái)主機(jī)上有my_web.1, my_web.4兩個(gè)容器實(shí)例在運(yùn)行(隨機(jī)分配的)

5 Scale 橫向擴(kuò)展

在需要擴(kuò)展服務(wù)里,可能通過(guò) docker service update命令來(lái)進(jìn)行操作:

docker service update my_web --replicas 5

這個(gè)命令將原來(lái)的my_web服務(wù)的實(shí)例數(shù)變成了:5

運(yùn)行擴(kuò)展命令后可以快速驗(yàn)證

使用Docker Swarm的神奇之處在于砰识,在任意一臺(tái)主機(jī)上進(jìn)行訪問(wèn)能扒,都可以訪問(wèn)創(chuàng)建的nginx服務(wù),原因是docker會(huì)在iptables中注冊(cè)相應(yīng)的端口辫狼,我們可以在任意主機(jī)上查看iptable來(lái)驗(yàn)證

iptables -nL --line-number

另一個(gè)使用Docker Swarm的神奇之處初斑,是docker會(huì)幫我們管理容器,比如我們剛剛調(diào)整了容器的實(shí)例個(gè)數(shù)為:5膨处,那docker swarm就會(huì)確奔樱總是有5個(gè)可用的實(shí)例在運(yùn)行,我們可以通過(guò)人為地停止某一個(gè)容器實(shí)例真椿,過(guò)一會(huì)兒鹃答,我們就會(huì)發(fā)現(xiàn),docker swarm幫我們創(chuàng)建了另外一個(gè)新的容器實(shí)例突硝,補(bǔ)全了5個(gè)测摔。而之前那個(gè)被中止的容器(尸體)還在,我們可以對(duì)其進(jìn)行檢查操作解恰。

6 刪除服務(wù)

最后避咆,當(dāng)我們不需要服務(wù)里舟肉,可以通過(guò) docker service rm命令來(lái)移除服務(wù)

可以使用 docker service ls, docker ps -a 來(lái)驗(yàn)證

總之,Docker Swarm能非常方便地幫我們編排我們的容器實(shí)例查库,操作也相當(dāng)?shù)暮?jiǎn)單路媚。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市樊销,隨后出現(xiàn)的幾起案子整慎,更是在濱河造成了極大的恐慌,老刑警劉巖围苫,帶你破解...
    沈念sama閱讀 221,273評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件裤园,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡剂府,警方通過(guò)查閱死者的電腦和手機(jī)拧揽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)腺占,“玉大人淤袜,你說(shuō)我怎么就攤上這事∷ゲ” “怎么了铡羡?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,709評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)意鲸。 經(jīng)常有香客問(wèn)我烦周,道長(zhǎng),這世上最難降的妖魔是什么怎顾? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,520評(píng)論 1 296
  • 正文 為了忘掉前任读慎,我火速辦了婚禮,結(jié)果婚禮上槐雾,老公的妹妹穿的比我還像新娘贪壳。我一直安慰自己,他們只是感情好蚜退,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布闰靴。 她就那樣靜靜地躺著,像睡著了一般钻注。 火紅的嫁衣襯著肌膚如雪蚂且。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,158評(píng)論 1 308
  • 那天幅恋,我揣著相機(jī)與錄音杏死,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛淑翼,可吹牛的內(nèi)容都是我干的腐巢。 我是一名探鬼主播,決...
    沈念sama閱讀 40,755評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼玄括,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼冯丙!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起遭京,我...
    開(kāi)封第一講書(shū)人閱讀 39,660評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤胃惜,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后哪雕,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體船殉,經(jīng)...
    沈念sama閱讀 46,203評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評(píng)論 3 340
  • 正文 我和宋清朗相戀三年斯嚎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了利虫。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,427評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡堡僻,死狀恐怖糠惫,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情苦始,我是刑警寧澤寞钥,帶...
    沈念sama閱讀 36,122評(píng)論 5 349
  • 正文 年R本政府宣布慌申,位于F島的核電站陌选,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏蹄溉。R本人自食惡果不足惜咨油,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望柒爵。 院中可真熱鬧役电,春花似錦、人聲如沸棉胀。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,272評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)唁奢。三九已至霎挟,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間麻掸,已是汗流浹背酥夭。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人熬北。 一個(gè)月前我還...
    沈念sama閱讀 48,808評(píng)論 3 376
  • 正文 我出身青樓疙描,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親讶隐。 傳聞我的和親對(duì)象是個(gè)殘疾皇子起胰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)整份,斷路器待错,智...
    卡卡羅2017閱讀 134,693評(píng)論 18 139
  • 要擴(kuò)大公司的業(yè)務(wù)規(guī)模,你必須采用與此前截然不同的工作方式烈评。在公司的發(fā)展過(guò)程中火俄,會(huì)遇到若干個(gè)轉(zhuǎn)折點(diǎn),每次都要經(jīng)歷發(fā)現(xiàn)...
    阿東咚咚咚閱讀 668評(píng)論 0 1
  • 快到我們的一周年了讲冠,時(shí)間過(guò)得好快啊瓜客,去年大概這個(gè)時(shí)候吧,我收到了你寄來(lái)的生日禮物和一周年紀(jì)念日禮物竿开。有你寫(xiě)給我的日...
    撒啦嗨吆閱讀 171評(píng)論 0 0
  • 曾經(jīng)把不開(kāi)心的過(guò)往寫(xiě)在紙上谱仪,然后用火機(jī)點(diǎn)燃那張紙 把紙燒到全化為灰燼,就權(quán)且當(dāng)是忘記了那些過(guò)往否彩,所以心情便舒坦了許...
    卞音閱讀 153評(píng)論 0 0
  • 21世紀(jì)是一個(gè)完全意義上的信息時(shí)代疯攒,在商業(yè)領(lǐng)域不斷創(chuàng)新的信息技術(shù)與信息應(yīng)用,將商業(yè)環(huán)境推向更加完全的智能化列荔、知識(shí)化...
    HR馬閱讀 907評(píng)論 0 0