Skip to content

Azure - ARM template

The Matillion Streaming agent can be installed via an ARM Template. We recommend doing this as part of our quick guide installation that outlines all steps, in order, to launch a Streaming agent via a template on Azure.

Note

The provided ARM template serves as a blueprint and may require modifications based on your specific requirements and cloud infrastructure rules. Make sure to review and customize the template as necessary before deploying it.


Created resources

The ARM template deployment in the Azure Portal creates the following:

  • Container Instance
  • Log Analytics workspace
  • Key vault/secrets
  • Storage account
  • Managed Identity

Prerequisites for private subnet deployment

Note

This is only required for a private subnet deployment.

  1. Azure account with an active subscription.
  2. Create a virtual network and a subnet associated with it. You can follow the instructions provided in the Azure documentation to quickly create a virtual network using the Azure portal.
  3. Create a NAT gateway and associate it with the subnet you created. You can refer to the Azure documentation for detailed instructions on creating a NAT gateway.
  4. Configure the NAT gateway with the allowed IPs required for your specific use case. Refer to the IP allow list documentation for information about configuring allowed IPs.
  5. Configure subnet delegation with the following permission: Microsoft.ContainerInstance/containerGroups. This delegation allows the deployment of container groups within the subnet. For more details, you can refer to the Azure documentation on subnet delegation.
  6. When deploying the template, you need to provide the following extra parameters:
    • networkType: A string parameter that defines the agent network deployment type. The allowed values are "private" and "public". The default value is "public".
    • vNet: A string parameter that specifies the target virtual network for the agent deployment. This parameter is only required if the private subnet is being used.
    • subnetName: A string parameter that specifies the target subnet name for the agent deployment. This parameter is only required if the private subnet is being used.

Ensure you have met all the prerequisites and have the required information before proceeding with the deployment.


Template deployment

  1. Log in to the Azure Portal.
  2. Browse to your resource group (we recommend making a new one if you haven't already).
  3. Click Create in the resource group pane (not the left-hand navigation pane) to start making a new resource in this group.
  4. In your resource group, search for Template specs.
  5. Click Import template.
  6. Click the folder icon and import your downloaded ARM template. Once done, click Import.
  7. The template body has been populated with imported content, but you need to complete a number of additional fields. Once done, click Next:Edit Template.
  8. You can edit your template if needed, then click Next:Tags.
  9. If any tags are required, please provide them. Tags are name:value pairs that allow you to categorize resources. Click Next:Review + create.
  10. Once you have reviewed your template, click Create.

Instance details

Field Description
Region Choose the Azure region that's right for you. not every resources is available in every region.
Resource Prefix The prefix to use for all resources deployed by this template (should be alphanumeric, lower-case, and 1-14 characters)
Organization Id The unique UUID that identifies your account to the CDC platform.
Agent Id Unique UUID that identifies your agent to the CDC platform.
Websocket Endpoint This is the websocket endpoint URL from the Data Loader UI.
Private Key Data The private key from the Data Loader UI. Just the content between the -----BEGIN PRIVATE KEY----- and -----END PRIVATE KEY----- tags.
Network Type This is the network deployment type to be used by the agent. You can select for public or private deployment.
V Net Resource Group This is the name of the resource group that holds the target virtual network for agent deployment. Only required if private network is being used.
V Net This is the target virtual network for agent deployment. Only required if private network is being used.
Subnet Name Target subnet name for agent deployment. Only required if private network is being used.
Existing Managed Identity Resource Group If intending to reuse resources from a previous deployment, this is the name of the resource group that contains the existing managed identity with access to existing storage resources and/or key vault.
Existing Managed Identity Name If intending to reuse resources from a previous deployment, this is the name of the existing managed identity with access to existing storage resources and/or key vault.
Existing Key Vault URI If intending to reuse a private key secret from a previous deployment, this is the URI of the existing key vault holding the secret.
Existing Private Key Secret Name If intending to reuse a private key secret from a previous deployment, this is the name of the existing secret.
Reuse Existing Storage Resources Enable this property if you wish to reuse the storage resources from a previous deployment.
Container Image URL This is the image for the agent to run. This is default value. DO NOT change this value.
Location The Azure Region for your resources to be located.
Cpu Core Number of CPU cores the container can use. Can be with a maximum of two decimals. Maximum of 2.0 vCPUs (cores).
Memory Size Amount of memory (in gibibytes, GiB) allocated to the container up to 4GiB. Can be with a maximum of two decimals. Ratio with CPU cores must be equal to 2. Default value is 8. For more detail you can refer to Sizing Streaming agents.

Templates

template.json