Skip to main content
NetApp data management solutions
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

通过 Terraform 实现云卷自动化

贡献者 kevin-hoke

该解决方案记录了使用 Terraform 模块在 AWS(CVO 单节点、CVO HA 和 FSX ONTAP)和 Azure(CVO 单节点、CVO HA 和 ANF)上自动部署 Cloud Volumes 的过程。代码可以在以下位置找到 https://github.com/NetApp/na_cloud_volumes_automation

先决条件

  1. Terraform >= 0.13

  2. 云管理器帐户

  3. 云提供商帐户 – AWS、Azure

  4. 主机(Terraform 支持的任何操作系统)

提供商文档

Cloud Manager 的 Terraform 提供程序文档可在以下位置找到:"https://registry.terraform.io/providers/NetApp/netapp-cloudmanager/latest/docs"

控制提供程序版本

请注意,您还可以控制提供程序版本。这由 Terraform 配置中的 required_providers 块控制。

语法如下:

terraform {
  required_providers {
    netapp-cloudmanager = {
      source = "NetApp/netapp-cloudmanager"
      version = ">= 23.0.0"
    }
  }
}

阅读有关提供商版本控制的更多信息。

运行特定模块

AWS
CVO单节点部署
用于在 AWS 上部署NetApp CVO(单节点实例)的 Terraform 配置文件

本节包含各种 Terraform 配置文件,用于在 AWS(Amazon Web Services)上部署/配置单节点NetApp CVO(Cloud Volumes ONTAP)。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation/
  3. 从 CLI 配置 AWS 凭证。

        aws configure
    • AWS 访问密钥 ID [无]:accesskey

    • AWS 秘密访问密钥 [无]:secretkey

    • 默认区域名称 [无]:us-west-2

    • 默认输出格式[无]: json

  4. 更新变量值 vars/aws_cvo_single_node_deployment.tfvar

    备注 您可以通过将变量“aws_connector_deploy_bool”值设置为 true/false 来选择部署连接器。
  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.aws_sn" -var-file="vars/aws_cvo_single_node_deployment.tfvars"
  8. 运行部署

        terraform apply -target="module.aws_sn" -var-file="vars/aws_cvo_single_node_deployment.tfvars"

删除部署

    terraform destroy
食谱:

Connector

用于 CVO 部署的NetApp AWS 连接器实例的 Terraform 变量。

姓名 类型 描述

aws_connector_deploy_bool

布尔值

(必需)检查连接器部署。

aws_connector_name

字符串

(必需)云管理器连接器的名称。

aws_connector_region

字符串

(必需)将创建 Cloud Manager Connector 的区域。

aws_connector_key_name

字符串

(必需)用于连接器实例的密钥对的名称。

aws_connector_company

字符串

(必填)用户的公司名称。

aws_connector_instance_type

字符串

(必需)实例的类型(例如,t3.xlarge)。至少需要 4 个 CPU 和 16 GB 内存。

aws_connector_subnet_id

字符串

(必需)实例的子网 ID。

aws_connector_security_group_id

字符串

(必填)实例的安全组ID,多个安全组可以用“,”分隔。

aws_connector_iam_instance_profile_name

字符串

(必需)连接器的实例配置文件的名称。

aws_connector_account_id

字符串

(可选)连接器将与之关联的NetApp帐户 ID。如果未提供,Cloud Manager 将使用第一个帐户。如果不存在帐户,Cloud Manager 会创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID,网址为 https://cloudmanager.netapp.com

aws_connector_public_ip_bool

布尔值

(可选)指示是否将公共 IP 地址与实例关联。如果未提供,则关联将根据子网的配置完成。

Single Node Instance

单个NetApp CVO 实例的 Terraform 变量。

姓名 类型 描述

cvo_名称

字符串

(必需) Cloud Volumes ONTAP工作环境的名称。

cvo_区域

字符串

(必需)将创建工作环境的区域。

cvo_子网ID

字符串

(必需)将创建工作环境的子网 ID。

cvo_vpc_id

字符串

(可选)将创建工作环境的 VPC ID。如果未提供此参数,则将使用提供的子网 ID 来计算 VPC。

cvo_svm_密码

字符串

(必需) Cloud Volumes ONTAP的管理员密码。

cvo_writing_speed_state

字符串

(可选) Cloud Volumes ONTAP的写入速度设置:['NORMAL','HIGH']。默认值为“正常”。

CVO HA 部署
用于在 AWS 上部署NetApp CVO(HA 对)的 Terraform 配置文件

本节包含各种 Terraform 配置文件,用于在 AWS(Amazon Web Services)上以高可用性对形式部署/配置NetApp CVO(Cloud Volumes ONTAP)。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation/
  3. 从 CLI 配置 AWS 凭证。

        aws configure
    • AWS 访问密钥 ID [无]:accesskey

    • AWS 秘密访问密钥 [无]:secretkey

    • 默认区域名称 [无]:us-west-2

    • 默认输出格式[无]: json

  4. 更新变量值 vars/aws_cvo_ha_deployment.tfvars

    备注 您可以通过将变量“aws_connector_deploy_bool”值设置为 true/false 来选择部署连接器。
  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

          terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.aws_ha" -var-file="vars/aws_cvo_ha_deployment.tfvars"
  8. 运行部署

        terraform apply -target="module.aws_ha" -var-file="vars/aws_cvo_ha_deployment.tfvars"

删除部署

    terraform destroy
食谱:

Connector

用于 CVO 部署的NetApp AWS 连接器实例的 Terraform 变量。

姓名 类型 描述

aws_connector_deploy_bool

布尔值

(必需)检查连接器部署。

aws_connector_name

字符串

(必需)云管理器连接器的名称。

aws_connector_region

字符串

(必需)将创建 Cloud Manager Connector 的区域。

aws_connector_key_name

字符串

(必需)用于连接器实例的密钥对的名称。

aws_connector_company

字符串

(必填)用户的公司名称。

aws_connector_instance_type

字符串

(必需)实例的类型(例如,t3.xlarge)。至少需要 4 个 CPU 和 16 GB 内存。

aws_connector_subnet_id

字符串

(必需)实例的子网 ID。

aws_connector_security_group_id

字符串

(必填)实例的安全组ID,多个安全组可以用“,”分隔。

aws_connector_iam_instance_profile_name

字符串

(必需)连接器的实例配置文件的名称。

