Immutable Infrastructure CI/CD using Jenkins and Terraform on Azure Virtual Architecture overview

Azure is a world-class cloud for hosting virtual machines running Windows or Linux. Whether you use Java, Node.js, Go, or PHP to develop your applications, you’ll need a continuous integration and continuous deployment (CI/CD) pipeline to push changes to these virtual machines automatically.

Immutable Infrastructure CI/CD using Jenkins and Terraform on Azure Virtual Architecture overviewAzure is a world-class cloud for hosting virtual machines running Windows or Linux. Whether you use Java, Node.js, Go, or PHP to develop your applications, you’ll need a continuous integration and continuous deployment (CI/CD) pipeline to push changes to these virtual machines automatically.JenkinsAzure Virtual MachineScale SetsTerraformAzure Managed Disks(VM Image)PackerGitHubEngineerAzure Log Analytics1765554423Visual Studio Code

Change application source code.

Commit code to GitHub.

Continuous Integration Trigger to Jenkins.

Jenkins triggers a Packer image build to create a VM and stores it as a VM image using Azure Managed Disks.

Jenkins triggers Terraform to provision a new Virtual Machine Scale Set using the Azure Managed Disks VM image.

Azure Log Analytics collects and analyzes logs.

Monitor application and make improvements.

  1. 1 Change application source code.
  2. 2 Commit code to GitHub.
  3. 3 Continuous Integration Trigger to Jenkins.
  4. 4 Jenkins triggers a Packer image build to create a VM and stores it as a VM image using Azure Managed Disks.
  1. 5 Jenkins triggers Terraform to provision a new Virtual Machine Scale Set using the Azure Managed Disks VM image.
  2. 6 Azure Log Analytics collects and analyzes logs.
  3. 7 Monitor application and make improvements.

Implementation guidance

Products/Description Documentation

Managed Disks

Persistent, secured disk storage for Azure virtual machines.

Virtual Machine Scale Sets

Manage and scale up to thousands of Linux and Windows virtual machines.

Log Analytics

Collect, search, and visualize machine data from on-premises and cloud.

Visual Studio Code

Build and deploy multi-platform apps to get the most from Azure services.

Related solution architectures

Azure Web Apps 的 CI/CDAzure Web Apps 可讓您快速、輕鬆地使用 ASP.NET、Java、Node 或 PHP 來建立 Web 應用程式。透過持續整合與持續部署 (CI/CD) 管線自動推送每項變更到 Web Apps,以更快將價值傳遞給客戶。12345678

CI/CD for Azure Web Apps

Azure Web Apps is a fast and simple way to create web apps using ASP.NET, Java, Node.js, or PHP. Deliver value faster to your customers with a continuous integration and continuous deployment (CI/CD) pipeline that pushes each of your changes automatically to Web Apps.