免费黄动漫无码在线观看犹物影视|伊人久久综合一本超碰|国产在线精品一区二区三区不卡|国产女主播久久一区二区免费|

DevOps概述

云計(jì)算團(tuán)隊(duì) 2020-03-16

首先看下DevOps的定義:

DevOps(英文Development和Operations的組合)是一組過(guò)程、方法與系統(tǒng)的統(tǒng)稱,用于促進(jìn)開(kāi)發(fā)(應(yīng)用程序/軟件工程)、技術(shù)運(yùn)營(yíng)和質(zhì)量保障(QA)部門之間的溝通、協(xié)作與整合。它的出現(xiàn)是由于軟件行業(yè)日益清晰地認(rèn)識(shí)到:為了按時(shí)交付軟件產(chǎn)品和服務(wù),開(kāi)發(fā)和運(yùn)營(yíng)工作必須緊密合作。

對(duì)于DevOps的提出已經(jīng)很多年,其主要的推動(dòng)來(lái)自兩個(gè)方面:

1. 業(yè)務(wù)和需求驅(qū)動(dòng)下,推動(dòng)敏捷方法論,敏捷下需要更加短周期,更快的發(fā)布和交付。

2. 技術(shù)和運(yùn)維部門需要銜接,在PaaS和容器技術(shù)發(fā)展下,進(jìn)一步推動(dòng)這部分陷阱的自動(dòng)化。

雖然是三方交融的地方為DevOps的內(nèi)容,但是可以看到DevOps本身更多的是要解決兩大類協(xié)同和自動(dòng)化的問(wèn)題,其一是開(kāi)發(fā)部門和QA協(xié)同,其二是開(kāi)發(fā)部門和運(yùn)維的協(xié)同。

1. 第一個(gè)問(wèn)題的解決:已有的持續(xù)集成方法論。

2. 第二個(gè)問(wèn)題的解決:當(dāng)前由云平臺(tái),微服務(wù)架構(gòu),容器技術(shù)發(fā)展推動(dòng)的自動(dòng)化發(fā)布和監(jiān)控運(yùn)維。

把上面思路理清楚后,對(duì)于DevOps要做或需要解決的事情也就更加明確的:

1. 實(shí)現(xiàn)軟件和硬件基礎(chǔ)設(shè)施(云平臺(tái)資源)的對(duì)接(自動(dòng)部署,動(dòng)態(tài)擴(kuò)展)-PaaS,Docker

2. 實(shí)現(xiàn)不同環(huán)境間的自動(dòng)遷移 - 持續(xù)集成+自動(dòng)化遷移

3. 能夠滿足更加高頻率的發(fā)布節(jié)奏,單次發(fā)布更加快速 - 持續(xù)集成

4. 能將QA和QC部分檢驗(yàn)和審查工作自動(dòng)銜接到發(fā)布和交付過(guò)程 - 自動(dòng)化測(cè)試,自動(dòng)化監(jiān)控

要做好DevOps基于上面的分析就可以從持續(xù)集成和PaaS平臺(tái)融合兩方面來(lái)談:

● DevOps和持續(xù)集成

對(duì)于持續(xù)集成,這個(gè)沒(méi)有提DevOps概念的時(shí)候也在做持續(xù)集成,通過(guò)持續(xù)集成真正實(shí)現(xiàn)了版本和配置管理,單元測(cè)試,自動(dòng)構(gòu)建,環(huán)境遷移和配置修改,集成順序規(guī)劃這些關(guān)鍵內(nèi)容。比如我們常說(shuō)的一個(gè)工具組合:Jenkins,Maven,Ant,Junit,SubVersion。為了更好持續(xù)異地協(xié)同開(kāi)發(fā),以及后續(xù)和公有云PaaS融合,版本庫(kù)可以轉(zhuǎn)到GitLab或GitHub上面。

在持續(xù)集成里面我們經(jīng)常會(huì)談一個(gè)重點(diǎn),即業(yè)務(wù)系統(tǒng)是基于組件化架構(gòu)的,即各個(gè)組件可以獨(dú)立管理和部署,組件之間通過(guò)服務(wù)接口松耦合。只有這樣才能將后續(xù)增量發(fā)布影響降低到最小。這個(gè)概念現(xiàn)在轉(zhuǎn)到微服務(wù)架構(gòu)里面來(lái)進(jìn)一步實(shí)現(xiàn)。

● DevOps和PaaS平臺(tái)融合

對(duì)于和PaaS平臺(tái)融合是DevOps的第二個(gè)內(nèi)容,我們希望的就是我們?cè)跍y(cè)試態(tài)測(cè)試和驗(yàn)證完成的部署包能夠自動(dòng)的交付和遷移到生產(chǎn)環(huán)境的托管資源中。在這里就涉及到PaaS平臺(tái)提供的自動(dòng)部署和托管,資源動(dòng)態(tài)管理等方面的能力。

比較重的:Cloudfoundry或Cloudify能提供完整的解決方案。

比較輕的:我們可以基于Docker容器技術(shù)+Kubernetes+Puppets來(lái)實(shí)現(xiàn)自動(dòng)化和動(dòng)態(tài)資源管理。

在PaaS平臺(tái)下,由于部署和資源的動(dòng)態(tài)管理都被PaaS平臺(tái)完全接管,因此更加需要整個(gè)平臺(tái)必須提供完整的日志管理,傳統(tǒng)IT網(wǎng)管,中間件資源池監(jiān)控,包括到APM層性能分析的完整解決方案和工具集。要實(shí)現(xiàn)這些你可以在監(jiān)控方面用Nagios或zabbix解決方案。日志管理和分析可以用ELK方案,整個(gè)過(guò)程中的自動(dòng)化腳本用Puppet等。

一個(gè)DevOps是否執(zhí)行的好的基礎(chǔ)指導(dǎo)是敏捷和持續(xù)集成的方法論,難點(diǎn)在多版本管理和微服務(wù)架構(gòu)設(shè)計(jì)(組件劃分是否合理)和后期的監(jiān)控運(yùn)維。

返回上頁(yè)