原創(chuàng)文章,歡迎轉(zhuǎn)載。轉(zhuǎn)載請注明:轉(zhuǎn)載自IT人故事會,謝謝!
為成華等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及成華網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站建設(shè)、做網(wǎng)站、成華網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
原文鏈接地址:『高級篇』docker之了解CICD和DevOps(41)之前已經(jīng)說了mesos,swarm,k8s都部署了,k8s因為機器的問題,我沒做部署,有了微服務(wù)和服務(wù)編排的基礎(chǔ),我們可以一起了解下CICD和DevOps,之前在中級篇的文章講過,老鐵一起回顧學(xué)習(xí)下。
<!--more-->
從痛苦中產(chǎn)生,小公司人手少。開發(fā)人員每天需要處理bug和開發(fā)任務(wù),當(dāng)?shù)竭_一個階段的時候,開發(fā)人員我說bug修復(fù)可以進行測試了,告訴QA,QA進入內(nèi)網(wǎng)執(zhí)行部署的腳本,發(fā)布到測試環(huán)境,告訴我發(fā)布失敗了,告訴編譯有個錯誤,報錯的代碼是其他人寫的,需要喊過來其他人,看看誰的問題,很快其中一個人說是他寫的忘了提交一個類了, 提交代碼后告訴我,我告訴QA好了可以重新發(fā)布了,起初一兩次大家都忍了,后來發(fā)現(xiàn)粗心的老鐵經(jīng)常會發(fā)生這個或者那樣的錯誤,都有人少提交類或者少提交一個配置導(dǎo)致內(nèi)網(wǎng)的發(fā)布失敗,于是就想了一個辦法,找了個專用的服務(wù)器,每次提交代碼的時候,都會觸發(fā)一個webhook,將代碼重新一遍,如果發(fā)現(xiàn)編譯錯誤,都會編譯對應(yīng)的代碼提交者,這就是最初的持續(xù)集成了。(老司機可能都遇見過,其實這個就是最早的持續(xù)集成)
運行時異常
雖然之前的編譯的異常解決了,但是運行時異常又凸顯出來了,所以就在這個基礎(chǔ)上增加了代碼的風(fēng)格檢查,單元測試,覆蓋率,加入阿里巴巴編碼規(guī)范插件啊,這里要吐槽下,據(jù)說代碼規(guī)范都是給外部人看的,內(nèi)部人都不遵守,其實規(guī)范很好,遵守風(fēng)格統(tǒng)一利于維護,不要挖坑啊老鐵。
手動發(fā)布
新項目,要申請資源,申請端口,配置nginx。老項目也不簡單,在二線城市也沒運維,stop下線服務(wù)。
手動部署
上傳代碼,重啟,驗證,上線。其實都是重復(fù)性的工作,但是這個工作要非常的消息,萬一遇見個傻叉rm -rf ,大家都喝西北風(fēng)了。
從細節(jié)慢慢的去優(yōu)化,優(yōu)化每個環(huán)節(jié),為了讓流程更順暢更優(yōu)雅,這也就是CICD它的由來。
CI 是持續(xù)集成。CD 是持續(xù)部署。
在傳統(tǒng)軟件中,集成基本是項目的收尾階段,我們花費幾周或者數(shù)月的時間。持續(xù)集成就是把集成提前了,搞到了開發(fā)階段,一邊開發(fā)一邊集成。讓構(gòu)建和測試經(jīng)常反復(fù)的一個過程。持續(xù)集成一般是多個開發(fā)者,為同一個產(chǎn)品同時編寫代碼。把代碼放到一個源數(shù)據(jù)庫的地方,然后開發(fā)人員通過一個CI-server的工具進行構(gòu)建和集成。持續(xù)集成首先要求開發(fā)者需要自測代碼,分別測試各自的代碼,保證他們能夠正常的工作,測試也成為單元測試,當(dāng)所有的代碼都順利的測試通過,就認為他們就順利的集成到一起了。代碼的表現(xiàn)也是之前所預(yù)計的。好處是使集成不在是一個讓人頭疼的事情,軟件一直在編寫集成。在有持續(xù)集成之前,軟件的開發(fā)都是到收尾統(tǒng)一進行的。并不知道它要耗時多久,CI就是讓我們的集成融入我們?nèi)粘5墓ぷ髦小?/p>
持續(xù)部署是建立在持續(xù)集成之上的,持續(xù)部署就是開發(fā)人員在開發(fā)和測試代碼的時候,同時也在其他環(huán)境進行測試這段代碼。通常將不同的環(huán)境下的部署,叫做部署流水線。我們公司的部署流水線:開發(fā)環(huán)境,測試環(huán)境,準(zhǔn)生產(chǎn)環(huán)境,生產(chǎn)環(huán)境。根據(jù)不同的公司,不同的產(chǎn)品,不同的團隊而變化,所有的代碼會經(jīng)過前一個測試,才會進入下一個流水線中。通過這種方式,開發(fā)人員提交代碼后,都是自動的完成的。這個過程叫持續(xù)部署。
更好的去優(yōu)化開發(fā),運維,測試的流程。使開發(fā)和運維通過高度自動化的工具,來使得的軟件發(fā)布和構(gòu)建更加的快捷頻繁可靠。Devops其實是CICD思想的延伸,如果沒有CICD其實DevOps就是空中樓閣,沒有一點意義,CICD為基礎(chǔ)優(yōu)化開發(fā)和運維測試的所有環(huán)節(jié)。DevOps包含的東西很多,落地方案也是五花八門。
PS:CICD和DevOps有了進一步的認識,下次開始針對CICD做個環(huán)境跑跑實踐一下。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
名稱欄目:『高級篇』docker之了解CICD和DevOps(41)-創(chuàng)新互聯(lián)
URL鏈接:http://jinyejixie.com/article48/pgdhp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、關(guān)鍵詞優(yōu)化、全網(wǎng)營銷推廣、App開發(fā)、自適應(yīng)網(wǎng)站、服務(wù)器托管
聲明:本網(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)