pf on FreeBSD Setup

Last updated: 20/12/2016

This template helps you setup a development environment where you can NAT firewall with round-robin load balancing using FreeBSD's pf on Azure.

This Azure Resource Manager (ARM) template was created by a member of the community and not by Microsoft. Each ARM template is licensed to you under a licence agreement by its owner, not Microsoft. Microsoft is not responsible for ARM templates provided and licensed by community members and does not screen for security, compatibility or performance. Community ARM templates are not supported under any Microsoft support programme or service, and are made available AS IS without warranty of any kind.

Parameters

Parameter Name Description
frontendPrivateNicIP1 Frontend VM private IP address which resides in private subnet.
frontendPrivateNicIP2 Frontend VM public IP address which resides in public subnet.
backendVM1PrivateNicIP Backend VM1 private IP address which resides in private subnet.
backendVM2PrivateNicIP Backend VM2 private IP address which resides in private subnet.
frontendVmSize Frontend VM size, please choose proper size which allow 2 NICs.
frontendVmStorageAccountType Type of frontend VM storage account.
backendVmSize Backend VM size.
backendVmStorageAccountType Type of backend VM storage account.
adminUsername User name for the Virtual Machine
adminPassword Password for frontend and backend VMs.
vnetAddressPrefix Address prefix for VNET.
publicSubnetAddressPrefix Address prefix for public subnet.
privateSubnetAddressPrefix Address prefix for private subnet.
networkPrefix Network prefix.
domainNamePrefix DNS Label for the Public IP. Must be lowercase. It should match with the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$ or it will raise an error.
environment Different environments in Azure. Choose AzureCloud for Global Azure, choose AzureChinaCloud for Azure China Cloud.
clientID ID of the client. See https://github.com/cloudfoundry-incubator/bosh-azure-cpi-release/blob/master/docs/guidance.md
tenantID ID of the tenant. See https://github.com/cloudfoundry-incubator/bosh-azure-cpi-release/blob/master/docs/guidance.md
clientSecret secret of the client. See https://github.com/cloudfoundry-incubator/bosh-azure-cpi-release/blob/master/docs/guidance.md
_artifactsLocation The base URI where artifacts required by this template are located. When the template is deployed using the accompanying scripts, a private location in the subscription will be used and this value will be automatically generated.

Use the template

PowerShell
New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/pf-freebsd-setup/azuredeploy.json
Installing and configuring Azure PowerShell
Command line
azure config mode arm
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/pf-freebsd-setup/azuredeploy.json
Installing and configuring the Azure cross-platform command-line interface