Azure plugin
This topic describes how to work with the Microsoft Azure cloud computing service.
You can provision Virtual Machines, Containers, and deploy FunctionApp and WebApp from Deploy. For information about requirements and the configuration items (CIs) that the Azure plugin provides, refer to the Azure Plugin Reference.
Features of the Deploy Azure plugin
- Create resource groups and storage accounts
- Define security groups and associated security rules
- Setup public IP addresses
- Define virtual networks (VNet) and their route tables
- Provision virtual machines associated to their network interface (NIC) and deploy applications to those virtual machines
- Support Windows Virtual Machines (VMs)
- Automatically destroy machines during undeployment
- Leverage the Blob Storage scalable object storage for unstructured data
- Create web apps with built-in auto-scale and load balancing
- Create function apps based on an event-driven, serverless compute experience
- Run containers (ACI) without managing virtual machines
- Safeguard cryptographic keys and other secrets using Key Vault
- Configure load balancer (Layer 4 TCP and UDP) to deliver high availability and network performance to your applications
- Deploy network configurations such as virtual networks (VNets), subnets, routing tables, network interfaces, and public IP addresses
- Deploy load balancing configurations such as load balancers and availability sets
- Deploy storage configurations such as storage accounts and blob containers
- Deploy content to blob containers
- Deploy security configurations such as security groups and associate security roles with them
- Configure app service plans and deploy web apps and web jobs
- Deploy functions to Azure Functions
- Deploy container groups and containers to Azure Container Instance
- Create artifact feeds and upload packages to the created feeds
This is a diagram representing all the resource types Deploy Azure plugin supports and their dependencies:
Before you get started
Before you begin using the Azure plugin you must have:
- Access to a portal.azure.com account
- XLD running with azure plugin
- Azure CLI (to create artifact feed and upload packages). For more information, see Azure CLI Installation Guide.
Make sure your Azure account is correctly configured, with at least the following elements:
- Subscription ID
- Service principal, with a Tenant ID, Client ID, and Client secret value
Minimum Required versions
You must have theseversions of the specified tools to work properly.
Deploy: Version 9.0.0
Information required
- Subscription ID
- Client ID
- Client secret
- Tenant ID
- Resource group to create
- An Azure region to create the resource group (e.g.
westus
) - Name of the Azure app. This will also be used as the name of the Release and Deploy CIs.
- Username and password for the admin account
Setup an Azure Cloud connection
To set up a connection to Azure Cloud:
-
Hover over Infrastructure, click , and select New > Azure > Cloud.
-
In the Subscription ID box, enter the subscription id which you will found in Azure portal under subscriptions.
-
In the User Name box, enter the user name used to login to Azure Cloud.
-
In the User Password box, enter the user password used to login to Azure Cloud.
-
Save the azure.Cloud configuration item.
Verify the Azure Cloud Connectivity
To verify the connection with the azure.Cloud, use the Check Connection control task.
Execute the task. If the task succeeds, the connectivity is working fine and we are able to use Azure through Digital.ai Deploy.
Important: This topic describes using a CI tool plugin to interact with Deploy. However, as a preferred alternative starting with version 9.0, you can utilize a wrapper script to bootstrap XL CLI commands on your Unix or Windows-based Continuous Integration (CI) servers without having to install the XL CLI executable itself. The script is stored with your project YAML files and you can execute XL CLI commands from within your CI tool scripts. For details, see the following topics:
Azure blueprints
The Azure blueprints allow you to define deployments and releases in YAML templates, simplifying the process of provisioning resources with the Azure plugin. Azure Resource Manager (ARM) templates can also be used to easily define the Azure resource deployments. For more information, see Deploy to Azure with using the ARM template blueprint
The available Azure blueprints are:
- Basic AKS Cluster
- Azure App Service
- Microservice application on Azure Kubernetes service
- Basic ARM Template
For more information on the blueprints, see Deploy/Release Blueprints. This tutorial will help you to for deploy resources to Azure using ARM templates: Deploy to Azure with using the ARM template blueprint.