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

評論