了解最新公司動態及行業資訊
作者|趙宇(巴??厘島)
編輯| 鄧艷琴
上云后還需要運維嗎? 答案是:確實需要。
上云確實簡化了一部分運維工作。 比如傳統IT中服務器的日常運維,都是由云服務商來完成的。 然而,隨著云產品種類的不斷豐富和規模的不斷擴大,如何高效運維云資源正逐漸成為運維人員面臨的挑戰。
在12月21日結束的全球軟件開發大會(北京站)中,在“彈性工程與運維”的話題中,阿里云中級技術專家趙宇(巴力)分享了阿里經濟學的話題云運維話題。 這篇文章是基于如何在全身完全連接到云端后,實現云上數十萬個ECS實例的手動運維的實踐和經驗。
阿里云中級技術專家趙宇
云運維的四大挑戰
隨著云計算的普及和發展,越來越多的企業選擇上云。 近年來,阿里經濟全面云化,大部分企業在云運維方面遇到的問題都是類似的。 總結起來,主要來自以下四個方面:
首先是規模問題。 傳統的 和腳本管理方法在資源較小時效果很好,但在規模較大時會失效。 幾十臺機器和幾萬臺機器的人肉管理是完全不同的概念。 此外,云上資源的種類不斷豐富,云上資源管理和運維的復雜度呈指數級增長。
第二,安全問題。 阿里經濟體上云涉及上百個業務方,涉及大量運維人員。 如何更好地進行權限控制、審核和審批,既復雜又極其重要。 數據和資源是公司的資產。 過多的運維權限會增加出錯的風險,而過少的權限則會增加管理成本。 如何安全地使用云賬號和資源,給管理者帶來了極大的挑戰。
第三,效率問題。 隨著資源規模的減小,如何高效管理運維,提升研發人員的工作效率,也是云上運維必須考慮的問題。
第四,成本問題。 業務方對成本優化有顯著需求,包括資源使用者和財務人員。 希望能夠提供不同維度的資源使用賬單,為成本優化措施提供依據。
我們知道,在傳統方式下,有專門的資源運營團隊負責資源的分配,而項目開發團隊只負責資源的使用。 而且,隨著業務規模的不斷擴大,這些管理方式基本行不通。 這時候就需要通過去中心化的方式,將基本的配置管理權委托給業務項目組。 資源管理也帶來了挑戰。
事實上,阿里經濟體在云上的運維也經歷了人肉運維到標準化、數據化、流程化運維的過程。 直至2016年,內部云資源管理平臺“Zeus運維系統”雛形基本形成,實現了運維能力和體驗的標準化、流程化、系統化。 隨著資源管理規模越來越大,需求越來越多樣化,Zeus運維系統第一時間接管了云上資源的管控工作。
如何高效運維數十萬臺云服務器?
目前,Zeus運維系統管理著阿里集團內數百個業務方的20多種云產品和資源,包括數十萬個ECS實例。 除了為各業務方提供資源管理和運維能力外,還提供成本分析和修復能力。
圖:Zeus運維平臺整體架構
總體而言,Zeus運維平臺包括資源管理、系統運維、應用運維、監控管理和成本分析五個模塊。 向下通過控制臺為業務方提供服務,向上依托阿里云平臺的云監控、資源編排、運維編排、標簽體系、彈性伸縮、運維通道、財務系統管理日志服務和云服務器。 、網絡、對象存儲和許多其他云資源。
帳戶管理
由于歷史原因,Zeus運維平臺支持獨立大賬戶和管理賬戶兩種賬戶模式并存。 獨立大賬號是Zeus系統運維平臺在阿里云平臺的服務賬號。 管理著賬號下業務方的大量資源。 大客戶是我們推薦商務聚會的方式。 另外,由于是服務號,不允許業務方直接登錄,業務方只能通過崩潰入口進行操作,降低了操作失誤的風險。
對于托管賬戶,是Zeus運維平臺之前的存量運維賬戶。 為了幫助業務方更好的管理這個存量賬戶,Zeus運維平臺提供賬戶托管服務。 此庫存帳戶被授予 Zeus 服務帳戶。 管理員權限,由于托管賬號的主子賬號與群登錄系統相連,運維人員可以直接登錄進行管理。
權限管理
權限管理的主要思想是對應用進行分組,在應用組中使用角色來區分權限,給人們分配相應的應用中的角色。
我們分配應用所有者、開發、運維、安全等角色,給不同的角色賦予不同的權限。 Owner角色對申請下的資源管理具有上帝權限,同時負責審批工作; 開發人員負責日常的CI工作服務器運維,以及日常和發布前的環境測試工作; 運維人員具備在線發布審批能力; 安全人員主要負責系統運行維護工作,包括安全掃描、掃碼等安全工作。
這里所有的云資源都通過標簽掛載到對應的應用中。 通過這樣的權限管理,管理員不僅可以在人的維度上看到授權的應用,還可以在應用的維度上看到授權的應用。 人們。
資源分組
Zeus運維系統基于阿里云的標簽體系,支持按部門、環境等多維度對資源進行分類,Zeus運維系統為創建的資源打上相應的標簽,方便業務方對資源的搜索和管理。 而運維,通過標簽管理模式,可以很好的對雜亂無章的資源進行運維監控,甚至資源共享。
對于托管賬戶,可以通過API進行操作。 系統解析離線云監控消息通知,使業務方的標簽按照一定的規范設置,檢測到數據變化后同步到Zeus和CMDB。
資源交付
對于資源交付來說,最大的挑戰在于云上的資源是多地域、多類型部署的。 目前阿里云平臺上有上百種資源。 如果每一個資源都通過寫代碼和API來操作,會很復雜,效率很低。 而且大部分業務場景都不是單字投放服務器運維,一個一個組合起來需要很長時間。 業務方通常需要場景化交付。 大多數業務場景都有一個標準化的通用范式,通過場景化交付可以極大地改善資源交付的形式。
對于這種場景化的投放需求,雖然一開始是通過腳本來操作,但是耗費了大量的精力和人力,效率也比較低。 為了應對各類資源分配場景,Zeus運維系統引入了機制進行資源編排,同樣的思路是開源的。
這里,Zeus運維系統使用了阿里云提供的ROS資源編排工具,引入集團審批流程,規范和簡化資源部署。 Zeus運維系統為常用場景下的具體成本資源編排模板,通過模板按場景一鍵下發資源。 模板的形式大大提高了我們資源投放的效率,同時降低了新資源的接入門檻。
運維管理
從運維工種來看,運維也是分層的。 系統層面的補丁管理、安全掃描、安全防護等能力是平臺的能力,不需要業務方關心。 Zeus運維系統體現了這種能力后,提供了統一的管理機制。
在應用層,主要涉及資源運維和CI/CD。 Zeus運維系統應用資源運維,將常用運維動作體現為運維編排模板,使用阿里云運維編排服務進行工作流編排,支持業務方在定義運維操作的同時自定義運維操作常見運維場景。 這樣運維過程就可以積累和復制。 此外,借助底層能力,支持定時、告警、事件觸發運維操作,進一步提升運維操作效率。
在CI/CD部分,Zeus運維系統主要使用阿里巴巴集團的Aone(云效)系統,支持基于軟件包和鏡像的批量發布,并允許自定義操作。
監控報警
從信息源的角度來看,告警和監控可以分為資源監控、應用監控和服務監控。 級別越高,監控和報警的準確性越高,但通用性越低。 Zeus運維系統實現了多種告警處理方式。 通過與監控系統的集成,通過群組聯系人發送告警,如郵件、釘釘等信息; 針對人工場景,通過彈性伸縮和運維編排對接,觸發人工操作,實現人工運維工作,完成人工閉環。
診斷與維修
隨著越來越多的資源和服務被使用,內部業務方對ECS實例和網絡問題的咨詢越來越多。 為了提高解決問題的效率,運維平臺還必須具備自證清白的能力。 因此,我們通過與阿里云內部ECS、網絡、操作系統等團隊的共建,借助歷史數據生成了案例庫和知識庫,加上專家經驗,積累了診斷修復能力,一鍵診斷幫助業務方快速定位具體問題。 針對一些常見問題,將常用修復腳本可視化,提供一鍵修復能力。
以ECS實例為例,通過實例監控定位問題根源。 同時,我們提供自動修復解決方案。 同時,我們還提供運維編排的一鍵式人工修復能力。 此過程支持快照回滾。 通過該部分的建設,我們日常值班的服務量有了大幅度的提升。
成本管理
成本管理的目標主要是成本優化。 很多業務方申請了很多云服務器資源。 在使用過程中,他們發現有些機器雖然用得不多,或者CPU使用率比較低,但是卻造成了資源的浪費。 Zeus運維系統通過成本管理的建設,將成本管理的意識傳遞給業務方,推動業務方完成成本優化。
在成本管理的思路上,我們主要通過事前的卡點和活動期間的分賬能力來實現。 首先,在申請資源的時候,做一個審批檢查點。 如果請求的資源大小很高,會給出一些提示詢問資源申請是否合理。 費用分攤到相應的部門和項目組,定期向業務方提供賬單。 財務部門對部門的賬單進行分析,確定哪些項目是超出手段的,同時也鼓勵業務方優化資源使用。 . 比如是否切換到彈性伸縮來優化成本,調整資源分配大小來優化等,促進業務端從成本的角度進行優化。
總結
本文主要介紹Zeus運維系統在阿里經濟上云過程中如何高效管理云上資源的經驗。 這里給遇到同樣問題的運維人員一些參考。
會議推薦
2021年4月22-24日,QCon全球軟件開發大會(廣州站)再次恢復3天。 大會規模將在2000人左右,嘉賓陣容和話題關注度會越來越強。 目前,會議已確定12個技術議題和73位演講嘉賓。 會議內容將持續更新,感興趣的伙伴敬請關注。
掃描右側二維碼或點擊【閱讀原文】,直接進入大會官網。 更多問題請咨詢客戶總監環:(同陌陌)