aws_connector_account_id

字符串

(可选)连接器将与之关联的NetApp帐户 ID。如果未提供,Cloud Manager 将使用第一个帐户。如果不存在帐户,Cloud Manager 会创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID,网址为 https://cloudmanager.netapp.com

aws_connector_public_ip_bool

布尔值

(可选)指示是否将公共 IP 地址与实例关联。如果未提供,则关联将根据子网的配置完成。

HA Pair

HA 对中NetApp CVO 实例的 Terraform 变量。

姓名 类型 描述

cvo_is_ha

布尔值

(可选)指示工作环境是否为 HA 对 [true,false]。默认值为 false。

cvo_名称

字符串

(必需) Cloud Volumes ONTAP工作环境的名称。

cvo_区域

字符串

(必需)将创建工作环境的区域。

cvo_node1_subnet_id

字符串

(必需)将创建第一个节点的子网 ID。

cvo_node2_subnet_id

字符串

(必需)将创建第二个节点的子网 ID。

cvo_vpc_id

字符串

(可选)将创建工作环境的 VPC ID。如果未提供此参数,则将使用提供的子网 ID 来计算 VPC。

cvo_svm_密码

字符串

(必需) Cloud Volumes ONTAP的管理员密码。

cvo_failover_mode

字符串

(可选)对于 HA,HA 对的故障转移模式:['PrivateIP','FloatingIP']。 “PrivateIP”适用于单个可用区域,“FloatingIP”适用于多个可用区域。

cvo_mediator_subnet_id

字符串

(可选)对于 HA,这是中介的子网 ID。

cvo_mediator_key_pair_name

字符串

(可选)对于 HA,这是中介实例的密钥对名称。

cvo_cluster_floating_ip

字符串

(可选)对于 HA FloatingIP,集群管理浮动 IP 地址。

cvo_data_floating_ip

字符串

(可选)对于 HA FloatingIP,数据浮动 IP 地址。

cvo_data_floating_ip2

字符串

(可选)对于 HA FloatingIP,数据浮动 IP 地址。

cvo_svm_floating_ip

字符串

(可选)对于 HA FloatingIP,SVM 管理浮动 IP 地址。

cvo_route_table_ids

列表

(可选)对于 HA FloatingIP,将使用浮动 IP 更新的路由表 ID 列表。

FSx 部署
用于在 AWS 上部署NetApp ONTAP FSx 的 Terraform 配置文件

本节包含用于在 AWS(Amazon Web Services)上部署/配置NetApp ONTAP FSx 的各种 Terraform 配置文件。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation/
  3. 从 CLI 配置 AWS 凭证。

        aws configure
    • AWS 访问密钥 ID [无]:accesskey

    • AWS 秘密访问密钥 [无]:secretkey

    • 默认区域名称 [无]:us-west-2

    • 默认输出格式[无]:

  4. 更新变量值 vars/aws_fsx_deployment.tfvars

    备注 您可以通过将变量“aws_connector_deploy_bool”值设置为 true/false 来选择部署连接器。
  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.aws_fsx" -var-file="vars/aws_fsx_deployment.tfvars"
  8. 运行部署

        terraform apply -target="module.aws_fsx" -var-file="vars/aws_fsx_deployment.tfvars"

删除部署

    terraform destroy
食谱:

Connector

NetApp AWS 连接器实例的 Terraform 变量。

姓名 类型 描述

aws_connector_deploy_bool

布尔值

(必需)检查连接器部署。

aws_connector_name

字符串

(必需)云管理器连接器的名称。

aws_connector_region

字符串

(必需)将创建 Cloud Manager Connector 的区域。

aws_connector_key_name

字符串

(必需)用于连接器实例的密钥对的名称。

aws_connector_company

字符串

(必填)用户的公司名称。

aws_connector_instance_type

字符串

(必需)实例的类型(例如,t3.xlarge)。至少需要 4 个 CPU 和 16 GB 内存。

aws_connector_subnet_id

字符串

(必需)实例的子网 ID。

aws_connector_security_group_id

字符串

(必填)实例的安全组ID,多个安全组可以用“,”分隔。

aws_connector_iam_instance_profile_name

字符串

(必需)连接器的实例配置文件的名称。

aws_connector_account_id

字符串

(可选)连接器将与之关联的NetApp帐户 ID。如果未提供,Cloud Manager 将使用第一个帐户。如果不存在帐户,Cloud Manager 会创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID,网址为 https://cloudmanager.netapp.com

aws_connector_public_ip_bool

布尔值

(可选)指示是否将公共 IP 地址与实例关联。如果未提供,则关联将根据子网的配置完成。

FSx Instance

NetApp ONTAP FSx 实例的 Terraform 变量。

姓名 类型 描述

fsx_名称

字符串

(必需) Cloud Volumes ONTAP工作环境的名称。

fsx_区域

字符串

(必需)将创建工作环境的区域。

fsx_primary_subnet_id

字符串

(必需)将创建工作环境的主子网 ID。

fsx_secondary_subnet_id

字符串

(必需)将创建工作环境的辅助子网 ID。

fsx_account_id

字符串

(必需)FSx 实例将与之关联的NetApp帐户 ID。如果未提供,Cloud Manager 将使用第一个帐户。如果不存在帐户,Cloud Manager 会创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID,网址为 https://cloudmanager.netapp.com

fsx_workspace_id

字符串

(必填)工作环境的云管理器工作区的 ID。

fsx_admin_密码

字符串

(必需) Cloud Volumes ONTAP的管理员密码。

fsx_throughput_capacity

字符串

(可选)吞吐量的能力。

fsx_storage_capacity_size

字符串

(可选)第一个数据聚合的 EBS 卷大小。对于 GB,单位可以是:[100 或 500]。对于 TB,单位可以是:[1,2,4,8,16]。默认值为“1”

fsx_storage_capacity_size_unit(fsx_storage_capacity_size_unit)

字符串

(可选)['GB' 或 'TB']。默认值为“TB”。

fsx_cloudmanager_aws_credential_name

字符串

(必需)AWS Credentials 帐户名称。

Azure
心钠素
用于在 Azure 上部署 ANF 卷的 Terraform 配置文件

