掃二維碼與項(xiàng)目經(jīng)理溝通
我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
devops是什么? DevOps維基百科定義 DevOps(Development和Operations的組合詞)是一種重視“軟件開發(fā)人員(Dev)”和“IT運(yùn)維技術(shù)人員(Ops)”之間溝通合作的文化、運(yùn)動或慣例。透過自動化“軟件交付”和“架構(gòu)變更”的流程,來使得構(gòu)建、測試、發(fā)布軟件能夠更加地快捷、頻繁和可靠。
如果從字面上來理解,DevOps 只是Dev(開發(fā)人員)+Ops(運(yùn)維人員),實(shí)際上,它是一組過程、方法與系統(tǒng)的統(tǒng)稱,其概念從2009 年首次提出發(fā)展到現(xiàn)在,內(nèi)容非常豐富,有理論也有實(shí)踐,包括組織文化、自動化、精益、反饋和分享等不同方面。
那企業(yè)為什么需要DevOps,DevOps有什么依賴?
1、為了抓住商業(yè)機(jī)會,業(yè)務(wù)需要快速迭代,不斷試錯(cuò),因此,企業(yè)需要依賴擁有持續(xù)交付的能力,這些不僅包括技術(shù)需求還包括產(chǎn)品的需求,如何能擁有持續(xù)交付的能力,大而全的架構(gòu)因?yàn)樾实拖?,顯然是不合適的。于是演變出微服務(wù)架構(gòu)來滿足需求,通過把系統(tǒng)劃分出一個(gè)個(gè)獨(dú)立的個(gè)體,每個(gè)個(gè)體服務(wù)的設(shè)計(jì)依賴需要通過12 要素的原則來規(guī)范完成。
2、系統(tǒng)被分成了幾十個(gè)甚至幾百個(gè)服務(wù)組件,則需要借助DevOps 才能很好地滿足業(yè)務(wù)協(xié)作和發(fā)布等流程。
3、DevOps 的有效實(shí)施需要依賴一定的土壤,即敏捷的基礎(chǔ)設(shè)施服務(wù),現(xiàn)實(shí)只有云計(jì)算的模式才能滿足整體要求。
Devops詳解
DevOps來源于敏捷開發(fā)的持續(xù)發(fā)展,是軟件開發(fā)管理領(lǐng)域繼敏捷開發(fā)之后的又一次升級。敏捷開發(fā)方法的推廣和實(shí)施,使軟件交付過程中的開發(fā)和測試過程有效的整合,形成整體進(jìn)行快速有效的迭代交付,但在軟件交付客戶使用之前,或者使用過程中,還包括集成、部署、運(yùn)維等環(huán)節(jié),需要進(jìn)一步優(yōu)化交付效率。因此,DevOps的產(chǎn)生將敏捷的相關(guān)理念逐步擴(kuò)展到運(yùn)維側(cè),俗稱解決軟件交付“最后一公里”的問題。
核心詞匯分別為合作、自動化、文化。
NetOps工程師的興起
現(xiàn)在很多人都在利用DevOps 技術(shù),而這正在導(dǎo)致一種新型工程師的興起。NetOps的目標(biāo)是使用這些技術(shù)對網(wǎng)絡(luò)進(jìn)行快速準(zhǔn)確的更改,以支持不斷變化的業(yè)務(wù)應(yīng)用程序。
NetOps工程師的出現(xiàn)
最常見的是最開始通過傳統(tǒng)命令行界面了解網(wǎng)絡(luò)的網(wǎng)絡(luò)工程師。這些工程師可能會對手動更改設(shè)備配置的緩慢且容易出錯(cuò)的過程感到沮喪。這些候選人通過學(xué)習(xí)使他們更有效的軟件技術(shù)開始過渡。
另一個(gè)來自對網(wǎng)絡(luò)感興趣的DevOps工程師。這些人有興趣將軟件開發(fā)技術(shù)應(yīng)用于網(wǎng)絡(luò)管理,可能是為了幫助一些友好的網(wǎng)絡(luò)工程師。
NetOps工程師技能
NetOps 工程師的關(guān)鍵技能包括了解網(wǎng)絡(luò)配置、網(wǎng)絡(luò)協(xié)議、軟件開發(fā)和用于NetOps的語言。了解基本的網(wǎng)絡(luò)概念有助于防止不必要的錯(cuò)誤。例如,數(shù)據(jù)中心網(wǎng)絡(luò)、企業(yè)辦公LAN環(huán)境和WAN通常存在細(xì)微但至關(guān)重要的差異。由于很多不同的網(wǎng)絡(luò)環(huán)境正在過渡到軟件定義網(wǎng)絡(luò)控制器,NetOps工程師應(yīng)該了解幕后發(fā)生的事情。
高級NetOps工程師應(yīng)該了解并應(yīng)用面向?qū)ο缶幊痰脑?、抽象層的使用以及基礎(chǔ)設(shè)施即代碼的概念來完成自動化任務(wù)。同時(shí)必須很好地理解用于網(wǎng)絡(luò)自動化的軟件開發(fā)范式、流程(包括敏捷性)、語言、工具和庫。對于軟件和網(wǎng)絡(luò),出色的故障排除技能都是必不可少的。
最后,在與網(wǎng)絡(luò)架構(gòu)師、應(yīng)用系統(tǒng)架構(gòu)師、DevOps工程師和SecOps工程師合作時(shí),需要強(qiáng)大的溝通和協(xié)作技能。良好的閱讀技能也至關(guān)重要-對于理解API文檔,并將其應(yīng)用于構(gòu)建和定制自動化系統(tǒng)。
我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流