DevOps 是一種創(chuàng)建企業(yè)應(yīng)用程序的協(xié)作方法,它將軟件開(kāi)發(fā)和 IT 運(yùn)營(yíng)結(jié)合在一起。從一般意義上講,DevOps 是一種促進(jìn)組織內(nèi)軟件開(kāi)發(fā)人員和 IT 運(yùn)營(yíng)團(tuán)隊(duì)之間更好溝通和協(xié)作的理念。從狹義上講,DevOps 描述了軟件開(kāi)發(fā)的迭代過(guò)程以及企業(yè)應(yīng)用程序的可編程基礎(chǔ)架構(gòu)、部署和維護(hù)。
DevOps 已被證明是開(kāi)發(fā)和維護(hù)業(yè)務(wù)關(guān)鍵型運(yùn)營(yíng)的有效方法,但軟件開(kāi)發(fā)和 IT 運(yùn)營(yíng)并不總是協(xié)作。開(kāi)發(fā)和運(yùn)營(yíng)曾經(jīng)是孤立的功能,僅在開(kāi)發(fā)周期結(jié)束時(shí)聚集在一起,以確定如何測(cè)試和部署新應(yīng)用程序。
向 DevOps 的轉(zhuǎn)變使企業(yè)開(kāi)發(fā)和維護(hù)更容易、更快捷,使組織能夠適應(yīng)不斷變化的市場(chǎng)和運(yùn)營(yíng)需求。了解 DevOps 的演變提供了一些重要的提醒,提醒人們需要運(yùn)營(yíng)敏捷性以及協(xié)作開(kāi)發(fā)如何為您提供競(jìng)爭(zhēng)優(yōu)勢(shì)。
運(yùn)營(yíng)的經(jīng)典角色
統(tǒng)一開(kāi)發(fā)和運(yùn)營(yíng)的需求直接源于計(jì)算架構(gòu)的發(fā)展。當(dāng)我開(kāi)始我的系統(tǒng)經(jīng)理職業(yè)生涯時(shí),“系統(tǒng)”是一臺(tái)占據(jù)整個(gè)房間的 HP3000 980/100 小型計(jì)算機(jī)。型號(hào)中的 100 表示該系統(tǒng)只有一個(gè)處理器,但它在整個(gè)公司用于支持銷售、會(huì)計(jì)和倉(cāng)庫(kù);大約 60 個(gè)用戶通過(guò)啞終端連接到服務(wù)器。
運(yùn)營(yíng)部門負(fù)責(zé)負(fù)載平衡、在線備份、維護(hù)故障轉(zhuǎn)移系統(tǒng)等。運(yùn)營(yíng)部門還負(fù)責(zé)使軟件保持最新?tīng)顟B(tài),這絕非易事。軟件更新需要關(guān)閉系統(tǒng)、安裝升級(jí)和測(cè)試系統(tǒng),這個(gè)過(guò)程可能需要幾個(gè)小時(shí)的半夜。維護(hù)軟件意味著監(jiān)視和管理應(yīng)用程序、數(shù)據(jù)庫(kù)調(diào)優(yōu)和復(fù)制、作業(yè)調(diào)度軟件以及更新操作系統(tǒng)。
如今,公司對(duì)內(nèi)部服務(wù)器的依賴程度較低,而是使用云技術(shù)進(jìn)行數(shù)據(jù)存儲(chǔ)和處理。但是,一些公司仍然以相同的方式管理其數(shù)據(jù)資產(chǎn)。
應(yīng)用軟件開(kāi)發(fā)生命周期
企業(yè)軟件的最大進(jìn)步之一是軟件開(kāi)發(fā)生命周期(SDLC)的出現(xiàn),它為企業(yè)軟件開(kāi)發(fā)和維護(hù)制定了戰(zhàn)略。SDLC的各個(gè)階段包括:
計(jì)劃 – 收集信息并編寫所需規(guī)范。
設(shè)計(jì) – 創(chuàng)建屏幕的線框或草圖(即用戶體驗(yàn)或用戶界面)并為UX / U創(chuàng)建設(shè)計(jì) 開(kāi)發(fā) – 實(shí)際編碼或編寫應(yīng)用程序。
測(cè)試 – 完成后,對(duì)應(yīng)用程序執(zhí)行質(zhì)量保證測(cè)試。
部署 – 測(cè)試完成后,授予用戶對(duì)應(yīng)用程序的訪問(wèn)權(quán)限。
您可能已經(jīng)注意到,該周期在部署時(shí)結(jié)束。但是,這是對(duì)復(fù)雜過(guò)程的過(guò)度簡(jiǎn)化。部署可能會(huì)引入無(wú)數(shù)問(wèn)題,從阻止軟件在生產(chǎn)環(huán)境中運(yùn)行的 bug 到無(wú)法擴(kuò)展以滿足用戶需求。出現(xiàn)問(wèn)題時(shí),需要回滾部署,開(kāi)發(fā)人員必須解決問(wèn)題所在。對(duì)于不熟悉托管或生產(chǎn)環(huán)境設(shè)置的開(kāi)發(fā)人員來(lái)說(shuō),這可能是一個(gè)巨大的挑戰(zhàn),并導(dǎo)致效率低下和浪費(fèi)時(shí)間。
合并開(kāi)發(fā)和運(yùn)營(yíng)
企業(yè)應(yīng)用程序始終由開(kāi)發(fā)人員和運(yùn)營(yíng)人員共同驅(qū)動(dòng)。開(kāi)發(fā)人員負(fù)責(zé)創(chuàng)建實(shí)際軟件,而操作人員則管理托管環(huán)境和支持技術(shù)。過(guò)去,這導(dǎo)致了沖突。
如果開(kāi)發(fā)和操作不能協(xié)同工作,則應(yīng)用程序可能無(wú)法按需要執(zhí)行。軟件開(kāi)發(fā)人員可能不會(huì)考慮托管環(huán)境。操作人員可能不了解軟件如何在托管環(huán)境中運(yùn)行以支持使用和加載類型。更新企業(yè)應(yīng)用程序可能更具挑戰(zhàn)性,尤其是在開(kāi)發(fā)和運(yùn)營(yíng)來(lái)自不同文化的情況下。
DevOps 通過(guò)將開(kāi)發(fā)和運(yùn)營(yíng)合并到單個(gè)團(tuán)隊(duì)流程中來(lái)解決此問(wèn)題。軟件和 IT 團(tuán)隊(duì)共同實(shí)施 SDLC 的擴(kuò)展版本。使用 DevOps,流程會(huì)發(fā)生變化:
編碼
建筑
測(cè)試
包裝
部署
配置
監(jiān)測(cè)
大多數(shù)舊的 SDLC 過(guò)程都是在編碼、構(gòu)建和測(cè)試之前進(jìn)行的。應(yīng)用程序測(cè)試之后的所有內(nèi)容都是正常操作功能的一部分。使用 DevOps,您有一個(gè)團(tuán)隊(duì)一起工作,而不是兩個(gè)。這個(gè)概念是,你有一個(gè)有凝聚力的團(tuán)隊(duì),有一個(gè)通用的工具集,使流程更容易從一個(gè)流程流向下一個(gè)流程。開(kāi)發(fā)人員考慮如何在其過(guò)程中打包和發(fā)布應(yīng)用程序。標(biāo)準(zhǔn)化工具集有助于在云基礎(chǔ)架構(gòu)中自動(dòng)打包和部署應(yīng)用程序。應(yīng)用容器化等技術(shù)可以標(biāo)準(zhǔn)化應(yīng)用程序的運(yùn)行方式。
開(kāi)發(fā)運(yùn)營(yíng)的優(yōu)勢(shì)
DevOps 使應(yīng)用程序開(kāi)發(fā)和維護(hù)更加高效。軟件開(kāi)發(fā)人員可以專注于編碼。DevOps 工程師專注于打包、部署和應(yīng)用程序維護(hù),因此開(kāi)發(fā)人員不再需要在部署失敗時(shí)進(jìn)行錯(cuò)誤測(cè)試。他們可以專注于編碼。
采用 DevOps 作為應(yīng)用程序開(kāi)發(fā)方法有幾個(gè)好處:
更好的應(yīng)用程序穩(wěn)定性和更少的最終用途錯(cuò)誤。
通過(guò)更短的響應(yīng)時(shí)間提高軟件性能。
更可靠的基礎(chǔ)架構(gòu),因?yàn)閼?yīng)用程序是為基礎(chǔ)架構(gòu)開(kāi)發(fā)的,并且可以將服務(wù)設(shè)置為冗余甚至自我修復(fù)。
由于新版本的打包和發(fā)布可以自動(dòng)化,因此部署速度更快,使其更容易。
出現(xiàn)問(wèn)題時(shí)的恢復(fù)時(shí)間較短,因?yàn)橄到y(tǒng)使用云原生監(jiān)視工具。
更好地利用開(kāi)發(fā)資源,因?yàn)殚_(kāi)發(fā)人員可以專注于應(yīng)用程序開(kāi)發(fā),而無(wú)需擔(dān)心部署和維護(hù)。
由于應(yīng)用程序的打包和部署是自動(dòng)化的,因此人為錯(cuò)誤更少。
擁抱 DevOps 既是擁抱 DevOps 理念,也是新方法論。DevOps 旨在通過(guò)協(xié)作、自動(dòng)化、集成以及持續(xù)的測(cè)試和監(jiān)視來(lái)持續(xù)交付更好的應(yīng)用程序。實(shí)施 DevOps 并非易事。這是一種文化轉(zhuǎn)變,需要一支才華橫溢的團(tuán)隊(duì)和堅(jiān)定的承諾,這是一種開(kāi)發(fā)和部署軟件的新方式。但是組織,尤其是那些不是科技公司的組織,不需要自己做所有的工作。公司可以通過(guò)外包 DevOps 并與已經(jīng)擁有文化的專業(yè)人士合作來(lái)獲得所有好處。
感覺(jué)每隔幾個(gè)月就會(huì)有一個(gè)新技術(shù)流行語(yǔ),這可能使人很難確定投資哪些領(lǐng)域。但是當(dāng)涉及到DevOps時(shí),好處是真實(shí)而有形的。這不是DevOps是否會(huì)成為開(kāi)發(fā)和運(yùn)營(yíng)的新標(biāo)準(zhǔn)的問(wèn)題,而是何時(shí)的問(wèn)題。
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
19547瀏覽量
231868 -
服務(wù)器
+關(guān)注
關(guān)注
12文章
9432瀏覽量
86506 -
應(yīng)用程序
+關(guān)注
關(guān)注
38文章
3305瀏覽量
58210
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
人工智能發(fā)展第一階段
TD-SCDMA規(guī)模測(cè)試第一階段被曝結(jié)果良好
大數(shù)據(jù)應(yīng)用崛起 下一階段發(fā)展方向在哪里?
高通演示面向下一階段全球5G新空口(5G NR)標(biāo)準(zhǔn)的多項(xiàng)先進(jìn)5G技術(shù)
中國(guó)移動(dòng)的下一階段的“4大發(fā)展戰(zhàn)略”是什么?主要是5G和AI
人工智能產(chǎn)業(yè)發(fā)展的三大熱點(diǎn)和下一階段的趨勢(shì)預(yù)期淺析
2018年是自動(dòng)駕駛汽車發(fā)展受挫的一年 它還沒(méi)有成熟到能進(jìn)入下一階段
5G應(yīng)用和打造平臺(tái)生態(tài)將成為下一階段工業(yè)4.0發(fā)展的趨勢(shì)
華為建議將6GHz作為5G下一階段發(fā)展的關(guān)鍵頻譜
IBM 的混合云平臺(tái) 為企業(yè)下一階段的數(shù)字化轉(zhuǎn)型保駕護(hù)航
全球最大CDN服務(wù)商:邊緣計(jì)算將邁進(jìn)下一階段
高通的5G毫米波技術(shù)或?qū)⑹?b class='flag-5'>下一階段5G發(fā)展的趨勢(shì)
物聯(lián)網(wǎng)的大規(guī)模IO——第一階段

評(píng)論