本节包含用于在 Azure 上部署/配置 ANF(Azure Netapp 文件)卷的各种 Terraform 配置文件。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation
  3. 登录到您的 Azure CLI(必须安装 Azure CLI)。

        az login
  4. 更新变量值 vars/azure_anf.tfvars

    备注 您可以选择使用现有的 vnet 和子网部署 ANF 卷,方法是将变量“vnet_creation_bool”和“subnet_creation_bool”值设置为 false 并提供“subnet_id_for_anf_vol”。您还可以将这些值设置为 true 并创建新的 vnet 和子网,在这种情况下,子网 ID 将自动从新创建的子网中获取。
  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.anf" -var-file="vars/azure_anf.tfvars"
  8. 运行部署

        terraform apply -target="module.anf" -var-file="vars/azure_anf.tfvars"

删除部署

  terraform destroy
食谱:

Single Node Instance

单个NetApp ANF 卷的 Terraform 变量。

姓名 类型 描述

az_location

字符串

(必需)指定资源所在的受支持的 Azure 位置。改变这一点会强制创建新的资源。

az_前缀

字符串

(必需)应创建NetApp卷的资源组的名称。改变这一点会强制创建新的资源。

az_vnet_address_space

字符串

(必需)新创建的 vnet 用于 ANF 卷部署的地址空间。

az_subnet_address_prefix

字符串

(必需)新创建的 vnet 用于 ANF 卷部署的子网地址前缀。

az_volume_path

字符串

(必需)卷的唯一文件路径。创建挂载目标时使用。改变这一点会强制创建新的资源。

az_capacity_pool_size

整型

(必填)容量池大小(以 TB 为单位)。

az_vnet_creation_bool

布尔型

(必需)将此布尔值设置为 `true`如果您想创建一个新的虚拟网络。将其设置为 `false`使用现有的虚拟网络。

az_subnet_creation_bool

布尔型

(必需)将此布尔值设置为 `true`创建新的子网。将其设置为 `false`使用现有子网。

az_subnet_id_for_anf_vol

字符串

(必需)如果您决定使用现有子网,请通过设置来提及子网 ID `subnet_creation_bool`为真。如果设置为 false,则保留其默认值。

az_netapp_pool_service_level

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_service_level

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_协议

字符串

(可选)以列表形式表示的目标卷协议。支持的单值包括 CIFSNFSv3 , 或者 NFSv4.1。如果未定义参数,则默认为 NFSv3。更改此设置将强制创建新资源,并且数据将会丢失。

az_netapp_vol_security_style

字符串

(可选)卷安全样式,可接受的值为 Unix`或者 `Ntfs。如果未提供,则默认创建单协议卷 Unix`如果是 `NFSv3`或者 `NFSv4.1`音量,如果 `CIFS,它将默认为 Ntfs。在双协议卷中,如果未提供,则其值将为 Ntfs

az_netapp_vol_storage_quota

字符串

(必填)文件系统允许的最大存储配额(以 GB 为单位)。

备注 根据建议,此脚本使用 `prevent_destroy`生命周期参数来减轻配置文件中意外丢失数据的可能性。有关 `prevent_destroy`生命周期参数请参阅 Terraform 文档: https://developer.hashicorp.com/terraform/tutorials/state/resource-lifecycle#prevent-resource-deletion
ANF 数据保护
用于在 Azure 上部署具有数据保护的 ANF 卷的 Terraform 配置文件

本节包含各种 Terraform 配置文件,用于在 Azure 上部署/配置具有数据保护的 ANF(Azure Netapp 文件)卷。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation
  3. 登录到您的 Azure CLI(必须安装 Azure CLI)。

        az login
  4. 更新变量值 vars/azure_anf_data_protection.tfvars

    备注 您可以选择使用现有的 vnet 和子网部署 ANF 卷,方法是将变量“vnet_creation_bool”和“subnet_creation_bool”值设置为 false 并提供“subnet_id_for_anf_vol”。您还可以将这些值设置为 true 并创建新的 vnet 和子网,在这种情况下,子网 ID 将自动从新创建的子网中获取。
  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.anf_data_protection" -var-file="vars/azure_anf_data_protection.tfvars"
  8. 运行部署

        terraform apply -target="module.anf_data_protection" -var-file="vars/azure_anf_data_protection.tfvars

删除部署

  terraform destroy
食谱:

ANF Data Protection

启用数据保护的单个 ANF 卷的 Terraform 变量。

姓名 类型 描述

az_location

字符串

(必需)指定资源所在的受支持的 Azure 位置。改变这一点会强制创建新的资源。

az_alt_location

字符串

(必需)将创建辅助卷的 Azure 位置

az_前缀

字符串

(必需)应创建NetApp卷的资源组的名称。改变这一点会强制创建新的资源。

az_vnet_primary_address_space

字符串

(必需)新创建的 vnet 用于 ANF 主卷部署的地址空间。

az_vnet_secondary_address_space

字符串

(必需)新创建的 vnet 用于 ANF 辅助卷部署的地址空间。

az_subnet_primary_address_prefix

字符串

(必需)新创建的 vnet 用于 ANF 主卷部署的子网地址前缀。

az_subnet_secondary_address_prefix

字符串

(必需)新创建的 vnet 用于 ANF 辅助卷部署的子网地址前缀。

az_volume_path_primary

字符串

(必需)主卷的唯一文件路径。创建挂载目标时使用。改变这一点会强制创建新的资源。

az_volume_path_secondary

字符串

(必需)辅助卷的唯一文件路径。创建挂载目标时使用。改变这一点会强制创建新的资源。

az_capacity_pool_size_primary

整型

(必填)容量池大小(以 TB 为单位)。

az_capacity_pool_size_secondary

整型

(必填)容量池大小(以 TB 为单位)。

az_vnet_primary_creation_bool

布尔型

(必需)将此布尔值设置为 `true`如果您想为主卷创建一个新的 vnet。将其设置为 `false`使用现有的虚拟网络。

az_vnet_secondary_creation_bool

布尔型

(必需)将此布尔值设置为 `true`如果您想为辅助卷创建一个新的 vnet。将其设置为 `false`使用现有的虚拟网络。

az_subnet_primary_creation_bool

布尔型

(必需)将此布尔值设置为 `true`为主卷创建新的子网。将其设置为 `false`使用现有子网。

az_subnet_secondary_creation_bool

布尔型

(必需)将此布尔值设置为 `true`为辅助卷创建新的子网。将其设置为 `false`使用现有子网。

az_primary_subnet_id_for_anf_vol*

字符串

