天天看點

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品
導讀:
雲上部署相比于傳統的RDC部署有哪些不同?

如何修煉雲上自動化部署和運維的正确姿勢?

如何打造快速、安全、可複制、标準化的DevOps體驗?

今天就帶大家探秘阿裡雲雲上的運維絕活~
           

作者 | 吳君印

來源 | 彈性計算百曉生

雲上部署和運維的特點

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

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

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

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

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

資源編排ROS

資源編排ROS的典型場景

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

  • 第一種是部署模闆,資源編排ROS是通過模闆方式達到可以重複部署的目的,使用模闆可以在任何時間任何地點拉起一套環境。
  • 第二種是MSP、ISV提供自己的部署模闆,可以一鍵開出複雜的業務系統,如SAP HANA等系統,将部署時間縮短為幾個小時。由于雲上的環境都是标準的,隻要有測試通過後的模闆就可以在不同的環境、不同的賬号中重複部署。
  • 第三是解決方案中心,阿裡雲通過自身多年服務客戶和雙11的經驗,總結了大量的最佳實踐,在解決方案中心中提供了很多高品質的模闆,支援開箱即用。
  • 第四是CI/CD內建,在DevOps開發模式下,隻有将部署模闆放到CI/CD中才能打造DevOps的開發模式,輕松的做到藍綠部署,并且支援阿裡雲雲效。
雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

ROS控制台及操作示範

上方對ROS産品進行了簡單的介紹;下方是常見的部署架構作為示例模闆。下圖為:資源編排ROS首頁。

ROS産品位址:https://rosnext.console.aliyun.com/

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

運維編排OOS

運維編排OOS的典型場景

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

  • 首先是批量操作執行個體和執行遠端指令,例如啟動、停止等,相比于其它方式無需密碼,無需登入,無需使用跳闆機,且無需擔心安全問題,運維編排使用了阿裡雲RAM進行控制。
  • 第二種場景是定時運維,在固定的時間執行制定的指令,相當于雲上Cron服務,并且免托管,分布式。
  • 第三種場景是支援報警和事件驅動運維,當某個事件發生時自動觸發告警任務。
  • 第四是提供大量豐富的公共模,闆阿裡雲總結了大量的典型運維場景,并将總結成果開源到了Github上,歡迎大家貢獻優質模闆,共同打造運維社群。
雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

OOS控制台及操作示範

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

OOS産品位址:https://oos.console.aliyun.com/

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

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

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

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

關注百曉生,笑談雲計算

雲上自動化部署和運維的正确姿勢雲上部署和運維的特點資源編排ROS運維編排OOS使用ROS、OOS的部分阿裡雲産品

完整演講視訊位址:https://developer.aliyun.com/live/43815?spm=a2c6h.12873639.0.0.286978a3ecqbrY

繼續閱讀