對于容器服務構建的應用場景,例如不依賴K8s、OpenShift等容器編排的場景,您可以通過基于彈性伸縮和云效來實現容器服務發布部署管理。
前提條件
已注冊阿里云賬號。如果還未注冊,請先注冊阿里云賬號。
說明如果您使用RAM用戶,您還需要為RAM用戶授予鏡像服務的權限。具體操作,請參見配置倉庫的RAM訪問控制。
已開通容器鏡像服務ACR企業版。更多信息,請參見創建企業版實例。
已開通彈性伸縮服務。更多信息,請參見管理彈性伸縮服務關聯角色。
已開通云效服務功能。更多信息,請參見快速登錄/創建企業。
背景信息
您可以通過彈性伸縮和云效對容器服務進行發布部署管理。其中,彈性伸縮和云效產品分別提供以下不同能力,具體說明如下:
彈性伸縮提供了彈性管理能力。
例如,使用該產品可以實現容器實例的分組管理、彈性伸縮、滾動升級等功能,方便您彈性管理容器服務場景的應用。
云效提供了一站式管理服務能力。
例如,使用該產品可以一鍵進行代碼編譯、測試、鏡像構建、鏡像上傳、伸縮配置鏡像更新等,方便您快捷地管理容器服務場景的應用。
概念介紹
概念 | 說明 |
是云原生時代一站式BizDevOps平臺,產研數字化同行者,支持公共云、專有云和混合云多種部署形態,通過云原生新技術和研發新模式,助力數字化轉型企業快速實現產研數字化能力。 | |
是一款企業級、自動化的持續集成和持續交付工具,通過構建自動化、集成自動化、驗證自動化、部署自動化,完成從開發到上線的CI/CD全流程。 | |
是敏捷安全的Serverless容器運行服務。您無需管理底層服務器,也無需關心運行過程中的容量規劃,只需要提供打包好的Docker鏡像,即可運行容器,并僅為容器實際運行消耗的資源付費。 | |
是面向容器鏡像、Helm Chart等符合OCI標準的云原生制品安全托管及高效分發平臺。 |
步驟一:創建阿里云容器鏡像倉庫
登錄容器鏡像服務控制臺。
創建容器鏡像實例。
在頂部菜單欄,選擇地域。
在實例列表頁面,單擊創建企業版實例。
說明本步驟以創建企業版實例為例,關于企業版實例與個人版實例的區別,更多信息,請參見個人版實例與企業版實例差異化說明。
在容器鏡像服務頁面,完成參數配置,然后單擊立即購買。
主要配置項參數說明如下所示,其他參數保持默認值。
配置項
說明
示例
實例規格
選擇實例規格。
基礎版
實例名稱
輸入實例名稱。
eci-autoscaling
購買時長
目前支持選擇1個月、2個月、3個月、6個月和1~5年。
說明您還可以設置是否到期自動續費。
1個月
在確認訂單頁面,確認訂單并選中我已閱讀并同意容器鏡像服務服務協議,單擊去支付。
在支付頁面底部查看實例的總費用,如無疑問,根據提示完成支付。
返回管理控制臺后,在實例列表頁面,您可以看到新建企業版實例的運行狀態為啟動中。
說明首次購買企業版實例時,請您耐心等待大約2到3分鐘后,待企業版實例啟動完成(即狀態變為運行中)后,再進行后續操作。
單擊已創建的企業版實例(eci-autoscaling),進入實例概覽頁面。
在左側導航欄,選擇 ,然后單擊創建鏡像倉庫。
在創建鏡像倉庫頁面的倉庫信息區域,完成相關參數配置,單擊下一步。
主要參數配置項說明如下所示,其余參數項保持默認即可。
配置項
說明
示例
命名空間
如果未創建命名空間,先創建后再選擇該命名空間。具體操作,請參見步驟二:創建命名空間。
eci_autoscaling_namespace
倉庫名稱
長度為2~120個字符,由小寫英文字母、數字、分隔符、下劃線(_)、短劃線(-)、半角句號(.)、正斜線(/)組成。
eci_autoscaling_repo
倉庫類型
支持公開和私有兩種倉庫類型。
私有
摘要
簡要描述創建鏡像倉庫的用途即可。
test
在代碼源區域,代碼源選擇本地倉庫,然后單擊創建鏡像倉庫。
在鏡像倉庫的基本信息頁面,單擊公網地址后的請先開啟訪問控制的網絡入口。
在實例的訪問控制頁面,單擊公網頁簽,開啟訪問入口,然后單擊確定。
開啟公網訪問入口默認會添加一條白名單,且僅白名單內地址能夠訪問實例的公網域名。
在默認添加的白名單的操作列,單擊刪除。
刪除該默認白名單后,公網下的服務器均可以通過憑證訪問企業版實例。例如,后續云效通過訪問該地址來構建上傳鏡像。
步驟二:通過云效服務創建流水線
登錄云效流水線控制臺。
首次登錄控制臺時,根據頁面提示創建企業(企業名稱以eci_autoscaling_example為例)。
在我的流水線頁面,單擊新建流水線。
說明首次登錄云效流水線控制臺時,您也可以在彈出的流水線對話框,單擊立即新建來新創建流水線。
在選擇流水線模板頁面,根據您的開發語言和部署場景,選擇合適的流水線模板,單擊創建完成一條流水線創建。
本步驟以選擇Java · 測試、構建鏡像為例。
在頁面左上方,設置流水線名稱為構建鏡像流水線,再單擊添加流水線源并完成代碼源相關參數,然后單擊添加。
本步驟以代碼源選擇示例代碼源,代碼類型選擇JAVA為例。
在構建鏡像區域,單擊阿里云鏡像構建,單擊編輯面板中的圖標,然后單擊確定。
在構建鏡像區域,阿里云鏡像構建默認為阿里云鏡像構建個人版。因為步驟一:創建阿里云容器鏡像倉庫中創建的鏡像為企業版,所以您需要先刪除阿里云鏡像構建個人版,然后再創建阿里云鏡像構建企業版。
在新階段區域,單擊新的任務,在彈出的面板左側,選擇 ,在編輯面板的任務步驟區域,單擊鏡像構建并推送至阿里云鏡像倉庫企業版,配置如下參數。
參數示例如下圖所示:
單擊保存并運行,在彈出的運行配置對話框,單擊運行。
運行大約需要2~3分鐘時間,請您耐心等待。阿里云鏡像企業版構建完成后,如下圖所示:
進入已創建的企業版實例(eci-autoscaling)頁面,選擇 ,單擊鏡像倉庫(eci_autoscaling_repo)對應操作列的管理。
在左側導航欄,單擊鏡像版本,確認鏡像已構建成功。
步驟三:基于構建鏡像創建ECI類型伸縮組
- 登錄彈性伸縮控制臺。
創建ECI類型伸縮組。
具體操作,請參見創建伸縮組。
本步驟中主要配置參數說明如下:
配置項
說明
示例
伸縮組名稱
無。
eci_scaling_group
伸縮組類型
支持ECS和ECI兩種類型。
ECI
組內實例配置信息來源
伸縮組創建完成后,您需要繼續創建伸縮配置。
從零開始創建
組內最小實例數
當前實例數量低于下限時,伸縮組會自動添加實例,使得伸縮組內的實例數量等于下限。
1
組內最大實例數
當前實例數量超過上限時,伸縮組會自動移出實例,使得伸縮組內的實例數量等于上限。
2
專有網絡
選擇已創建的專有網絡。
vpc-bp1jmxxau0lur929p****
選擇交換機
選擇專有網絡后必須選擇交換機。
vsw-bp155oak33mqngov2****
創建并啟動伸縮配置。
具體操作,請參見創建伸縮配置(ECI實例)。
本步驟中主要配置參數說明如下:
配置項
說明
示例
選擇容器上運行的鏡像。
容器鏡像:單擊選擇容器鏡像,然后單擊企業鏡像頁簽,選擇步驟二:通過云效服務創建流水線中構建的企業鏡像。
eci-autoscaling-***_repo
選擇容器上運行的鏡像版本。
eci_autoscaling_****_01
啟用ECI類型伸縮組。
具體操作,請參見啟用或停用伸縮組。
查看ECI實例的鏡像信息。
在實例列表下的自動創建頁簽中,單擊已創建的ECI實例ID進入ECI實例頁面,您可以在該ECI實例對應的鏡像列下查看ECI實例的鏡像信息。
說明因為步驟2中伸縮組設置的最小實例數為1,所以伸縮組啟用后系統會自動創建1臺ECI實例。
步驟四:通過云效實現伸縮組發布部署
登錄云效流水線控制臺。
在我的流水線頁面,找到已創建的鏡像流水線,選擇 ,然后單擊確定復制原有構建的鏡像。
單擊復制后的鏡像流水線,并單擊右上角的編輯,然后修改鏡像流水線名稱為構建鏡像并發布伸縮組流水線。
在新階段區域,單擊新的任務。
在彈出的左側面板,選擇 。
在編輯面板,選擇新創建的伸縮組(eci_scaling_group),選擇對應的容器名稱和部署鏡像地址。
具體參數示例如下圖所示:
單擊保存并運行,在彈出的運行配置對話框,單擊運行。
在部署區域下,單擊發布單詳情,查看執行結果。
查看ECI實例鏡像和伸縮組鏡像配置已更新。
在彈性容器實例頁面的事件頁簽下,您可以查看到ECI實例鏡像已更新。
在伸縮配置頁面的容器配置區域,您可以查看到伸縮組鏡像配置已更新。