开源docker轻量级管理平台shipyard部署(中文版)
一:簡(jiǎn)介
????Shipyard(github)是建立在docker集群管理工具Citadel之上的可以管理容器、主機(jī)等資源的web圖形化工具。包括core和extension兩個(gè)版本,core即shipyard主要是把多個(gè) Docker host上的 containers 統(tǒng)一管理(支持跨越多個(gè)host),extension即shipyard-extensions添加了應(yīng)用路由和負(fù)載均衡、集中化日志、部署等。?
1:特點(diǎn):
? ? 1、支持多節(jié)點(diǎn)管理
? ? 2、完善的節(jié)點(diǎn)、鏡像、容器管理
? ? 3、go語(yǔ)言開(kāi)發(fā),完美與docker結(jié)合
2:幾個(gè)概念?
engine?
一個(gè)shipyard管理的docker集群可以包含一個(gè)或多個(gè)engine(引擎),一個(gè)engine就是監(jiān)聽(tīng)tcp 端口的docker daemon。shipyard管理docker daemon、p_w_picpaths、containers完全基于Docker API,不需要做其他的修改。另外,shipyard可以對(duì)每個(gè)engine做資源限制,包括CPU和內(nèi)存;因?yàn)門(mén)CP監(jiān)聽(tīng)相比Unix socket方式會(huì)有一定的安全隱患,所以shipyard還支持通過(guò)SSL證書(shū)與docker后臺(tái)進(jìn)程安全通信。
rethinkdb?
RethinkDB是一個(gè)shipyard項(xiàng)目的一個(gè)docker鏡像,用來(lái)存放賬號(hào)(account)、引擎(engine)、服務(wù)密鑰(service key)、擴(kuò)展元數(shù)據(jù)(extension metadata)等信息,但不會(huì)存儲(chǔ)任何有關(guān)容器或鏡像的內(nèi)容。一般會(huì)啟動(dòng)一個(gè)shipyard/rethinkdb容器shipyard-rethinkdb-data來(lái)使用它的/data作為數(shù)據(jù)卷供另外rethinkdb一個(gè)掛載,專(zhuān)門(mén)用于數(shù)據(jù)存儲(chǔ)。?
#####################中文版部署部署要求####################
1:zookeeper集群;
2:Docker version 1.10.3 以上版本;
3:服務(wù)器網(wǎng)絡(luò)可以訪問(wèn)國(guó)外鏡像下載站點(diǎn);
注意:本次集群部署的是漢化后的web頁(yè)面;
########################################################
以上條件滿(mǎn)足情況下,只需要部署如下服務(wù):
二:安裝部署:
deploy首先啟動(dòng)的就是RethinkDB容器,shipyard采用RethinkDB作為數(shù)據(jù)庫(kù)來(lái)保存用戶(hù)等信息
1:zk集群介紹;
本集群使用現(xiàn)有zookeeper集群:
node01.ptmind.com:2181
node02.ptmind.com:2181
node03.ptmind.com:2181
#安裝數(shù)據(jù)庫(kù)
RethinkDB 設(shè)計(jì)用來(lái)存儲(chǔ) JSON 文檔的分布式數(shù)據(jù)庫(kù),可通過(guò)簡(jiǎn)單操作實(shí)現(xiàn)多機(jī)分布式存儲(chǔ)。支持表的聯(lián)合和分組查詢(xún)。
docker run \
? ? -ti \
? ? -d \
? ? --restart=always \
? ? --name shipyard-rethinkdb \
? ? rethinkdb
#Swarm管理器
docker run \
? ? -ti \
? ? -d \
? ? --restart=always \
? ? --name shipyard-swarm-manager \
? ? swarm:latest \
? ? manage --host tcp://0.0.0.0:3375 zk://node01.ptmind.com:2181,node02.ptmind.com:2181,node03.ptmind.com:2181
#運(yùn)行web管理界面
docker run \
? ? -ti \
? ? -d \
? ? --restart=always \
? ? --name shipyard-controller \
? ? --link shipyard-rethinkdb:rethinkdb \
? ? --link shipyard-swarm-manager:swarm \
? ? -p 38080:8080 \
? ? dockerclub/shipyard:latest \
? ? server \
? ? -d tcp://swarm:3375
#本次部署使用net網(wǎng)絡(luò)模式,container 網(wǎng)絡(luò)不能實(shí)現(xiàn)跨主機(jī)通訊的,以上服務(wù)部署在一臺(tái)主機(jī)
#驗(yàn)證:
打開(kāi)瀏覽器訪問(wèn):
shipyard-swarm-manager服務(wù)器IP地址:38080
三:服務(wù)器加入集群
#slave 節(jié)點(diǎn)只需要部署agent
#swarm節(jié)點(diǎn)加入,并列出容器
#使用zookeeper
docker run \
? ? -ti \
? ? -d \
? ? --restart=always \
? ? --name shipyard-swarm-agent \
? ? swarm:latest \
? ? join --addr 172.16.7.12:2375 zk://node01.ptmind.com:2181,node02.ptmind.com:2181,node03.ptmind.com:2181
以上服務(wù)部署完成后,在manager幾點(diǎn)管理頁(yè)面即可看到,新的節(jié)點(diǎn)加入集群;
相關(guān)資料:
https://hub.docker.com/r/dockerclub/shipyard/
https://segmentfault.com/a/1190000003995350%E6%96%87%E7%AB%A0
https://segmentfault.com/a/1190000003995350%E6%96%87%E7%AB%A0
轉(zhuǎn)載于:https://blog.51cto.com/michaelkang/1786288
總結(jié)
以上是生活随笔為你收集整理的开源docker轻量级管理平台shipyard部署(中文版)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 读取excel文件内容代码
- 下一篇: openstack cluster 封装