(必需)如果您决定使用现有子网,请通过设置来提及子网 ID `subnet_primary_creation_bool`为真。如果设置为 false,则保留其默认值。

az_secondary_subnet_id_for_anf_vol*

字符串

(必需)如果您决定使用现有子网,请通过设置来提及子网 ID `subnet_secondary_creation_bool`为真。如果设置为 false,则保留其默认值。

az_netapp_pool_service_level_primary

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_pool_service_level_secondary

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_service_level_primary

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_service_level_secondary

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_protocol_primary

字符串

(可选)以列表形式表示的目标卷协议。支持的单值包括 CIFSNFSv3 , 或者 NFSv4.1。如果未定义参数,则默认为 NFSv3。更改此设置将强制创建新资源,并且数据将会丢失。

az_netapp_vol_protocol_secondary

字符串

(可选)以列表形式表示的目标卷协议。支持的单值包括 CIFSNFSv3 , 或者 NFSv4.1。如果未定义参数,则默认为 NFSv3。更改此设置将强制创建新资源,并且数据将会丢失。

az_netapp_vol_storage_quota_primary

字符串

(必填)文件系统允许的最大存储配额(以 GB 为单位)。

az_netapp_vol_storage_quota_secondary

字符串

(必填)文件系统允许的最大存储配额(以 GB 为单位)。

az_dp_replication_频率

字符串

(必填)复制频率,支持的值为 10minuteshourlydaily ,值区分大小写。

备注 根据建议,此脚本使用 `prevent_destroy`生命周期参数来减轻配置文件中意外丢失数据的可能性。有关 `prevent_destroy`生命周期参数请参阅 Terraform 文档: https://developer.hashicorp.com/terraform/tutorials/state/resource-lifecycle#prevent-resource-deletion
ANF 双协议
用于在 Azure 上部署具有双协议的 ANF 卷的 Terraform 配置文件

本节包含各种 Terraform 配置文件,用于在 Azure 上部署/配置启用双协议的 ANF(Azure Netapp 文件)卷。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation
  3. 登录到您的 Azure CLI(必须安装 Azure CLI)。

        az login
  4. 更新变量值 vars/azure_anf_dual_protocol.tfvars

    备注 您可以选择使用现有的 vnet 和子网部署 ANF 卷,方法是将变量“vnet_creation_bool”和“subnet_creation_bool”值设置为 false 并提供“subnet_id_for_anf_vol”。您还可以将这些值设置为 true 并创建新的 vnet 和子网,在这种情况下,子网 ID 将自动从新创建的子网中获取。
  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.anf_dual_protocol" -var-file="vars/azure_anf_dual_protocol.tfvars"
  8. 运行部署

        terraform apply -target="module.anf_dual_protocol" -var-file="vars/azure_anf_dual_protocol.tfvars"

删除部署

  terraform destroy
食谱:

Single Node Instance

启用双协议的单个 ANF 卷的 Terraform 变量。

姓名 类型 描述

az_location

字符串

(必需)指定资源所在的受支持的 Azure 位置。改变这一点会强制创建新的资源。

az_前缀

字符串

(必需)应创建NetApp卷的资源组的名称。改变这一点会强制创建新的资源。

az_vnet_address_space

字符串

(必需)新创建的 vnet 用于 ANF 卷部署的地址空间。

az_subnet_address_prefix

字符串

(必需)新创建的 vnet 用于 ANF 卷部署的子网地址前缀。

az_volume_path

字符串

(必需)卷的唯一文件路径。创建挂载目标时使用。改变这一点会强制创建新的资源。

az_capacity_pool_size

整型

(必填)容量池大小(以 TB 为单位)。

az_vnet_creation_bool

布尔型

(必需)将此布尔值设置为 `true`如果您想创建一个新的虚拟网络。将其设置为 `false`使用现有的虚拟网络。

az_subnet_creation_bool

布尔型

(必需)将此布尔值设置为 `true`创建新的子网。将其设置为 `false`使用现有子网。

az_subnet_id_for_anf_vol

字符串

(必需)如果您决定使用现有子网,请通过设置来提及子网 ID `subnet_creation_bool`为真。如果设置为 false,则保留其默认值。

az_netapp_pool_service_level

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_service_level

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_protocol1

字符串

(必需)以列表形式表示的目标卷协议。支持的单值包括 CIFSNFSv3 , 或者 NFSv4.1。如果未定义参数,则默认为 NFSv3。更改此设置将强制创建新资源,并且数据将会丢失。

az_netapp_vol_protocol2

字符串

(必需)以列表形式表示的目标卷协议。支持的单值包括 CIFSNFSv3 , 或者 NFSv4.1。如果未定义参数,则默认为 NFSv3。更改此设置将强制创建新资源,并且数据将会丢失。

az_netapp_vol_storage_quota

字符串

(必填)文件系统允许的最大存储配额(以 GB 为单位)。

az_smb_server_用户名

字符串

(必需)用于创建 ActiveDirectory 对象的用户名。

az_smb_server_password

字符串

(必需)用于创建 ActiveDirectory 对象的用户密码。

az_smb_服务器名称

字符串

(必需)用于创建 ActiveDirectory 对象的服务器名称。

az_smb_dns_服务器

字符串

(必需)用于创建 ActiveDirectory 对象的 DNS 服务器 IP。

备注 根据建议,此脚本使用 `prevent_destroy`生命周期参数来减轻配置文件中意外丢失数据的可能性。有关 `prevent_destroy`生命周期参数请参阅 Terraform 文档: https://developer.hashicorp.com/terraform/tutorials/state/resource-lifecycle#prevent-resource-deletion
来自快照的 ANF 卷
用于从 Azure 上的快照部署 ANF 卷的 Terraform 配置文件

本节包含各种 Terraform 配置文件,用于从 Azure 上的快照部署/配置 ANF(Azure Netapp 文件)卷。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation
  3. 登录到您的 Azure CLI(必须安装 Azure CLI)。

        az login
  4. 更新变量值 vars/azure_anf_volume_from_snapshot.tfvars

备注 您可以选择使用现有的 vnet 和子网部署 ANF 卷,方法是将变量“vnet_creation_bool”和“subnet_creation_bool”值设置为 false 并提供“subnet_id_for_anf_vol”。您还可以将这些值设置为 true 并创建新的 vnet 和子网,在这种情况下,子网 ID 将自动从新创建的子网中获取。
  1. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  2. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  3. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.anf_volume_from_snapshot" -var-file="vars/azure_anf_volume_from_snapshot.tfvars"
  4. 运行部署

        terraform apply -target="module.anf_volume_from_snapshot" -var-file="vars/azure_anf_volume_from_snapshot.tfvars"

