天天看點

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

演講嘉賓簡介:吳君印,阿裡雲資深技術專家。負責ECS整體服務層面的技術和産品架構工作,并負責阿裡雲智能内部OnECS的技術和産品架構工作,包括産品ECS雲助手,運維編排OOS,資源編排ROS以及内部OnECS産品宙斯,緻力于打造以ECS為中心的系統管理、自動化和DevOps體驗。

以下内容根據演講視訊以及PPT整理而成。

觀看回放 更多課程請進入“ 玩轉ECS詳情頁

”了解

本次分享主要圍繞以下三個方面:

一、雲上部署和運維的特點
    二、資源編排ROS
    三、運維編排OOS
           

今天主要分享的内容是雲上自動化部署和運維的正确姿勢,下面先來看看雲上部署相比于傳統的RDC部署有哪些不同。

一、雲上部署和運維的特點

無論是部署還是運維,在雲上都有如下四個特點:

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

首先,可重複。在雲上部署相對于傳統RDC部署而言更加靈活,隻需要編寫一次模版就可以随時随地拉起一套環境,做到一鍵部署。目前有兩種類型的環境部署,一種是測試環境、預發環境、生産環境。第二種是在不同地域進行部署,如北京地域、上海地域以及杭州地域。

第二點,多環境保持一緻。因為使用的是相同的模版進行部署,所有環境部署出來的結果都一樣,這樣可以避免人為錯誤,避免問題排查時的環境影響,環境造成的問題往往是最難排查的問題之一。

第三點,可審計。所有操作均通過API,所有API操作都可以被審計,內建操作審計服務ActionTrail即可。

第四點是DevOps。從環境部署到應用部署都模闆化,版本管理使用Git,可以做代碼評審、代碼復原。

資源編排ROS和運維編排OOS

阿裡雲針對雲上部署和運維特點,推出了兩個産品,包括資源編排ROS(Resource Orchestration Service)——解決自動化部署問題,運維編排OOS(Operation Orchestration Service)——解決自動化運維問題。兩款編排産品除了支援ECS的執行個體,還支援其它阿裡雲的産品,如負載均衡,關系型資料庫RDS,對象存儲OSS等。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

二、資源編排ROS

資源編排ROS的典型場景

資源編排ROS的典型場景主要有四種:

• 第一種是部署模版,資源編排ROS是通過模版方式達到可以重複部署的目的,使用模版可以在任何時間任何地點拉起一套環境。

• 第二種是MSP、ISV提供自己的部署模版,可以一鍵開出複雜的業務系統,如SAP HANA等系統,将部署時間縮短為幾個小時。由于雲上的環境都是标準的,隻要有測試通過後的模版就可以在不同的環境、不同的賬号中重複部署。

• 第三是解決方案中心,阿裡雲通過自身多年服務客戶和雙11的經驗,總結了大量的最佳實踐,在解決方案中心中提供了很多高品質的模版,支援開箱即用。

• 第四是CI/CD內建,在DevOps開發模式下,隻有将部署模版放到CI/CD中才能打造DevOps的開發模式,輕松的做到藍綠部署,并且支援阿裡雲雲效。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

ROS控制台及操作示範

下圖是資源編排ROS首頁

https://rosnext.console.aliyun.com/

,上方對ROS産品進行了簡單的介紹;下方是常見的部署架構作為示例模版。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

左側菜單欄中有“我的模版”和“模版示例”,其中我的模版是需要自定義的模版,模版示例中提供了大量常見的部署形式,如Jenkins、Kafka等。解決方案中心中是由阿裡雲解決方案架構師團隊、最佳實踐團隊、各業務方團隊和資源編排團隊合作共建,将阿裡雲多年沉澱的最佳實踐和針對各種場景的解決方案沉澱為資編排源模版,使用者可以使用這些最佳實踐模版使得雲上部署更加安全高效。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

“資源類型”子產品中展示了ROS支援的阿裡雲雲産品。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

下面以建構我的模版LNMP-deom-1作為例子,模版以JSON格式表達,也支援YAML格式,最重要的是,還提供了可視化的架構圖。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

可以發現所有的資源都在VPC内部,包括關系型資料庫RDS和ECS執行個體。圖中兩個ECS執行個體挂在負載均衡LoadBalance下面。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

接着可以使用此模版建立資源棧,之後通過事件tab知道每一步建立步驟。在資源tab中看到所有被模版建立的資源,隻需要點選資源ID,就可以打開執行個體詳情頁面。在輸出tab在有顯示一個網站連結,可以發現此次網站部署成功。參數tab中提供了每次模版的參數。當使用者手動修改一些資源,與模版出現不一緻時,可以使用檢查資源偏差檢視不同點。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

