使用云效2020部署Java應(yīng)用至ECS集群
本文以云效的示例代碼源為例,介紹如何使用云效以JAR或WAR包的方式部署應(yīng)用至EDAS的ECS集群。
前提條件
將業(yè)務(wù)代碼上傳至代碼庫。
部署流程
如果您的應(yīng)用已經(jīng)部署在EDAS上,則無需創(chuàng)建新的應(yīng)用。如果您是第一次部署應(yīng)用到EDAS,則需要在EDAS控制臺創(chuàng)建應(yīng)用,以便云效將業(yè)務(wù)代碼推送到該應(yīng)用中。
在EDAS創(chuàng)建應(yīng)用完成后,在云效上創(chuàng)建企業(yè)并進(jìn)入流水線FLOW。
根據(jù)EDAS應(yīng)用類型配置應(yīng)用集成發(fā)布的流水線信息。
流水線配置完成后,運行流水線完成EDAS應(yīng)用部署。
步驟一:在EDAS控制臺創(chuàng)建應(yīng)用
如果您未使用過EDAS創(chuàng)建應(yīng)用,則需要預(yù)先在EDAS上創(chuàng)建應(yīng)用,本文以在ECS集群中創(chuàng)建一個使用JAR包部署的Spring Cloud應(yīng)用為例。相關(guān)操作,請參見在ECS集群中創(chuàng)建并部署應(yīng)用。
在EDAS控制臺創(chuàng)建應(yīng)用時使用的部署方式(JAR或WAR),必須與在云效的流水線設(shè)置保持一致。例如:在EDAS上使用JAR方式部署應(yīng)用,那么在云效設(shè)置流水線時,構(gòu)建環(huán)節(jié)必須是構(gòu)建和上傳JAR包相關(guān)的設(shè)置。
步驟二:在云效創(chuàng)建企業(yè)
如果您是第一次使用云效Flow,則需要在云效上創(chuàng)建您的企業(yè)。
登錄云效Flow。
設(shè)置企業(yè)名稱、研發(fā)組織規(guī)模,單擊立即創(chuàng)建。
步驟三:在云效創(chuàng)建流水線
登錄云效Flow。
在左側(cè)導(dǎo)航欄,單擊我的流水線,然后單擊右上角的新建流水線。
在選擇流水線模板對話框,選擇其他 · 空模板,單擊創(chuàng)建。
創(chuàng)建完成后,會跳轉(zhuǎn)到添加流水線源的頁面。
步驟四:配置流水線
在創(chuàng)建的流水線的階段1區(qū)域單擊空任務(wù),在編輯面板,配置任務(wù)名稱、構(gòu)建集群、下載流水線源并添加任務(wù)步驟。
添加任務(wù)說明如下:
在任務(wù)步驟區(qū)域下,單擊添加步驟,在下拉列表中選擇
,并配置該步驟參數(shù)。參數(shù)
描述
步驟名稱
輸入您自定義的步驟名稱。
JDK版本
在下拉列表中選擇需要的Java版本。
Maven版本
在下拉列表中選擇需要的Maven版本。
構(gòu)建命令
自定義的構(gòu)建命令。
單擊添加步驟,在下拉列表中選擇
,并配置該步驟參數(shù)。參數(shù)
描述
步驟名稱
輸入您自定義的步驟名稱,不修改則顯示為默認(rèn)名稱。
制品名稱
自定義產(chǎn)出物名稱,例如default,用于區(qū)分多次構(gòu)建產(chǎn)生的不同產(chǎn)出物,定義后在部署任務(wù)中使用。
上傳文件
設(shè)置項目文件所在的路徑。
在新階段區(qū)域單擊新的任務(wù),在選擇任務(wù)組面板的左側(cè)導(dǎo)航欄單擊部署,然后選擇EDAS ECS 應(yīng)用發(fā)布。
在編輯面板,配置任務(wù)信息。
配置的任務(wù)信息說明如下表所示。
參數(shù)名
說明
任務(wù)名稱
自定義的任務(wù)名稱。
構(gòu)建集群
可為任務(wù)選擇不同的構(gòu)建集群。
下載流水線源
可為任務(wù)選擇是否下載流水線源。開啟下載流水線源后,您配置流水線源的源文件將會被下載至對應(yīng)的工作目錄下。
選擇服務(wù)連接
選擇任務(wù)連接的服務(wù)。如果沒有服務(wù)連接,單擊添加服務(wù)連接,根據(jù)界面提示,添加您需要的連接。選擇任務(wù)的服務(wù)授權(quán),使云效能在EDAS上部署應(yīng)用。
說明如果您從未授權(quán)過,新建服務(wù)連接時,請先在服務(wù)授權(quán)/證書輸入框后,單擊新建,根據(jù)跳轉(zhuǎn)完成阿里云RAM授權(quán)后再進(jìn)行相應(yīng)配置。
地域
請參見步驟一:在EDAS控制臺創(chuàng)建應(yīng)用,選擇該步驟所創(chuàng)建應(yīng)用所在的地域。
命名空間
選擇所創(chuàng)建應(yīng)用所在的命名空間。
應(yīng)用
請參見步驟一:在EDAS控制臺創(chuàng)建應(yīng)用,選擇該步驟所創(chuàng)建的應(yīng)用。
軟件包
選擇步驟四:配置流水線中步驟1中構(gòu)建物上傳(EDAS/SAE使用)步驟所創(chuàng)建的產(chǎn)出物名稱。
發(fā)布批次
選擇批次數(shù)量來表示發(fā)布分批的數(shù)量。
分批等待時間
相鄰發(fā)布批次之間的等待時間。
分批方式
可選擇手動確認(rèn)或自動確認(rèn)。例如,如果您需在完成第一批發(fā)布時先觀察發(fā)布結(jié)果再決定后續(xù)操作,則可選擇手動確認(rèn)。
(可選)任務(wù)插件
您可以根據(jù)需要配置任務(wù)插件來發(fā)送流水線通知。
釘釘機器人通知插件
webhook地址:配置釘釘機器人的webhook地址,釘釘機器人的創(chuàng)建步驟請參見釘釘機器人配置。
運行時機:您可以選擇任務(wù)插件發(fā)送通知的時機。
郵件通知
郵件地址:配置需要發(fā)送通知的郵件地址。
運行時機:您可以選擇任務(wù)插件發(fā)送通知的時機。
Webhook通知插件
webhook地址:配置需要發(fā)送通知的webhook地址,地址必須公網(wǎng)可訪問。
運行時機:您可以選擇任務(wù)插件發(fā)送通知的時機。
企業(yè)微信機器人通知插件
飛書機器人通知插件
配置完成后在頁面右上角單擊僅保存或保存并運行。
步驟五:在云效部署應(yīng)用至EDAS
配置完流水線后,在流水線頁面右上角單擊保存并運行,然后在運行配置對話框中選擇代碼分支后單擊運行。
本操作示例中創(chuàng)建的應(yīng)用擁有2個實例,并在流水線中配置了分批發(fā)布和手動確認(rèn)。故在構(gòu)建任務(wù)運行成功后,在新階段的發(fā)布任務(wù)中您可執(zhí)行以下操作:
單擊發(fā)布單詳情:可跳轉(zhuǎn)到EDAS控制臺查看變更詳情。
單擊繼續(xù)發(fā)布:可繼續(xù)下一批的發(fā)布。
選擇
:可終止本次流水線的運行。選擇
:可查看流水線的運行日志。選擇
:可取消本次任務(wù)運行。
單擊繼續(xù)發(fā)布,等待流水線執(zhí)行完畢。
結(jié)果驗證
云效顯示部署成功后,登錄EDAS控制臺查看應(yīng)用的變更記錄,查看是否有與云效相關(guān)的部署應(yīng)用的變更記錄,如果有并顯示執(zhí)行成功則代表部署成功。
常見問題
如何使用云效以鏡像方式部署應(yīng)用至EDAS?
您可使用云效以鏡像方式部署應(yīng)用至EDAS的K8s集群,詳情請參見使用云效2020部署Java應(yīng)用至ECS集群。
除Java應(yīng)用外,其他編程語言能否通過云效部署至EDAS?可以使用哪些部署方式部署?
除Java外的其他編程語言可以使用鏡像部署方式,通過云效部署至EDAS。使用鏡像部署時,請確保您應(yīng)用代碼中有包含應(yīng)用的Dockerfile文件,操作部署請參見使用云效2020部署Java應(yīng)用至ECS集群。
EDAS容器服務(wù)K8s和Serverless K8s交流群
如果您在EDAS中使用容器服務(wù)K8s集群和Serverless K8s集群過程中有任何疑問或建議,請使用釘釘搜索釘釘群號23197114加入釘釘群進(jìn)行反饋。