■姜 晨
采用自動化技術(shù)意味著可以提供更快、更好的服務(wù)。那么,當(dāng)企業(yè)在云計算基礎(chǔ)設(shè)施中采用自動化解決方案做出決策時,將會期待什么?采用自動化技術(shù)完成重復(fù)而平凡的任務(wù),可以為工作人員節(jié)省更多的時間,可以讓他們?nèi)ネ瓿杀裙芾碓朴嬎慊A(chǔ)設(shè)施更有意義的任務(wù)和工作。
人們需要了解自動化對他們工作帶來的影響,以及自動化是否真的會讓DevOps人員、云計算工程師或解決方案架構(gòu)師的工作面臨被取代的風(fēng)險。
美國市場上有大約79.4萬名DevOps工程師。根據(jù)之前發(fā)布的一份“2020年技能提升:企業(yè)DevOps技能”調(diào)查報告,招聘熟練的DevOps工程師并留住他們是企業(yè)面臨的主要挑戰(zhàn)之一。人力資源經(jīng)理往往在招聘人才方面面臨更大的壓力。
并且這方面的需求只會增長,這是因為只是建立流暢的持續(xù)集成(CI)/持續(xù)交付(CD)管道已不再足夠,而DevOps工程師需要執(zhí)行越來越多的重復(fù)性任務(wù)。即使采用自動化技術(shù)承擔(dān)了其中一些任務(wù),也遠(yuǎn)遠(yuǎn)不足以解決DevOps領(lǐng)域的技能短缺問題。實際上,它可以幫助企業(yè)過渡到一個更可持續(xù)的過程。
編寫代碼也將變得自動化。這種方法已經(jīng)得到了行業(yè)領(lǐng)導(dǎo)者的支持,例如GitHub公司首席執(zhí)行官Chris Wanstrath預(yù)計未來的編程將會完全實現(xiàn)自動化。
Dev9公司首席執(zhí)行官Will Iverson對其觀點表示認(rèn)同,他使用自動化來推動稱之為“持續(xù)開發(fā)”的流程,在這個流程中,開發(fā)團隊編寫代碼,人工智能進行自動化測試和部署。這加快了交付速度,并最大限度地降低了勞動力成本。
如果企業(yè)使用云計算基礎(chǔ)設(shè)施和云服務(wù),需要花費時間進行適當(dāng)管理。因此,企業(yè)需要聘請軟件工程師并將這些工作交給他們。
但是,如果企業(yè)從未采用云平臺及其托管服務(wù)怎么辦?企業(yè)必須自己構(gòu)建一個云平臺,并雇傭更多的工程師來處理其基礎(chǔ)設(shè)施的完整性、安全性、可擴展性等。例如AWS公司為其用戶解決了這個問題,然后使用托管服務(wù)自動化其解決方案。
使用公共云服務(wù)的企業(yè)因此不再需要構(gòu)建一支由數(shù)據(jù)中心、虛擬化、存儲和數(shù)據(jù)庫管理員等專家構(gòu)建的團隊。
DevOps可以讓團隊開發(fā)產(chǎn)品并減少瓶頸,但如果沒有自動構(gòu)建或測試,這是不可能的。自從DevOps誕生以來,自動化一直是其基本支柱,并且它是有效的。
在發(fā)布的2021年DevOps狀況報告中,絕大多數(shù)(97%)在DevOps旅程中取得進展的企業(yè)都認(rèn)為自動化提高了他們的工作質(zhì)量,但隨后有人批評DevOps為“解雇很多人”提供了理由。
由于人們普遍關(guān)注自動化如何影響IT行業(yè)以外的工作崗位,這種觀點受到了廣泛關(guān)注。根據(jù)世界經(jīng)濟論壇估計,到2025年,自動化技術(shù)將為全球帶來1 200萬個以上就業(yè)崗位,屆時將超過它所取代的工作崗位。
企業(yè)需要將這種開發(fā)文化與業(yè)務(wù)中發(fā)生的所有流程協(xié)調(diào)一致,并開發(fā)云原生解決方案,確保關(guān)鍵客戶服務(wù)實際上得到更好的自動化和編排。
以上所有這些都是自動化無法取代人類的原因,但它會為人們爭取更多的時間。
對于負(fù)責(zé)管理云支出的人員來說,可能知道他們投入了多少時間和精力。以下是大多數(shù)客戶在開始使用自動化之前遵循的典型成本優(yōu)化順序:
1.在特定時間點對云計算成本進行快照;
2.將成本分配給各個團隊或部門,以了解它們的來源;
3.確定使用和增長模式,以明確哪些成本是合理的,哪些是適合優(yōu)化的成本;
4.深入檢查基礎(chǔ)設(shè)施,以檢查是否可以消除任何成本(如廢棄的項目、影子IT項目或未使用卻仍在運行的實例);
5.檢查團隊使用的虛擬機和其他資源,以檢查是否過度配置或沒有充分利用;
6.提出優(yōu)化計劃,并聯(lián)系工程團隊進行驗收和確認(rèn);
7.盡最大努力讓工程師相信,在云資源方面,成本與性能同樣重要;
8.一旦一切都得到批準(zhǔn),實施基礎(chǔ)設(shè)施變更;
9.考慮未來,分析需求并開始規(guī)劃將如何獲得額外容量或刪除不再需要的資源;
10.查看云計算提供商的報價以了解他們的定價、預(yù)測成本、預(yù)先預(yù)留容量或與供應(yīng)商協(xié)商批量折扣。
11.為團隊制定規(guī)則,以充分利用購買資源提供的折扣;
12.希望云計算賬單在月底達(dá)到預(yù)期的水平。
很明顯,分配、理解、分析和預(yù)測云計算成本需要大量時間。
而且這不是一個月做一次的事情。為了合理地節(jié)約成本,需要不斷地應(yīng)用基礎(chǔ)設(shè)施更改、增加新資源,以及許多以便構(gòu)建符合當(dāng)前需求的經(jīng)濟高效的基礎(chǔ)設(shè)施的其他事情。
在通常情況下,采用自動化解決方案可以處理以下任務(wù):
選擇最具成本效益的實例類型和大小以滿足應(yīng)用程序的需求;
自動擴展云計算資源以處理需求上升和下降;
移除未用于削減成本的資源。
通過更好地處理潛在的中斷來自動化Spot實例的使用,
幫助避免其他領(lǐng)域的成本——自動化存儲和備份、安全性以及對配置和設(shè)置的各種更改。
最重要的是,自動化意味著所有這些更改都是實時應(yīng)用的。這就是掌握云成本優(yōu)化的方法,這是一個時間點練習(xí)。
所有這些都可以在不添加任何重復(fù)任務(wù)的情況下完成。該解決方案全天候關(guān)注應(yīng)用程序和可用資源,以識別新的節(jié)省成本的機會,并立即擴大或縮小規(guī)模。
成本監(jiān)控和報告等人工實施的云成本優(yōu)化方法會占用人們大量的時間,而自動化的云優(yōu)化可以使人們免于執(zhí)行不喜歡的重復(fù)性任務(wù)。