删除部署

  terraform destroy
食谱:

Single Node Instance

使用快照的单个 ANF 卷的 Terraform 变量。

姓名 类型 描述

az_location

字符串

(必需)指定资源所在的受支持的 Azure 位置。改变这一点会强制创建新的资源。

az_前缀

字符串

(必需)应创建NetApp卷的资源组的名称。改变这一点会强制创建新的资源。

az_vnet_address_space

字符串

(必需)新创建的 vnet 用于 ANF 卷部署的地址空间。

az_subnet_address_prefix

字符串

(必需)新创建的 vnet 用于 ANF 卷部署的子网地址前缀。

az_volume_path

字符串

(必需)卷的唯一文件路径。创建挂载目标时使用。改变这一点会强制创建新的资源。

az_capacity_pool_size

整型

(必填)容量池大小(以 TB 为单位)。

az_vnet_creation_bool

布尔型

(必需)将此布尔值设置为 `true`如果您想创建一个新的虚拟网络。将其设置为 `false`使用现有的虚拟网络。

az_subnet_creation_bool

布尔型

(必需)将此布尔值设置为 `true`创建新的子网。将其设置为 `false`使用现有子网。

az_subnet_id_for_anf_vol

字符串

(必需)如果您决定使用现有子网,请通过设置来提及子网 ID `subnet_creation_bool`为真。如果设置为 false,则保留其默认值。

az_netapp_pool_service_level

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_service_level

字符串

(必需)文件系统的目标性能。有效值包括 PremiumStandard , 或者 Ultra

az_netapp_vol_协议

字符串

(可选)以列表形式表示的目标卷协议。支持的单值包括 CIFSNFSv3 , 或者 NFSv4.1。如果未定义参数,则默认为 NFSv3。更改此设置将强制创建新资源,并且数据将会丢失。

az_netapp_vol_storage_quota

字符串

(必填)文件系统允许的最大存储配额(以 GB 为单位)。

az_snapshot_id

字符串

(必需)将使用其创建新 ANF 卷的快照 ID。

备注 根据建议,此脚本使用 `prevent_destroy`生命周期参数来减轻配置文件中意外丢失数据的可能性。有关 `prevent_destroy`生命周期参数请参阅 Terraform 文档: https://developer.hashicorp.com/terraform/tutorials/state/resource-lifecycle#prevent-resource-deletion
CVO单节点部署
用于在 Azure 上部署单节点 CVO 的 Terraform 配置文件

本节包含用于在 Azure 上部署/配置单节点 CVO(Cloud Volumes ONTAP)的各种 Terraform 配置文件。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation
  3. 登录到您的 Azure CLI(必须安装 Azure CLI)。

        az login
  4. 更新变量 vars\azure_cvo_single_node_deployment.tfvars

  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.az_cvo_single_node_deployment" -var-file="vars\azure_cvo_single_node_deployment.tfvars"
  8. 运行部署

        terraform apply -target="module.az_cvo_single_node_deployment" -var-file="vars\azure_cvo_single_node_deployment.tfvars"

删除部署

  terraform destroy
食谱:

Single Node Instance

单节点Cloud Volumes ONTAP (CVO) 的 Terraform 变量。

姓名 类型 描述

刷新令牌

字符串

(必需) NetApp云管理器的刷新令牌。这可以从 netapp Cloud Central 生成。

az_connector_name

字符串

(必需)云管理器连接器的名称。

az_connector_location

字符串

(必需)将创建云管理器连接器的位置。

az_connector_subscription_id

字符串

(必需)Azure 订阅的 ID。

az_connector_company

字符串

(必填)用户的公司名称。

az_connector_resource_group

整型

(必需)Azure 中将创建资源的资源组。

az_connector_subnet_id

字符串

(必需)虚拟机子网的名称。

az_connector_vnet_id

字符串

(必填)虚拟网络的名称。

az_connector_network_security_group_name

字符串

(必需)实例的安全组的名称。

az_connector_associate_public_ip_address

字符串

(必填)指示是否将公共 IP 地址与虚拟机关联。

az_connector_account_id

字符串

(必需)连接器将与之关联的NetApp帐户 ID。如果未提供,Cloud Manager 将使用第一个帐户。如果不存在帐户,Cloud Manager 会创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID,网址为 https://cloudmanager.netapp.com

az_connector_admin_密码

字符串

(必需)连接器的密码。

az_connector_admin_用户名

字符串

(必需)连接器的用户名。

az_cvo_名称

字符串

(必需) Cloud Volumes ONTAP工作环境的名称。

az_cvo_location

字符串

(必填)将创建工作环境的位置。

az_cvo_子网ID

字符串

(必需) Cloud Volumes ONTAP系统的子网名称。

az_cvo_vnet_id

字符串

(必填)虚拟网络的名称。

az_cvo_vnet_resource_group

字符串

(必需)Azure 中与虚拟网络关联的资源组。

az_cvo_data_encryption_type

字符串

(必需)工作环境使用的加密类型: AZURENONE ]。默认值是 AZURE

az_cvo_storage_type

字符串

(必需)第一个数据聚合的存储类型: Premium_LRSStandard_LRSStandardSSD_LRS ]。默认值是 Premium_LRS

az_cvo_svm_密码

字符串

(必需) Cloud Volumes ONTAP的管理员密码。

az_cvo_workspace_id

字符串

(必需)您要部署Cloud Volumes ONTAP 的Cloud Manager 工作区的 ID。如果未提供,Cloud Manager 将使用第一个工作区。您可以从“工作区”选项卡中找到该 ID https://cloudmanager.netapp.com

az_cvo_容量层

字符串

(必需)是否为第一个数据聚合启用数据分层:[BlobNONE ]。默认值是 BLOB

az_cvo_writing_speed_state

字符串

(必需) Cloud Volumes ONTAP的写入速度设置: NORMALHIGH ]。默认值是 NORMAL。此参数与 HA 对无关。

az_cvo_ontap_version

字符串

(必需)所需的ONTAP版本。如果“use_latest_version”设置为 true,则忽略。默认使用最新版本。

az_cvo_实例类型

字符串

(必需)要使用的实例类型取决于您选择的许可证类型:探索:[Standard_DS3_v2 ], 标准:[Standard_DS4_v2,Standard_DS13_v2,Standard_L8s_v2 ], 优质的:[Standard_DS5_v2,Standard_DS14_v2 ], BYOL:为 PayGo 定义的所有实例类型。有关更多受支持的实例类型,请参阅Cloud Volumes ONTAP发行说明。默认值是 Standard_DS4_v2

az_cvo_许可证类型

字符串

(必填)要使用的许可证类型。对于单节点:[azure-cot-explore-paygoazure-cot-standard-paygoazure-cot-premium-paygoazure-cot-premium-byolcapacity-paygo ]。对于 HA:[azure-ha-cot-standard-paygoazure-ha-cot-premium-paygoazure-ha-cot-premium-byolha-capacity-paygo ]。默认值是 azure-cot-standard-paygo。使用 `capacity-paygo`或者 `ha-capacity-paygo`对于 HA,请选择自带许可证类型“基于容量”或“免费增值”。使用 `azure-cot-premium-byol`或者 `azure-ha-cot-premium-byol`对于 HA,请选择自带许可证类型“基于节点”。

az_cvo_nss_account

字符串

(必需)与此Cloud Volumes ONTAP系统一起使用的NetApp支持站点帐户 ID。如果许可证类型为 BYOL 且未提供 NSS 帐户,则 Cloud Manager 将尝试使用第一个现有的 NSS 帐户。

az_tenant_id

字符串

(必需)在 Azure 中注册的应用程序/服务主体的租户 ID。

az_application_id

字符串

(必需)在 Azure 中注册的应用程序/服务主体的应用程序 ID。

az_application_key

字符串

(必需)在 Azure 中注册的应用程序/服务主体的应用程序密钥。

CVO HA 部署
用于在 Azure 上部署 CVO HA 的 Terraform 配置文件

本节包含用于在 Azure 上部署/配置 CVO(Cloud Volumes ONTAP)HA(高可用性)的各种 Terraform 配置文件。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation
  3. 登录到您的 Azure CLI(必须安装 Azure CLI)。

        az login
  4. 更新变量 vars\azure_cvo_ha_deployment.tfvars

  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.az_cvo_ha_deployment" -var-file="vars\azure_cvo_ha_deployment.tfvars"
  8. 运行部署

        terraform apply -target="module.az_cvo_ha_deployment" -var-file="vars\azure_cvo_ha_deployment.tfvars"

删除部署

  terraform destroy
食谱:

HA Pair Instance

HA 对Cloud Volumes ONTAP (CVO) 的 Terraform 变量。

姓名 类型 描述

刷新令牌

字符串

(必需) NetApp云管理器的刷新令牌。这可以从 netapp Cloud Central 生成。

az_connector_name

字符串

(必需)云管理器连接器的名称。

az_connector_location

字符串

(必需)将创建云管理器连接器的位置。

az_connector_subscription_id

字符串

(必需)Azure 订阅的 ID。

az_connector_company

字符串

(必填)用户的公司名称。

az_connector_resource_group

整型

(必需)Azure 中将创建资源的资源组。

az_connector_subnet_id

字符串

(必需)虚拟机子网的名称。

az_connector_vnet_id

字符串

(必填)虚拟网络的名称。

az_connector_network_security_group_name

字符串

(必需)实例的安全组的名称。

az_connector_associate_public_ip_address

字符串

(必填)指示是否将公共 IP 地址与虚拟机关联。

az_connector_account_id

字符串

(必需)连接器将与之关联的NetApp帐户 ID。如果未提供,Cloud Manager 将使用第一个帐户。如果不存在帐户,Cloud Manager 会创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID,网址为 https://cloudmanager.netapp.com

az_connector_admin_密码

字符串

(必需)连接器的密码。

az_connector_admin_用户名

字符串

(必需)连接器的用户名。

az_cvo_名称

字符串

(必需) Cloud Volumes ONTAP工作环境的名称。

az_cvo_location

字符串

(必填)将创建工作环境的位置。

az_cvo_子网ID

字符串

(必需) Cloud Volumes ONTAP系统的子网名称。

az_cvo_vnet_id

字符串

(必填)虚拟网络的名称。

az_cvo_vnet_resource_group

字符串

(必需)Azure 中与虚拟网络关联的资源组。

az_cvo_data_encryption_type

字符串

(必需)工作环境使用的加密类型: AZURENONE ]。默认值是 AZURE

az_cvo_storage_type

字符串

(必需)第一个数据聚合的存储类型: Premium_LRSStandard_LRSStandardSSD_LRS ]。默认值是 Premium_LRS

az_cvo_svm_密码

字符串

(必需) Cloud Volumes ONTAP的管理员密码。

az_cvo_workspace_id

字符串

(必需)您要部署Cloud Volumes ONTAP 的Cloud Manager 工作区的 ID。如果未提供,Cloud Manager 将使用第一个工作区。您可以从“工作区”选项卡中找到该 ID https://cloudmanager.netapp.com

az_cvo_容量层

字符串

(必需)是否为第一个数据聚合启用数据分层:[BlobNONE ]。默认值是 BLOB

az_cvo_writing_speed_state

字符串

(必需) Cloud Volumes ONTAP的写入速度设置: NORMALHIGH ]。默认值是 NORMAL。此参数与 HA 对无关。

az_cvo_ontap_version

字符串

(必需)所需的ONTAP版本。如果“use_latest_version”设置为 true,则忽略。默认使用最新版本。

az_cvo_实例类型

字符串

(必需)要使用的实例类型取决于您选择的许可证类型:探索:[Standard_DS3_v2 ], 标准:[Standard_DS4_v2, Standard_DS13_v2, Standard_L8s_v2 ], 优质的:[Standard_DS5_v2Standard_DS14_v2 ], BYOL:为 PayGo 定义的所有实例类型。有关更多受支持的实例类型,请参阅Cloud Volumes ONTAP发行说明。默认值是 Standard_DS4_v2

az_cvo_许可证类型

字符串

(必填)要使用的许可证类型。对于单节点:[azure-cot-explore-paygo, azure-cot-standard-paygo, azure-cot-premium-paygo, azure-cot-premium-byol, capacity-paygo ]。对于 HA:[azure-ha-cot-standard-paygo, azure-ha-cot-premium-paygo, azure-ha-cot-premium-byol, ha-capacity-paygo ]。默认值是 azure-cot-standard-paygo。使用 `capacity-paygo`或者 `ha-capacity-paygo`对于 HA,请选择自带许可证类型“基于容量”或“免费增值”。使用 `azure-cot-premium-byol`或者 `azure-ha-cot-premium-byol`对于 HA,请选择自带许可证类型“基于节点”。

az_cvo_nss_account

字符串

(必需)与此Cloud Volumes ONTAP系统一起使用的NetApp支持站点帐户 ID。如果许可证类型为 BYOL 且未提供 NSS 帐户,则 Cloud Manager 将尝试使用第一个现有的 NSS 帐户。

az_tenant_id

字符串

(必需)在 Azure 中注册的应用程序/服务主体的租户 ID。

az_application_id

字符串

(必需)在 Azure 中注册的应用程序/服务主体的应用程序 ID。

az_application_key

字符串

(必需)在 Azure 中注册的应用程序/服务主体的应用程序密钥。

GCP
CVO单节点部署
用于在 GCP 上部署NetApp CVO(单节点实例)的 Terraform 配置文件

本节包含各种 Terraform 配置文件,用于在 GCP(Google Cloud Platform)上部署/配置单节点NetApp CVO(Cloud Volumes ONTAP)。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation/
  3. 将 GCP 身份验证密钥 JSON 文件保存在目录中。

  4. 更新变量值 vars/gcp_cvo_single_node_deployment.tfvar

    备注 您可以通过将变量“gcp_connector_deploy_bool”值设置为 true/false 来选择部署连接器。
  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

        terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.gco_single_node" -var-file="vars/gcp_cvo_single_node_deployment.tfvars"
  8. 运行部署

        terraform apply -target="module.gcp_single_node" -var-file="vars/gcp_cvo_single_node_deployment.tfvars"

删除部署

    terraform destroy
食谱:

Connector

用于 CVO 部署的NetApp GCP 连接器实例的 Terraform 变量。

姓名 类型 描述

gcp_connector_deploy_bool

布尔值

(必需)检查连接器部署。

gcp_connector_name

字符串

(必需)云管理器连接器的名称。

gcp_connector_project_id

字符串

(必需)将创建连接器的 GCP project_id。

gcp_connector_zone

字符串

(必需)将创建连接器的 GCP 区域。

gcp_connector_company

字符串

(必填)用户的公司名称。

gcp_connector_service_account_email

字符串

(必需)连接器实例的 service_account 的电子邮件。此服务帐户用于允许连接器创建 Cloud Volume ONTAP。

gcp_connector_service_account_path

字符串

(必需)用于 GCP 授权目的的 service_account JSON 文件的本地路径。此服务帐户用于在 GCP 中创建连接器。

gcp_connector_account_id

字符串

(可选)连接器将与之关联的NetApp帐户 ID。如果未提供,Cloud Manager 将使用第一个帐户。如果不存在帐户,Cloud Manager 会创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID,网址为 https://cloudmanager.netapp.com

Single Node Instance

GCP 上单个NetApp CVO 实例的 Terraform 变量。

姓名 类型 描述

gcp_cvo_名称

字符串

(必需) Cloud Volumes ONTAP工作环境的名称。

gcp_cvo_项目ID

字符串

(必填)GCP 项目的 ID。

gcp_cvo_zone

字符串

(必填)将创建工作环境的区域的区域。

gcp_cvo_gcp_service_account

字符串

(必需)gcp_service_account 电子邮件,以便将冷数据分层到 Google Cloud Storage。

gcp_cvo_svm_密码

字符串

(必需) Cloud Volumes ONTAP的管理员密码。

gcp_cvo_workspace_id

字符串

(可选)您要部署Cloud Volumes ONTAP 的Cloud Manager 工作区的 ID。如果未提供,Cloud Manager 将使用第一个工作区。您可以从“工作区”选项卡中找到该 ID https://cloudmanager.netapp.com

gcp_cvo_许可证类型

字符串

(可选)要使用的许可证类型。对于单节点:['capacity-paygo', 'gcp-cot-explore-paygo', 'gcp-cot-standard-paygo', 'gcp-cot-premium-paygo', 'gcp-cot-premium-byol'],对于 HA:['ha-capacity-paygo', 'gcp-ha-cot-explore-paygo', 'gcp-ha-cot-standard-paygo', 'gcp-ha-cot-premium-paygo', 'gcp-ha-cot-premium-byol']。单节点默认为‘capacity-paygo’,HA默认为‘ha-capacity-paygo’。

gcp_cvo_capacity_package_name

字符串

(可选)容量包名称:['Essential', 'Professional', 'Freemium']。默认为‘必需’。

CVO HA 部署
用于在 GCP 上部署NetApp CVO(HA 对)的 Terraform 配置文件

本节包含各种 Terraform 配置文件,用于在 GCP(Google Cloud Platform)上以高可用性对形式部署/配置NetApp CVO(Cloud Volumes ONTAP)。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation/
  3. 将 GCP 身份验证密钥 JSON 文件保存在目录中。

  4. 更新变量值 vars/gcp_cvo_ha_deployment.tfvars

    备注 您可以通过将变量“gcp_connector_deploy_bool”值设置为 true/false 来选择部署连接器。
  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

          terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.gcp_ha" -var-file="vars/gcp_cvo_ha_deployment.tfvars"
  8. 运行部署

        terraform apply -target="module.gcp_ha" -var-file="vars/gcp_cvo_ha_deployment.tfvars"

删除部署

    terraform destroy
食谱:

Connector

用于 CVO 部署的NetApp GCP 连接器实例的 Terraform 变量。

姓名 类型 描述

gcp_connector_deploy_bool

布尔值

(必需)检查连接器部署。

gcp_connector_name

字符串

(必需)云管理器连接器的名称。

gcp_connector_project_id

字符串

(必需)将创建连接器的 GCP project_id。

gcp_connector_zone

字符串

(必需)将创建连接器的 GCP 区域。

gcp_connector_company

字符串

(必填)用户的公司名称。

gcp_connector_service_account_email

字符串

(必需)连接器实例的 service_account 的电子邮件。此服务帐户用于允许连接器创建 Cloud Volume ONTAP。

gcp_connector_service_account_path

字符串

