劃分應用
應用是提供特定業務功能的軟件服務。一個應用一般會有一個對應的源代碼庫以及由這個源代碼庫編譯出來的多個版本的部署物(比如軟件安裝包、容器鏡像等等)。應用的運行在阿里云的基礎設施上,比如云服務器、托管的K8s容器服務;應用還會使用數據庫、負載均衡和域名等其他云服務。可以按照業務功能和部署物來劃分應用。在應用管理,我們需要把業務功能和部署物對應的云資源導入到應用下的應用分組里。
劃分應用分組
應用分組是對應用進行部署、運維和管理的單位。應用管理支持按分組進行應用發布(每次部署一個分組)、監控報警(支持分組級別的指標)、運維(對分組下的資源進行批量運維)、成本分析等等。
常見的分組策略有:
按照運行環境劃分。比如分為生產環境、預發布環境、日常環境。這些運行環境是相互獨立(但不一定完全隔離,比如預發布環境和生產環境可以共用一個數據庫)。不同環境的運維的要求不一樣。在應用部署時,不同環境也是分開的。
按照可用區來劃分如果您的應用支持跨可用區的高可用,那么可以將每個可用區上的資源創建成一個分組。發布的時候和運維的時候可以逐個分組進行,從而保證應用總是可用的。
單分組應用對于簡單應用,比如用來做測試、做演示的應用。可以將所有資源都導入到一個分組里。
創建應用分組的方式
使用自定義標簽創建應用分組
如果您已經使用標簽對資源進行分組,并且已經切分到了應用分組維度,那么可以使用現有的標簽來創建應用分組。應用分組會和標簽綁定:
資源綁定、解綁標簽的同時也會加入、退出應用分組。
在應用分組的資源管理頁導入資源或者移除資源,會對資源綁定標簽或者解綁標簽。
您可以在應用分組的概覽頁可以看到綁定的標簽。
使用資源組創建應用分組
如果您已經使用資源組來對資源進行分組,并且已經切分到了應用分組維度,那么可以使用資源組來創建應用分組。應用分組會和資源組綁定。對于資源組,資源管理頁面不支持導入或者移除資源。資源組下的資源變動也會同步到應用分組里。您可以在應用分組的概覽頁可以看到綁定的資源組。
手工批量導入資源
在應用創建頁,您可以篩選資源、選擇多個資源批量導入。導入過程中會給資源打上應用管理的標簽。創建完成后還可以在資源管理里導入或移除資源。您可以在應用分組的概覽頁可以看到由應用管理為分組生成的標簽。
通過其他動態分組創建應用分組
應用管理支持將彈性伸縮的伸縮組、容器集群、資源編排的資源棧導入為一個分組。分組會和這些動態分組綁定。動態分組中的變化會同步到應用分組里。比如一個伸縮組擴展了一個新的ECS實例,這個ECS實例也會自動加入應用分組。
通過應用管理來創建或刪除云資源
以上通過導入資源或者綁定已有動態分組的形式導入的資源,應用的生命周期和資源的生命周期(資源的創建和刪除)是解耦的。如果通過應用管理來創建或刪除云資源,可以采用以下方式:
通過場景創建資源:場景是應用管理預置的資源編排模板。支持圖形化配置一鍵部署。
通過自定義模板創建:使用您自己的資源編排模板部署,適合高階用戶。
這兩種方式都是基于資源編排(ROS)的能力,使用Infrastructure as code的方式去創建和管理資源。使用這種方式,應用分組刪除時會同時刪除資源棧。