Cohesity Cloud Scale Technology Deployment Guide Using Terraform for Microsoft Azure

Last Published:
Product(s): NetBackup & Alta Data Protection (11.0)

Parameters for base stage

Refer to the following tables and provide the configuration details depending on the type of installation you want to perform.

Note:

Refer the sample.tfvars file which is placed in the base directory which has a format for passing the input parameters. Ensure you follow the parameter order.

Note:

Cloud Scale Technology deployment is supported on hybrid DNS environment.

Table: Parameters for base stage

Parameters

Description

Networking parameters that already exists

vnet_rg_name

Resource group name that contains the Virtual Network.

vnet_name

Virtual Network name where to provision cloud scale resources.

subnet_name_cluster

Subnet name where to provision cloud scale in AKS cluster.

subnet_name_loadbalancer

Subnet name where to provision cloud scale AKS load balancer.

Cloud Scale resources created by Terraform

cpdata_node_pool_scaling

Scaling configuration block for the cpdata pool nodes. See default value for example.

desired_size: Desired number of nodes in cpdata pool.

max_size: Maximum number of nodes in the cpdata pool when autoscaling is enabled.

min_size: Minimum number of nodes in the cpdata pool when autoscaling is enabled.

custom_tags

Additional tags to be added to resources.

zone

Specify an availability zone in which AKS cluster should be located.

cloudscale_instance_id

A unique identifier to be used in tags and names to identify the Cloud Scale Technology resources specific to this deployment.

new_rg_name

Name of new resource group to be provisioned.

new_user_identity_name

Name of new User Managed Identity to be provisioned.

location

Location region to provision resources.

aks_name

Name of the Cloud Scale Technology AKS cluster.

enable_role_based_access_control_for_aks

false

new_acr_name

Name of new container registry to be provisioned.

use_existing_private_dns_zone

Option to use an existing private DNS zone.

private_dns_zone_rg_name

The resource group name where the private DNS zone resides.

dns_to_vnet_link_name

Name for the DNS zone virtual network link used for Cloud Scale Technology cluster. Required if creating a new private DNS zone.

use_existing_nbsm_role

Option to use existing role or to create new NetBackup Snapshot Manager (NBSM) role. Default is set to false

If this role is set to false, provisioning will automatically create the required roles needed for deployment.

If this role is set to true, provide nbsm_role_name values.

Refer to See Permissions attached to nbsm_role. in case if you use the Terraform to create an new nbsm_role.

nbsm_role_name

This role is set if the use_existing_nbsm_role is set to true.

This value is the name of an existing role to be used for NetBackup Snapshot Manager to work with Azure assets. This property cannot be changed after the cluster is created.

aks_network_profile

The network profile for the cluster. See the modules/cloudscale-aks/REAMDE.md for defaults.

See documentation for options.

use_existing_storage_acc

Set it to true only if you want to use existing storage account to create NFS PVC.

storage_acc_id

This is required in case of use_existing_storage_acc is set to true. Mention resource id of storage account name

storage_acc_rg_name

This is required in case of use_existing_storage_acc is set to true. Mention storage account resource group name

aks_private_dns_zone_id

Mention resource id of custom private DNS zone

ACR private DNS zone values created by Terraform When the use_existing_acr_private_dns_zone = false

use_existing_acr_private_dns_zone

Option to use an existing private DNS zone for ACR

acr_dns_to_vnet_link_name

This parameter is required only while creating new Azure Container Registry (ACR) private DNS zone. The virtual network link name is used to link the ACR private DNS to the ACR virtual network.

acr_private_dns_zone_rg_name

For existing private DNS zone: This is the resource group name where it exists.

For creating a new private DNS zone: This is the resource group name where to provision the zone.

When the use_existing_acr_private_dns_zone = true

acr_private_endpoint_name

Name of the private endpoint when provisioning a private ACR.

acr_rg_name

The Resource Group name where the ACR resides.

acr_public_network_access_enabled

Option to enable public access on a new ACR.

acr_private_service_connection_name

Name of the private service connection when provisioning a private ACR.

cloud_environment

Specify which cloud environment to use.

Default value is public and possible values are public, usgovernment, german, and china.

kubernetes_version

Specify which Kubernetes version to use. The default used is the latest Kubernetes version available in the region

acr_private_dns_zone_group_name

Name of the private DNS zone group when provisioning a private ACR.

node_instance_size_primary_pool

The node virtual machine size of the primary nodes. Use Azure virtual machine skus

node_instance_size_media_pool

The node virtual machine size of the media nodes. Use Azure virtual machine skus.

node_instance_size_msdp_pool

The node virtual machine size of the msdp nodes. Use Azure virtual machine skus.

