正如他們崗位職能說明的那樣,DevOps團隊的工作人員要比幾乎所有其他IT人員更了解云計算。DevOps團隊知道如何針對新部署的軟件進行應(yīng)用配置,他們知道如何與舊系統(tǒng)通過接口進行交互。當(dāng)然,這也使他們非常善于對傳統(tǒng)軟件實施云計算遷移。
DevOps團隊的人員都知道傳統(tǒng)文件系統(tǒng)、分布式文件系統(tǒng)以及對象存儲(例如亞馬遜簡單存儲服務(wù))的來龍去脈。他們還知道如何處理大規(guī)模分析應(yīng)用和非關(guān)系型數(shù)據(jù)庫。他們可以幫助用戶把現(xiàn)有應(yīng)用邏輯遷移至可擴展并完全在云計算中運行的服務(wù)。
企業(yè)可以通過在云計算中的虛擬機上運行所有的應(yīng)用來簡化應(yīng)用從傳統(tǒng)硬件到云計算的遷移工作。但是,更好的辦法是真正地把所有邏輯業(yè)務(wù)完全通過網(wǎng)絡(luò)規(guī)模級技術(shù)來實現(xiàn)(通常每次一小部分)。DevOps團隊能夠幫助處理負(fù)載平衡、容錯、域名系統(tǒng)延遲以及狀態(tài)檢查等問題。
此外,DevOps團隊通常被要求提交分析報告。這是因為他們擁有所有的信息,他們能夠訪問所有的底層基礎(chǔ)數(shù)據(jù),其中包括流量數(shù)據(jù)和日志分析記錄。這種類型的數(shù)據(jù)在評價應(yīng)用運行性能和尋找瓶頸所在時時非常有用的。DevOps人員能夠幫助針對每一次部署發(fā)布進行部署管理和bug追蹤。此外,他們還能夠有助于確定每個發(fā)布的速度變化和性能差異。
DevOps團隊的強大工具
即便是具有最高度功能化的DevOps團隊也是需要第三方工具來管理諸如云計算這類的分布式環(huán)境。對于這樣的環(huán)境來說,某些工具是特別有用的。
諸如FlowDock或HipChat這樣的實用工具能夠幫助開發(fā)團隊的成員互相以及與DevOps人員保持聯(lián)系。諸如Asana或Basecamp這類服務(wù)能夠有助于跟蹤開發(fā)任務(wù)以及在應(yīng)用發(fā)布中的注意事項。
諸如Freshdesk、Zendesk或Get Satisfaction這樣以客戶為中心的支持門戶網(wǎng)站可讓用戶直接與管理層或開發(fā)團隊進行需求溝通。這將有助于觸發(fā)新的或改進的功能,并確保客戶的需求能夠得到滿足。一個DevOps團隊能夠幫助建立這些服務(wù),并讓團隊成員了解相關(guān)技術(shù)。
能夠做到這一點的人
如果您希望確保有人能夠編寫出能夠經(jīng)受測試的高質(zhì)量代碼,那么你可能需要在代碼發(fā)生問題時就讓程序員從床上爬起來解bug。而一個DevOps團隊并不希望在半夜三更被一個電話叫醒,所以他們希望確保擁有所有的工具,從而確保有盡可能多的任務(wù)能夠?qū)崿F(xiàn)自動化實施。
如果有一臺服務(wù)器死機,就應(yīng)立即更換并,如有可能還需保留所有相關(guān)的日志以供日后分析。此時,試圖修復(fù)服務(wù)器將是不明智的;當(dāng)自修復(fù)系統(tǒng)檢測到問題時,企業(yè)用戶可以非常容易地使用一個自動觸發(fā)的簡單API調(diào)用來替換它們。而異常檢測可向用戶提前提出系統(tǒng)中存在的潛在風(fēng)險因素或泄漏警告。
DevOps團隊的成員需要成為云計算和云計算服務(wù)配置的權(quán)威專家。他們需要了解非關(guān)系型數(shù)據(jù)庫的優(yōu)勢,如有需要還應(yīng)知道如何高效地擴展關(guān)系型數(shù)據(jù)庫。他們應(yīng)能夠向開發(fā)人員展示他們應(yīng)用的有問題部分,并確定應(yīng)在哪一種類型硬件上運行應(yīng)用的每一個部分,從而幫助開發(fā)人員實現(xiàn)成功。他們可通過架構(gòu)圖來幫助確保用戶系統(tǒng)實現(xiàn)黃金分割——一方面可確保用戶應(yīng)用的容錯性能,另一方面也不會讓應(yīng)用運行變得緩慢。他們將能夠識別算法,區(qū)分能夠?qū)崿F(xiàn)擴展和不能擴展的算法,從而確定資源容量擴展是否適當(dāng)。