教學課程:將搭配 CI/CD 的應用程式部署到 Service Fabric 叢集
本教學課程是一個系列中的第四部分,說明如何使用 Azure Pipelines 來設定 Azure Service Fabric 應用程式的持續整合和部署。 需要現有的 Service Fabric 應用程式,在建置 .NET 應用程式中建立的應用程式將做為範例。
在系列的第三部分中,您將了解如何:
- 將原始檔控制新增至專案
- 在 Azure Pipelines 中建立組建管線
- 在 Azure Pipelines 中建立發行管線
- 自動部署和升級應用程式
在這些教學課程中,您將瞭解如何:
- 建置 .NET Service Fabric 應用程式
- 將應用程式部署到遠端叢集
- 將 HTTPS 端點新增至 ASP.NET Core 前端服務
- 使用 Azure Pipelines 設定 CI/CD
- 設定應用程式的監視和診斷
必要條件
開始進行本教學課程之前:
- 如果您沒有 Azure 訂用帳戶,請建立免費帳戶
- 安裝 Visual Studio 2019,並安裝 Azure 開發以及 ASP.NET 和 Web 開發工作負載。
- 安裝 Service Fabric SDK
- 在 Azure 上建立 Windows Service Fabric 叢集,例如遵循本教學課程
- 建立 Azure DevOps 組織。 組織可讓您在 Azure DevOps 中建立專案,並使用 Azure Pipelines。
下載投票應用程式範例
如果您未在此 系列的第一部分中建置 Voting 範例應用程式,您可以加以下載。 在命令視窗中執行下列命令,將範例應用程式存放庫複製到本機電腦。
git clone https://github.com/Azure-Samples/service-fabric-dotnet-quickstart
下載發行設定檔
既然您已建立應用程式,並將應用程式部署至 Azure,您就可以設定持續整合。 首先,在應用程式中準備發行設定檔,以供在 Azure Pipelines 內執行的部署程序使用。 發佈配置檔應設定為以您先前建立的叢集為目標。 啟動 Visual Studio,並開啟現有的 Service Fabric 應用程式專案。 在 [方案總管] 中,以滑鼠右鍵按一下應用程式並選取 [發佈...]。
在您的應用程式專案內選擇要使用於持續整合工作流程 (例如雲端) 的目標設定檔。 指定叢集連線端點。 勾選升級應用程式核取方塊,讓您的應用程式對於 Azure DevOps 中的每個部署升級。 選取 [ 儲存 ] 超連結以將設定儲存至發行配置檔,然後選擇 [ 取消 ] 以關閉對話框。
向新的 Azure DevOps Git 儲存機制共用 Visual Studio 解決方案
向 Azure DevOps 中的專案共用應用程式原始檔,以便產生組建。
在下拉式清單中選取您的帳戶,然後輸入您的存放庫名稱,然後選取 [ 建立] 和 [推送 ] 按鈕。
發佈存放庫會在 Azure DevOps Services 帳戶中建立與本機存放庫同名的新專案。
流覽至 organizationname>、將滑鼠停留在https://dev.azure.com/\<項目名稱上方,然後選取 Repos 圖示,以檢視新建立的存放庫。
設定 Azure Pipelines 的持續傳遞
Azure Pipelines 組建管線描述由一組循序執行的組建步驟所組成的工作流程。 建立產生 Service Fabric 應用程式封裝的組建管線,以及其他構件,以便部署到 Service Fabric 叢集。 深入了解 Azure Pipelines 組建管線。
Azure Pipelines 發行管線描述將應用程式封裝部署到叢集的工作流程。 一起使用時,組建管線和發行管線可以執行整個工作流程;從來源檔案開始,並以叢集中的執行中應用程式結束。 深入了解 Azure Pipelines 發行管線 \(英文\)。
建立組建管線
開啟網頁瀏覽器並流覽至您的新專案,網址為: https://dev.azure.com/\<organizationname>/VotingSample
選取 [ 管線] 索引 卷標,然後選取 [ 建立管線]。
選取 [使用傳統編輯器來建立管線 (不使用 YAML)]。
針對手動和排程的組建,選取 [Azure Repos Git ] 作為來源、 VotingSample Team 專案、 VotingApplication 存放庫,以及 主要 預設分支。 然後選取 [繼續]。
在 [選取範本] 中 ,選取 Azure Service Fabric 應用程式 範本,然後選取 [ 套用]。
在 [ 工作] 中,輸入 “Azure Pipelines” 作為 代理程式集區 ,並將 windows-2022 輸入為代理程序規格。
在 [觸發程序] 下方,透過核取 [啟用持續整合] 來啟用持續整合。 在 [分支篩選] 內,[分支規格] 會預設為 [主要]。 選取 [儲存並加入佇列] 以手動啟動組建。
推送或簽入時也會觸發組建。 若要檢查組建進度,請切換到 [組建] 索引標籤。一旦確認組建執行成功,請定義將應用程式部署至叢集的發行管線。
建立發行管線
依序選取 [管線] 索引標籤、[版本],以及 [+ 新增管線]。 在 [選取範本] 中,從清單中選取 [Azure Service Fabric 部署] 範本,然後選取 [套用]。
選取 [工作],然後選取 [+新增] 以新增叢集連線。
在 [新增 Service Fabric 連線 檢視] 中,選取 [憑證型] 或 [Microsoft Entra 認證驗證]。 指定 tcp://mysftestcluster.southcentralus.cloudapp.azure.com:19000 的叢集端點“(或您要部署的叢集端點)。
若是憑證式驗證,請新增伺服器憑證的伺服器憑證指紋 (用來建立叢集的伺服器憑證)。 在 [用戶端憑證] 中,新增 Base-64 編碼的用戶端憑證檔案。 請參閱該欄位的快顯說明,了解如何取得以 Base-64 編碼表示的憑證。 以及新增憑證的密碼。 如果您沒有個別的用戶端憑證,您可以使用叢集或伺服器憑證。
若是 Microsoft Entra 認證,請新增伺服器憑證的伺服器憑證指紋 (用來建立叢集的伺服器憑證),以及在 [使用者名稱] 和 [密碼] 欄位中新增要用來連線到叢集的認證。
選取 [儲存]。
接下來,將組建成品新增至管線,讓發行管線可以從組建中找到輸出。 選取 [管線] 和 [成品]->[+新增]。 在 [來源 (組建定義)] 中,選取您先前建立的組建管線。 選取 [ 新增 ] 以儲存組建成品。
啟用持續部署觸發程序,以便在組建完成時自動建立發行。 選取成品中的閃電圖示、啟用觸發程式,然後選擇 [ 儲存 ] 以儲存發行管線。
選取 [建立發行 -> 建立 ] 以手動建立發行。 您可以在 [發行] 索引標籤中監視發行進度。
確認部署成功,且應用程式正在叢集中執行。 開啟 web 瀏覽器並巡覽至 https://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/。 記下應用程式版本。 在此範例中為 1.0.0.20170616.3
。
認可並推送變更,觸發發行程序
將某些程式碼變更簽入到 Azure DevOps,以確認持續整合管線正常運作。
當您撰寫程式代碼時,Visual Studio 會在 [Git 變更] 視窗的 [變更] 區段中,追蹤專案的檔案變更。
在 [ 變更 ] 檢視上,新增描述更新並認可變更的訊息。
在 [ Git 變更 ] 視窗中,選取 [推播 ] 按鈕(向上箭號)以更新 Azure Pipelines 中的程式代碼。
將變更推送至 Azure Pipelines 會自動觸發組建。 若要檢查組建進度,請切換至 中的 [https://dev.azure.com/organizationname/VotingSample管線] 索引卷標。
建置完成時,會自動建立發行,並開始升級叢集上的應用程式。
確認部署成功,且應用程式正在叢集中執行。 開啟 web 瀏覽器並巡覽至 https://mysftestcluster.southcentralus.cloudapp.azure.com:19080/Explorer/
。 記下應用程式版本。 在此範例中為 1.0.0.20170815.3
。
更新應用程式
在應用程式中進行程式碼變更。 在先前的步驟儲存並認可變更。
應用程式的升級開始後,即可注意 Service Fabric Explorer 中的升級進度:
應用程式升級可能需要幾分鐘的時間。 升級完成時,應用程式將執行下一個版本。 在這裡範例 1.0.0.20170815.4
中, 。
下一步
在本教學課程中,您已了解如何:
- 將原始檔控制新增至專案
- 建立組建管線
- 建立發行管線
- 自動部署和升級應用程式
前進到下一個教學課程: