目前成都創(chuàng)新互聯(lián)公司已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站改版維護、企業(yè)網(wǎng)站設(shè)計、八宿網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
一、背景介紹
svnServer在內(nèi)網(wǎng)環(huán)境,測試環(huán)境搭建在阿里云公網(wǎng)上,分為DBServer和WebServer。每次手動部署時都需要諸多步驟,開啟多個終端操作,可謂耗時又繁瑣,再加上新人經(jīng)驗不足,部署過程時常出現(xiàn)問題。
手動部署測試環(huán)境的步驟:
服務(wù)器 | 操作步驟 |
svnServer(內(nèi)網(wǎng)) |
|
本地PC |
|
DBServer (公網(wǎng)) |
|
WebServer (公網(wǎng)) |
|
二、解決方案
長此以往下去,終究是不可行的!
如果用shell固化所需執(zhí)行的步驟、執(zhí)行的命令,對新手而言是不是簡易多了呢?
如果只在一臺server上就將所有的步驟執(zhí)行完了,是不是更完美了呢?
既然svnServer作為部署工作的入口,那就把它作為console。
定下console之后,問題又來了,它如何與公網(wǎng)的server“溝通”呢?ssh主機互信來幫忙!通過主機互信,打通內(nèi)外網(wǎng),跨起一座溝通的橋梁。
按照部署步驟,可歸納為4個階段:
升級前的準(zhǔn)備工作:停止web應(yīng)用服務(wù);刪除舊文件;
分別提測內(nèi)容的上傳;
部署DBServer;
部署WebServer;
使用shell腳本部署的步驟:
服務(wù)器 | 操作步驟 |
svnServer(內(nèi)網(wǎng)) |
|
通過shell腳本來部署,感覺要操作的內(nèi)容減少了,這個過程簡單了、順暢了!
三、腳本編寫及調(diào)試
有了以上的解決方案,就開始實踐,畢竟實踐出真知!
3.1 ssh主機互信
1. 在3臺server生成各自的創(chuàng)建 RSA密鑰和公鑰;
ssh-keygen -t rsa |
2. 整合公鑰文件,將所有的key文件匯總到內(nèi)網(wǎng)server的認證文件中;
ssh svnServer cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys ssh DBServer cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys ssh WebServer cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys |
3. 分發(fā)整合的key認證文件,到各server上;
scp ~/.ssh/authorized_keys DBServer :~/.ssh/ scp ~/.ssh/authorized_keys WebServer :~/.ssh/ |
4. 驗證互信
ssh DBServer |
OK,主機互信搞定,各臺server已經(jīng)可以“免簽”了。
3.2 編寫腳本
腳本分為兩層,svnServer上的腳本遠程調(diào)用DBServer、WebServer 上的腳本,進行環(huán)境準(zhǔn)備、安裝部署。
1pre_env.sh,遠程調(diào)用shell腳本,實現(xiàn)停止web應(yīng)用服務(wù);刪除舊文件;
2copy_build.sh,通過scp命令,將應(yīng)用直接從svnServer上傳到web和DBserver上;
3deploy_db.sh、4deploy_web.sh
四、總結(jié)
通過編寫該腳本,規(guī)避了誤操作的風(fēng)險,提高了部署的效率。同時也實現(xiàn)了學(xué)有所用!
本文名稱:通過ssh主機互信打通內(nèi)、外網(wǎng),使用shell腳本自動部署測試環(huán)境
網(wǎng)站鏈接:http://www.rwnh.cn/article8/psggip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、網(wǎng)站導(dǎo)航、關(guān)鍵詞優(yōu)化、建站公司、網(wǎng)頁設(shè)計公司、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)