三、運維編排OOS

運維編排OOS的典型場景

運維編排OOS的典型場景同樣分為四種:

• 首先是批量操作執行個體和執行遠端指令,例如啟動、停止等,相比于其它方式無需密碼,無需登入,無需使用跳闆機,且無需擔心安全問題,運維編排使用了阿裡雲RAM進行控制。

• 第二種場景是定時運維,在固定的時間執行制定的指令,相當于雲上Cron服務,并且免托管,分布式。

• 第三種場景是支援報警和事件驅動運維,當某個事件發生時自動觸發告警任務。

• 第四是提供大量豐富的公共模版,阿裡雲總結了大量的典型運維場景,并将總結成果開源到了Github上,歡迎大家貢獻優質模版,共同打造運維社群。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

OOS控制台及操作示範

下圖是運維編排OOS首頁

https://oos.console.aliyun.com/

,左側菜單欄中有批量操作執行個體子產品,任務類型包含發送程序指令、批量下載下傳檔案、執行個體操作、執行個體屬性修改等。批量管理軟體子產品中可以批量的給執行個體下載下傳和安裝常見的軟體,在我的軟體子產品可以自行部署和解除安裝。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

定時開關機子產品中可以選擇在指定的時間關閉、開啟或重新開機執行個體。在包年包月的伺服器情況下,客戶需要在固定的時間更新臨時寬帶,等高峰過去後再下降,以達到節約成本的目的。在建立更新鏡像子產品中可以基于已有的執行個體進行更新,也可以基于已有的鏡像建立執行個體,進一步更新,再建立新的鏡像。

定時運維子產品可以在固定的時間和固定的地域執行指定的任務。告警與事件運維子產品中若控制台上顯示當某個事件發生時自動觸發模版,比如CPU使用率過高時重新開機執行個體操作。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

所有的模版都提供了可視化視圖,提供了更加直覺的展示方式,還提供了YAML和JSON兩種格式的文本,友善用版本管理軟體如Git進行管理。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

下圖展示的是批量操作執行個體,發送遠端指令,指令内容是發送輸出指令。之後選擇執行個體,可以手動選擇,可以指定執行個體标題,也可以指定執行個體資源組,或者上傳csv檔案,從ECS執行個體表中導出csv檔案來選擇執行個體。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

在進階選項部分可以配置執行模式,如出現錯誤時繼續執行還是暫停執行個體,設定并發速率,允許的最大錯誤次數等。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

此外還有更加快速的執行執行個體指令方式,在執行個體清單子產品中選擇具體的執行個體,進入執行個體詳情頁後會顯示本執行個體遠端指令,顯示了曆史的執行指令,同時可以發送新的遠端指令。其次在執行個體清單中同時選擇多台執行個體,選擇更多,發送遠端指令,這時多台執行個體就可以同時執行指令。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

使用ROS、OOS的部分阿裡雲産品

下圖中列出了支援ROS、OOS的常見阿裡雲産品,包括ACS容器服務、FC函數計算、SLS日志服務、SMC服務遷移中心等等,這與産品本身的部署場景契合。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

雲産品需要支援多種地域,阿裡雲有22個地域,使用ROS和OSS可以最大提高部署和運維效率。阿裡雲對内部系統變更有非常嚴格的要求,需要提供資訊完整的變更單、申請、審批、以及需要為變更過程中可能出現的問題提前準備腳本。是以OSS會預先提供變更模版和復原模版,進而提供自動化運維程度,降低人工錯誤。

客戶對自動化運維有不同的需要,從下圖左側可以分出運維的幾個層次,從最底層的手動運維、到半手工,半自動化運維、再到高度自動化運維、标準化運維以及智能運維(AIOps)、大部分客戶的需求集中在中間三層,大部分的公司處于半手工,半自動化運維,異或高度自動化的方式,少部分的公司更加激進的走到了更加标準化運維,享受到了更加DevOps的方式,阿裡雲自動化部署ROS和自動化運維OOS的主打場景可以滿足這三個主要層次的自動化需求。

玩轉ECS第1講 | 雲上自動化部署和運維的正确姿勢一、雲上部署和運維的特點二、資源編排ROS三、運維編排OOS

今天的分享到此結束,感興趣的同學可持續關注雲上自動化部署ROS和運維OOS産品動态。

繼續閱讀