(必需)用于 GCP 授权目的的 service_account JSON 文件的本地路径。此服务帐户用于在 GCP 中创建连接器。

gcp_connector_account_id

字符串

(可选)连接器将与之关联的NetApp帐户 ID。如果未提供,Cloud Manager 将使用第一个帐户。如果不存在帐户,Cloud Manager 会创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID,网址为 https://cloudmanager.netapp.com

HA Pair

GCP 上 HA 对中NetApp CVO 实例的 Terraform 变量。

姓名 类型 描述

gcp_cvo_is_ha

布尔值

(可选)指示工作环境是否为 HA 对 [true,false]。默认值为 false。

gcp_cvo_名称

字符串

(必需) Cloud Volumes ONTAP工作环境的名称。

gcp_cvo_项目ID

字符串

(必填)GCP 项目的 ID。

gcp_cvo_zone

字符串

(必填)将创建工作环境的区域的区域。

gcp_cvo_node1_zone

字符串

(可选)节点 1 的区域。

gcp_cvo_node2_zone

字符串

(可选)节点 2 的区域。

gcp_cvo_mediator_zone

字符串

(可选)调解员区域。

gcp_cvo_vpc_id

字符串

(可选)VPC 的名称。

gcp_cvo_subnet_id

字符串

(可选) Cloud Volumes ONTAP子网的名称。默认值为:“默认”。

gcp_cvo_vpc0_node_and_data_connectivity

字符串

(可选)nic1 的 VPC 路径,节点和数据连接所需。如果使用共享 VPC,则必须提供 netwrok_project_id。

gcp_cvo_vpc1_cluster_connectivity

字符串

(可选)nic2 的 VPC 路径,集群连接所需。

gcp_cvo_vpc2_ha_连接

字符串

(可选)nic3 的 VPC 路径,HA 连接所需。

gcp_cvo_vpc3_数据复制

字符串

(可选)nic4 的 VPC 路径,数据复制所需。

gcp_cvo_subnet0_node_and_data_connectivity

字符串

(可选)nic1 的子网路径,节点和数据连接所需。如果使用共享 VPC,则必须提供 netwrok_project_id。

gcp_cvo_subnet1_cluster_connectivity

字符串

(可选)nic2 的子网路径,集群连接所需。

gcp_cvo_subnet2_ha_connectivity

字符串

(可选)nic3 的子网路径,HA 连接所需。

gcp_cvo_subnet3_数据复制

字符串

(可选)nic4 的子网路径,数据复制所需。

gcp_cvo_gcp_service_account

字符串

(必需)gcp_service_account 电子邮件,以便将冷数据分层到 Google Cloud Storage。

gcp_cvo_svm_密码

字符串

(必需) Cloud Volumes ONTAP的管理员密码。

gcp_cvo_workspace_id

字符串

(可选)您要部署Cloud Volumes ONTAP 的Cloud Manager 工作区的 ID。如果未提供,Cloud Manager 将使用第一个工作区。您可以从“工作区”选项卡中找到该 ID https://cloudmanager.netapp.com

gcp_cvo_许可证类型

字符串

(可选)要使用的许可证类型。对于单节点:['capacity-paygo', 'gcp-cot-explore-paygo', 'gcp-cot-standard-paygo', 'gcp-cot-premium-paygo', 'gcp-cot-premium-byol'],对于 HA:['ha-capacity-paygo', 'gcp-ha-cot-explore-paygo', 'gcp-ha-cot-standard-paygo', 'gcp-ha-cot-premium-paygo', 'gcp-ha-cot-premium-byol']。单节点默认为‘capacity-paygo’,HA默认为‘ha-capacity-paygo’。

gcp_cvo_capacity_package_name

字符串

(可选)容量包名称:['Essential', 'Professional', 'Freemium']。默认为‘必需’。

gcp_cvo_gcp_volume_size

字符串

(可选)第一个数据聚合的 GCP 卷大小。对于 GB,单位可以是:[100 或 500]。对于 TB,单位可以是:[1,2,4,8]。默认值为 '1' 。

gcp_cvo_gcp_volume_size_unit

字符串

(可选)['GB' 或 'TB']。默认值为“TB”。

NetApp卷
用于在 GCP 上部署NetApp Volumes 的 Terraform 配置文件

本节包含各种 Terraform 配置文件,用于在 GCP(Google Cloud Platform)上部署/配置NetApp Volumes(Google Cloud NetApp Volumes)。

操作步骤

为了运行模板:

  1. 克隆存储库。

        git clone https://github.com/NetApp/na_cloud_volumes_automation.git
  2. 导航到所需的文件夹

        cd na_cloud_volumes_automation/
  3. 将 GCP 身份验证密钥 JSON 文件保存在目录中。

  4. 更新变量值 vars/gcp_cvs_volume.tfvars

  5. 初始化 Terraform 存储库以安装所有先决条件并准备部署。

          terraform init
  6. 使用 terraform verify 命令验证 terraform 文件。

        terraform validate
  7. 对配置进行试运行,以预览部署预期的所有更改。

        terraform plan -target="module.gcp_cvs_volume" -var-file="vars/gcp_cvs_volume.tfvars"
  8. 运行部署

        terraform apply -target="module.gcp_cvs_volume" -var-file="vars/gcp_cvs_volume.tfvars"

删除部署

    terraform destroy
食谱:

NetApp Volumes Volume

NetApp GCP NetApp Volumes 的 Terraform 变量。

姓名 类型 描述

gcp_cvs_name

字符串

(必需) NetApp Volumes 卷的名称。

gcp_cvs_项目 ID

字符串

(必需)将创建NetApp Volumes 的 GCP project_id。

gcp_cvs_gcp_service_account_path

字符串

(必需)用于 GCP 授权目的的 service_account JSON 文件的本地路径。此服务帐户用于在 GCP 中创建NetApp Volumes 卷。

gcp_cvs_region

字符串

(必需)将创建NetApp Volumes 的 GCP 区域。

gcp_cvs_network

字符串

(必需)卷的网络 VPC。

gcp_cvs_size

整型

(必需)卷的大小介于 1024 到 102400 之间(以 GiB 为单位)。

gcp_cvs_volume_path

字符串

(可选)卷的卷路径名称。

gcp_cvs_protocol_types

字符串

(必需)卷的 protocol_type。对于 NFS 使用“NFSv3”或“NFSv4”,对于 SMB 使用“CIFS”或“SMB”。