在 Azure 虛擬架構上使用 Jenkins 與 Terraform 的固定基礎結構 CI/CD 概觀

Azure 是世界級的雲端,用於裝載執行 Windows 或 Linux 的虛擬機器。不論您使用 Java、Node.js、Go 或 PHP 開發應用程式,都需要持續整合與持續部署 (CI/CD) 管線,以自動將變更推送到這些虛擬機器。

Ciągła integracja/ciągłe wdrażanie przy niezmienialnej infrastrukturze za pomocą systemu Jenkins i narzędzia Terraform w wirtualnej architekturze platformy Azure — omówieniePlatforma Azure to światowej klasy chmura umożliwiająca hostowanie maszyn wirtualnych z systemem Windows lub Linux. Niezależnie od tego, czy do tworzenia aplikacji używasz języka Java, Node.js, Go, czy PHP, będziesz potrzebować potoku ciągłej integracji i ciągłego wdrażania na potrzeby automatycznego wypychania zmian do tych maszyn wirtualnych.JenkinsAzure Virtual MachineScale SetsTerraformAzure Managed Disks(VM Image)PackerGitHubEngineerAzure Log Analytics1765554423Visual Studio Code

變更應用程式原始程式碼。

將程式碼認可到 GitHub。

目標為 Jenkins 的持續整合觸發程序。

Jenkins 會觸發 Packer 映像組建以使用 Azure 受控磁碟建立 VM,並以 VM 映像的形式加以儲存。

Jenkins 會觸發 Terraform 以使用 Azure 受控磁碟 VM 映像佈建新的虛擬機器擴展集。

Azure Log Analytics 會收集與分析記錄。

監視應用程式並加以改善。

  1. 1 變更應用程式原始程式碼。
  2. 2 將程式碼認可到 GitHub。
  3. 3 目標為 Jenkins 的持續整合觸發程序。
  4. 4 Jenkins 會觸發 Packer 映像組建以使用 Azure 受控磁碟建立 VM,並以 VM 映像的形式加以儲存。
  1. 5 Jenkins 會觸發 Terraform 以使用 Azure 受控磁碟 VM 映像佈建新的虛擬機器擴展集。
  2. 6 Azure Log Analytics 會收集與分析記錄。
  3. 7 監視應用程式並加以改善。

實作指南

產品/描述 文件

受控磁碟

安全的永續性磁碟儲存體,適用於 Azure 虛擬機器。

虛擬機器擴展集

管理及相應增加到上千部 Linux 及 Windows 虛擬機器。

Log Analytics

從內部部署和雲端收集、搜尋機器資料並將其視覺化。

Visual Studio Code

建置和部署多平台應用程式,以充分利用 Azure 服務。

相關解決方案架構