node_instance_size_cpdata_pool

The node virtual machine size of the cpdata nodes. Use Azure virtual machine skus.

primary_node_pool_scaling

Scaling configuration block for the Primary pool nodes. See default value for example.

desired_size: 1 Desired number of nodes in primary pool.

max_size: 2 Maximum number of nodes in the primary pool when autoscaling is enabled.

min_size: 1 Minimum number of nodes in the primary pool when autoscaling is enabled.

msdp_node_pool_scaling

Scaling configuration block for the storage pool nodes. See default value for example.

desired_size:1 Desired number of nodes in msdp pool.

max_size: 1 Maximum number of nodes in the msdp pool when autoscaling is enabled.

min_size: 1 Minimum number of nodes in the msdp pool when autoscaling is enabled.

media_node_pool_scaling

Scaling configuration block for the media pool nodes. See default value for example.

desired_size:1 Desired number of nodes in media pool.

max_size:1 Maximum number of nodes in the media pool when autoscaling is enabled.

min_size:1 Minimum number of nodes in the media pool when autoscaling is enabled.

cpdata_node_pool_scaling

Scaling configuration block for the cpdata pool nodes. See default value for example.

desired_size:1 Desired number of nodes in cpdata pool.

max_size:1 Maximum number of nodes in the cpdata pool when autoscaling is enabled.

min_size:1 Minimum number of nodes in the cpdata pool when autoscaling is enabled.

private_dns_zone_name

The name of the private DNS Zone resource used for cloud scale. Needs to be a unique name in the Azure Subscription. This is not required in case of Hybrid DNS environment.

DBaaS configuration.

The db_* variables are not required while using internal database (db_create = false)

db_create

Specifies whether to create Azure Flexible Server PostgreSQL

db_subnet_name

The name of the subnet to create the PostgreSQL Flexible Server. (Should not have any resource deployed in) This parameter is optional and only required if db_create is set to true.

db_username

Username for the master DB user. This parameter is optional and only required if db_create is set to true.

db_compute_tier

Tier for PostgreSQL Flexible server sku : Compute and storage options in Azure database. Possible values are: GeneralPurpose, Burstable, MemoryOptimized. This parameter is optional and only required if db_create is set to true.

db_compute_size

Size for PostgreSQL Flexible server sku : Compute and storage options in Azure database for PostgreSQL This parameter is optional and only required if db_create is set to true.

db_zone

Specify availability-zone for PostgreSQL flexible main server. This parameter is optional and only required if db_create is set to true.

db_standby_zone

Specify availability-zone to enable high_availability and create standby PostgreSQL Flexible Server. (Null to disable high-availability) This parameter is optional and only required if db_create is set to true.

db_backup_retention_days

The days to retain backups for. Must be between 1 and 35. This parameter is optional and only required if db_create is set to true.

db_maintenance_day

The day of week for maintenance window. i.e. Sunday = 0, Monday = 1. Defaults to 0. This parameter is optional and only required if db_create is set to true.

db_maintenance_hour

The start hour for maintenance window. Defaults to 0. This parameter is optional and only required if db_create is set to true.

db_maintenance_minute

The start minute for maintenance window. Defaults to 0. This parameter is optional and only required if db_create is set to true.

db_parameters

PostgreSQL configurations to enable. This parameter is optional and only required if db_create is set to true.

db_geo_redundant_backup_enabled

Enable Geo Redundant Backup for the PostgreSQL Flexible Server. This parameter is optional and only required if db_create is set to true.

db_postgresql_version

Version of PostgreSQL Flexible Server. Possible values are:

Version of PostgreSQL Flexible Server

This parameter is optional and only required if db_create is set to true.

db_server_name

The name of PostgreSQL Flexible Server instance. This parameter is optional and only required if db_create is set to true.

db_standby_zone

Specify availability-zone to enable high_availability and create standby PostgreSQL Flexible Server.

This parameter is optional and only required if db_create is set to true.

db_storage_mb

Storage allowed for PostgresSQL Flexible server.

Possible values : azurerm_postgresql_flexible_server

This parameter is optional and only required if db_create is set to true.

Optional parameters to support external container registry

Note:

Applicable only when ext_container_registry is set to true.

ext_container_registry_url

Specifies the URL for the external container registry.

ext_container_registry_secret_name

Name of the secret containing credentials for the external container registry.

ext_container_registry_username

Username to authenticate with the external container registry.

ext_container_registry_password

Password to authenticate with the external container registry.

Note the following:

  • If the external container registry parameters are not provided, the deployment will default to the cloud-specific container registry.

  • If the optional external container registry parameters are not provided or set, the existing functionality is not affected.

Parameters for addons stage

There are no parameters required for addons stage.