{eval=Array;=+count(Array);}
自從用上ansible之后,一發(fā)不可收拾。
ansible+jenkins+gitlab,現(xiàn)在很久沒(méi)有登陸服務(wù)器了,基本需要裝軟件或者發(fā)版本,本地改了提交gitlab,gitlab跟jenkins聯(lián)動(dòng)。jenkins采用流水線(xiàn)的方式,先從gitlab上拉取最新變動(dòng),然后部署通過(guò)ansible playbook批量部署,成功之后發(fā)消息到釘釘群。
所以現(xiàn)在要部署或者發(fā)布,特別方便,git提交,等群消息就OK了[呲牙]
linux有類(lèi)似ghost那樣的克隆工具,推薦clonezilla。ghost for Linux也可以。
另外,Linux下的dd命令可以完成一個(gè)源驅(qū)動(dòng)器對(duì)目標(biāo)驅(qū)動(dòng)器的鏡像操作。
說(shuō)說(shuō)我以前最常用的三種批量部署方案(有疑問(wèn)接受私信):
第一:服務(wù)器一般都會(huì)用兩塊磁盤(pán)做RAID1作為系統(tǒng)盤(pán),手動(dòng)安裝完第一臺(tái)操作系統(tǒng),RAID1的功能是兩塊盤(pán)中具有相等的數(shù)據(jù),所以?xún)蓧K盤(pán)都存在了剛剛安裝好的linux系統(tǒng),拔出一塊系統(tǒng)盤(pán)(服務(wù)器認(rèn)為你這塊盤(pán)壞了),再插入一塊新盤(pán)到剛剛拔出磁盤(pán)的位置,此時(shí)服務(wù)器會(huì)再次向新磁盤(pán)自動(dòng)同步數(shù)據(jù),保持1:1備份。接下來(lái)剛剛拔出的那塊系統(tǒng)盤(pán)派上用場(chǎng),把剛剛扒出來(lái)的那塊有系統(tǒng)的盤(pán)插到另外一臺(tái)無(wú)系統(tǒng)的服務(wù)器上,自動(dòng)完成與另外一塊盤(pán)的同步,以此類(lèi)推,1生2,2生4,4生8,8生16,16生32
第二種:刻錄無(wú)人值守光盤(pán)
第三種:PXE批量部署
PXE實(shí)例:
我3年前做過(guò)一套PXE部署系統(tǒng)(以下是當(dāng)時(shí)用于機(jī)房部署系統(tǒng)的截圖界面)??梢圆渴饂indows+linux的各個(gè)版本,部署服務(wù)器采用的windows系統(tǒng)(因?yàn)閣indows能通過(guò)easybcd制作syslinux引導(dǎo)),syslinux就可以成功引導(dǎo)起win和linux,引導(dǎo)成功后,調(diào)用kickstart制作的linux無(wú)人應(yīng)答文件,wds &AKT制作的windows無(wú)人應(yīng)答文件,完成系統(tǒng)安裝。你的需求只需要安裝統(tǒng)一的linux版本,所以相對(duì)來(lái)說(shuō)比較容易,花兩天學(xué)習(xí)下kickstart基本就能在虛擬機(jī)上實(shí)踐成功,但是如果要應(yīng)用到物理服務(wù)器,還需要考慮驅(qū)動(dòng),raid,格式化等問(wèn)題
ucloud有個(gè)藍(lán)鯨平臺(tái),只需要錄入你的服務(wù)器ip就可以批量操作。
還有一個(gè)ansible的來(lái)源運(yùn)維工具。
還可以通過(guò)pexpect腳本,自己用python結(jié)合ssh搭建一個(gè)運(yùn)維平臺(tái)。
如果是批量買(mǎi)機(jī)器的話(huà),各個(gè)云廠(chǎng)商都提供有接口,寫(xiě)個(gè)簡(jiǎn)單都shell就可以了。
沒(méi)有部署同時(shí)過(guò)100多臺(tái),但是曾經(jīng)部署26臺(tái)ECS集群,支撐1500左右tps。部署的方案是:ucloud云ECS+鏡像+彈性伸縮+負(fù)載均衡。開(kāi)發(fā)測(cè)試環(huán)境用的是Vagrant直接控制多臺(tái)虛擬機(jī),曾經(jīng)也使用過(guò)VMware ESXi和VMware VCenter管理虛擬機(jī)集群
看你部署應(yīng)用還是系統(tǒng),平臺(tái)是什么。
系統(tǒng)簡(jiǎn)單,做個(gè)模板機(jī),復(fù)制就行了。
應(yīng)用也不麻煩,跟上邊的一樣做個(gè)鏡像就行,或者用批量管理工具ansible salt 這類(lèi)的工具。云服務(wù)器的話(huà),鏡像市場(chǎng)也有公用的。
編寫(xiě)ansible playbook,
在 host加入分組,確保宿主機(jī)可以ssh免登陸那100臺(tái)機(jī)器即可。
0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答