通过 Terraform 实现 Cloud Volumes Automation
本解决方案 介绍了使用 Terraform 模块在 AWS ( CVO 单节点, CVO HA 和 FSX ONTAP )和 Azure ( CVO 单节点, CVO HA 和 ANF )上自动部署云卷的过程。可在中找到此代码 https://github.com/NetApp/na_cloud_volumes_automation
前提条件
-
Terraform >= 0.13
-
Cloud Manager 帐户
-
云提供商帐户— AWS , Azure
-
主机( Terraform 支持的任何操作系统)
提供程序文档
有关适用于 Cloud Manager 的 Terraform Provider 的文档,请访问: "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
本节包含各种 Terraform 配置文件,用于在 AWS ( Amazon Web Services )上部署 / 配置单节点 NetApp CVO ( Cloud Volumes ONTAP )。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation/
-
从 CLI 配置 AWS 凭据。
aws configure
-
AWS 访问密钥 ID [ 无 ] :访问密钥
-
AWS 机密访问密钥 [ 无 ] : secretkey
-
默认区域名称 [ 无 ] : us-west-2
-
默认输出格式 [ 无 ] : JSON
-
-
更新
vars/AWS_CVO_single 节点 _deployment.tfvar
中的变量值您可以通过将变量 "AWS_connector_deploy_bool" 值设置为 true/false 来选择部署连接器。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.aws_sn" -var-file="vars/aws_cvo_single_node_deployment.tfvars"
-
运行部署
terraform apply -target="module.aws_sn" -var-file="vars/aws_cvo_single_node_deployment.tfvars"
删除部署
terraform destroy
连接器
用于 CVO 部署的 NetApp AWS 连接器实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* AWS 连接器 _deploy_Bool* |
池 |
(必需)检查连接器部署。 |
* AWS 连接器名称 * |
string |
(必需) Cloud Manager Connector 的名称。 |
* AWS 连接器区域 * |
string |
(必需)要创建 Cloud Manager Connector 的区域。 |
* AWS 连接器 _key_name* |
string |
(必需)要用于 Connector 实例的密钥对的名称。 |
* AWS 连接器公司 * |
string |
(必需)用户公司的名称。 |
* AWS 连接器 _instance_type* |
string |
(必需)实例的类型(例如 T3.xlarge )。至少需要 4 个 CPU 和 16 GB 内存。 |
* AWS 连接器 _subnet_id* |
string |
(必需)实例的子网 ID 。 |
* AWS 连接器 _security_group_id* |
string |
(必需)实例的安全组 ID ,可以提供多个安全组,并以 " , " 分隔。 |
* AWS 连接器 _iam_instance_profile_name* |
string |
(必需) Connector 实例配置文件的名称。 |
* AWS 连接器帐户 ID * |
string |
(可选) Connector 要关联的 NetApp 帐户 ID 。如果未提供, Cloud Manager 将使用第一个帐户。如果不存在任何帐户, Cloud Manager 将创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID ,网址为 https://cloudmanager.netapp.com。 |
* AWS 连接器 _public_ip_bool* |
池 |
(可选)指示是否将公有 IP 地址与实例关联。如果未提供,则关联将根据子网的配置完成。 |
s单节点实例
单个 NetApp CVO 实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* CVO_NAME* |
string |
(必需) Cloud Volumes ONTAP 工作环境的名称。 |
* CVO_地区 * |
string |
(必需)要创建工作环境的区域。 |
* CVO_subnet_id* |
string |
(必需)要创建工作环境的子网 ID 。 |
* CVO_VPC_ID* |
string |
(可选)要创建工作环境的 VPC ID 。如果未提供此参数,则 VPC 将使用提供的子网 ID 进行计算。 |
* CVO_SVM_password* |
string |
(必需) Cloud Volumes ONTAP 的管理员密码。 |
* CVO_writing_speed_state* |
string |
(可选) Cloud Volumes ONTAP 的写入速度设置: "Normal" , "high" 。默认值为 "Normal" 。 |
本节包含各种 Terraform 配置文件,用于在 AWS ( Amazon Web Services )上以高可用性对部署 / 配置 NetApp CVO ( Cloud Volumes ONTAP )。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation/
-
从 CLI 配置 AWS 凭据。
aws configure
-
AWS 访问密钥 ID [ 无 ] :访问密钥
-
AWS 机密访问密钥 [ 无 ] : secretkey
-
默认区域名称 [ 无 ] : us-west-2
-
默认输出格式 [ 无 ] : JSON
-
-
更新
vars/AWS_CVO_ha_deployment.tfvars
中的变量值。您可以通过将变量 "AWS_connector_deploy_bool" 值设置为 true/false 来选择部署连接器。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.aws_ha" -var-file="vars/aws_cvo_ha_deployment.tfvars"
-
运行部署
terraform apply -target="module.aws_ha" -var-file="vars/aws_cvo_ha_deployment.tfvars"
删除部署
terraform destroy
连接器
用于 CVO 部署的 NetApp AWS 连接器实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* AWS 连接器 _deploy_Bool* |
池 |
(必需)检查连接器部署。 |
* AWS 连接器名称 * |
string |
(必需) Cloud Manager Connector 的名称。 |
* AWS 连接器区域 * |
string |
(必需)要创建 Cloud Manager Connector 的区域。 |
* AWS 连接器 _key_name* |
string |
(必需)要用于 Connector 实例的密钥对的名称。 |
* AWS 连接器公司 * |
string |
(必需)用户公司的名称。 |
* AWS 连接器 _instance_type* |
string |
(必需)实例的类型(例如 T3.xlarge )。至少需要 4 个 CPU 和 16 GB 内存。 |
* AWS 连接器 _subnet_id* |
string |
(必需)实例的子网 ID 。 |
* AWS 连接器 _security_group_id* |
string |
(必需)实例的安全组 ID ,可以提供多个安全组,并以 " , " 分隔。 |
* AWS 连接器 _iam_instance_profile_name* |
string |
(必需) Connector 实例配置文件的名称。 |
* AWS 连接器帐户 ID * |
string |
(可选) Connector 要关联的 NetApp 帐户 ID 。如果未提供, Cloud Manager 将使用第一个帐户。如果不存在任何帐户, Cloud Manager 将创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID ,网址为 https://cloudmanager.netapp.com。 |
* AWS 连接器 _public_ip_bool* |
池 |
(可选)指示是否将公有 IP 地址与实例关联。如果未提供,则关联将根据子网的配置完成。 |
HA 对
HA 对中 NetApp CVO 实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* CVO_is_ha* |
池 |
(可选)指示工作环境是否为 HA 对。默认值为 false 。 |
* CVO_NAME* |
string |
(必需) Cloud Volumes ONTAP 工作环境的名称。 |
* CVO_地区 * |
string |
(必需)要创建工作环境的区域。 |
* CVO_Node1_subnet_id* |
string |
(必需)要创建第一个节点的子网 ID 。 |
* CVO_Node2_subnet_id* |
string |
(必需)要创建第二个节点的子网 ID 。 |
* CVO_VPC_ID* |
string |
(可选)要创建工作环境的 VPC ID 。如果未提供此参数,则 VPC 将使用提供的子网 ID 进行计算。 |
* CVO_SVM_password* |
string |
(必需) Cloud Volumes ONTAP 的管理员密码。 |
* CVO_failover_mode* |
string |
(可选)对于 HA , HA 对的故障转移模式为: ["PrivateIP" , "FlatingIP"] 。"PrivateIP" 用于单个可用性区域, "FlatingIP" 用于多个可用性区域。 |
* CVO_mediate_subnet_id* |
string |
(可选)对于 HA ,是调解器的子网 ID 。 |
* CVO_mediate_key_pair_name* |
string |
(可选)对于 HA ,是调解器实例的密钥对名称。 |
* CVO_cluster_floating_IP* |
string |
(可选)对于 HA FlatingIP ,为集群管理浮动 IP 地址。 |
* CVO_data_float_IP* |
string |
(可选)对于 HA FlatingIP ,是数据浮动 IP 地址。 |
* CVO_data_float_IP2* |
string |
(可选)对于 HA FlatingIP ,是数据浮动 IP 地址。 |
* CVO_SVM_floating_IP* |
string |
(可选)对于 HA FlatingIP ,为 SVM 管理浮动 IP 地址。 |
* CVO_route_table_IDS* |
列表 |
(可选)对于 HA FlatingIP ,将使用浮动 IP 更新的路由表 ID 列表。 |
本节包含用于在 AWS ( Amazon Web Services )上部署 / 配置 NetApp ONTAP FSX 的各种 Terraform 配置文件。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation/
-
从 CLI 配置 AWS 凭据。
aws configure
-
AWS 访问密钥 ID [ 无 ] :访问密钥
-
AWS 机密访问密钥 [ 无 ] : secretkey
-
默认区域名称 [ 无 ] : us-west-2
-
默认输出格式 [ 无 ] :
-
-
更新
vars/AWS_FSx_deployment.tfvars
中的变量值您可以通过将变量 "AWS_connector_deploy_bool" 值设置为 true/false 来选择部署连接器。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.aws_fsx" -var-file="vars/aws_fsx_deployment.tfvars"
-
运行部署
terraform apply -target="module.aws_fsx" -var-file="vars/aws_fsx_deployment.tfvars"
删除部署
terraform destroy
连接器
NetApp AWS 连接器实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* AWS 连接器 _deploy_Bool* |
池 |
(必需)检查连接器部署。 |
* AWS 连接器名称 * |
string |
(必需) Cloud Manager Connector 的名称。 |
* AWS 连接器区域 * |
string |
(必需)要创建 Cloud Manager Connector 的区域。 |
* AWS 连接器 _key_name* |
string |
(必需)要用于 Connector 实例的密钥对的名称。 |
* AWS 连接器公司 * |
string |
(必需)用户公司的名称。 |
* AWS 连接器 _instance_type* |
string |
(必需)实例的类型(例如 T3.xlarge )。至少需要 4 个 CPU 和 16 GB 内存。 |
* AWS 连接器 _subnet_id* |
string |
(必需)实例的子网 ID 。 |
* AWS 连接器 _security_group_id* |
string |
(必需)实例的安全组 ID ,可以提供多个安全组,并以 " , " 分隔。 |
* AWS 连接器 _iam_instance_profile_name* |
string |
(必需) Connector 实例配置文件的名称。 |
* AWS 连接器帐户 ID * |
string |
(可选) Connector 要关联的 NetApp 帐户 ID 。如果未提供, Cloud Manager 将使用第一个帐户。如果不存在任何帐户, Cloud Manager 将创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID ,网址为 https://cloudmanager.netapp.com。 |
* AWS 连接器 _public_ip_bool* |
池 |
(可选)指示是否将公有 IP 地址与实例关联。如果未提供,则关联将根据子网的配置完成。 |
FSX 实例
NetApp ONTAP FSX 实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* FSx_name* |
string |
(必需) Cloud Volumes ONTAP 工作环境的名称。 |
* FSx_Region |
string |
(必需)要创建工作环境的区域。 |
* FSx_primary_subnet_id* |
string |
(必需)要创建工作环境的主子网 ID 。 |
* FSx_secondary 子网 _id* |
string |
(必需)要创建工作环境的二级子网 ID 。 |
* FSx_account_id* |
string |
(必需) FSX 实例将与之关联的 NetApp 帐户 ID 。如果未提供, Cloud Manager 将使用第一个帐户。如果不存在任何帐户, Cloud Manager 将创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID ,网址为 https://cloudmanager.netapp.com。 |
* FSx_worklan_id* |
string |
(必需)工作环境中 Cloud Manager 工作空间的 ID 。 |
* FSx_admin_password* |
string |
(必需) Cloud Volumes ONTAP 的管理员密码。 |
* FSx_throughput : capacity* |
string |
(可选)吞吐量的容量。 |
* FSx_storage_capacity_size* |
string |
(可选)第一个数据聚合的 EBS 卷大小。对于 GB ,单位可以是: 100 或 500] 。对于 TB ,此单位可以是: 1 , 2 , 4 , 8 , 16] 。默认值为 "1" |
* FSx_storage_capacity_size_unit* |
string |
(可选) ["GB" 或 "TB"] 。默认值为 "TB" 。 |
* FSx_cloudmanager_AWS_credential 名称 * |
string |
(必需) AWS 凭据帐户名称。 |
Azure 酒店
本节包含用于在 Azure 上部署 / 配置 ANF ( Azure NetApp Files )卷的各种 Terraform 配置文件。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation
-
登录到 Azure 命令行界面(必须安装 Azure 命令行界面)。
az login
-
更新
vars/azure_anf.tfvars
中的变量值。您可以选择使用现有的 vnet 和子网部署 ANF 卷,方法是将变量 "vnet_creation_bool" 和 "subnet_creation_bool" 值设置为 false 并提供 "subnet_id_for_anf_vol" 。您也可以将这些值设置为 true 并创建新的 vnet 和子网,在这种情况下,子网 ID 将自动从新创建的子网中获取。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.anf" -var-file="vars/azure_anf.tfvars"
-
运行部署
terraform apply -target="module.anf" -var-file="vars/azure_anf.tfvars"
删除部署
terraform destroy
s单节点实例
单个 NetApp ANF 卷的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* AZ 位置 * |
string |
(必需)指定资源所在的受支持 Azure 位置。更改后,系统将强制创建新资源。 |
* AZ 前缀 * |
string |
(必需)应在其中创建 NetApp 卷的资源组的名称。更改后,系统将强制创建新资源。 |
* 空格 _vnet_address_space* |
string |
(必需)新创建的 Vnet 用于 ANF 卷部署的地址空间。 |
* AZ 子网地址前缀 * |
string |
(必需)新创建的 Vnet 要用于 ANF 卷部署的子网地址前缀。 |
* 。 as_volume_path* |
string |
(必需)卷的唯一文件路径。用于创建挂载目标。更改后,系统将强制创建新资源。 |
* AZ 容量池大小 * |
整型 |
(必需)以 TB 为单位提及的容量池大小。 |
* 。 as_vnet_creation_bool* |
布尔值 |
(必需)如果要创建新的 vnet ,请将此布尔值设置为 |
* AZ-subnet_creation_bool* |
布尔值 |
(必需)将此布尔值设置为 |
* AZ-subnet_id_for_anf_vol* |
string |
(必需)在您决定使用现有子网时,请注明子网 ID ,方法是将 |
* AZ-NetApp_Pool_service_level* |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_service_level* |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_protocol* |
string |
(可选)以列表形式表示的目标卷协议。支持的单个值包括 |
* AZ-NetApp_vol_security_style* |
string |
(可选)卷安全模式,可接受的值为 |
* AZ-NetApp_vol_storage_quot* |
string |
(必需)文件系统允许的最大存储配额,以 GB 为单位。 |
根据此建议、此脚本使用 prevent_destroy 用于减少配置文件中意外数据丢失的可能性的生命周期参数。有关的详细信息、请参见 prevent_destroy 生命周期参数请参见terraform文档: https://developer.hashicorp.com/terraform/tutorials/state/resource-lifecycle#prevent-resource-deletion。
|
本节包含用于在 Azure 上部署 / 配置具有数据保护的 ANF ( Azure NetApp Files )卷的各种 Terraform 配置文件。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation
-
登录到 Azure 命令行界面(必须安装 Azure 命令行界面)。
az login
-
更新
vars/azure_anf_data_protection.tfvars
中的变量值。您可以选择使用现有的 vnet 和子网部署 ANF 卷,方法是将变量 "vnet_creation_bool" 和 "subnet_creation_bool" 值设置为 false 并提供 "subnet_id_for_anf_vol" 。您也可以将这些值设置为 true 并创建新的 vnet 和子网,在这种情况下,子网 ID 将自动从新创建的子网中获取。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.anf_data_protection" -var-file="vars/azure_anf_data_protection.tfvars"
-
运行部署
terraform apply -target="module.anf_data_protection" -var-file="vars/azure_anf_data_protection.tfvars
删除部署
terraform destroy
ANF 数据保护
启用了数据保护的单个 ANF 卷的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* AZ 位置 * |
string |
(必需)指定资源所在的受支持 Azure 位置。更改后,系统将强制创建新资源。 |
* AZ 备选位置 * |
string |
(必需)要创建二级卷的 Azure 位置 |
* AZ 前缀 * |
string |
(必需)应在其中创建 NetApp 卷的资源组的名称。更改后,系统将强制创建新资源。 |
* 空格 _vnet_primary_address_space* |
string |
(必需)新创建的 Vnet 用于 ANF 主卷部署的地址空间。 |
* 空格 _vnet_secondary 地址空间 * |
string |
(必需)新创建的 Vnet 用于 ANF 二级卷部署的地址空间。 |
* AZ-subnet_primary_address_prefix* |
string |
(必需)新创建的 Vnet 要用于 ANF 主卷部署的子网地址前缀。 |
* AZ-subnet_secondary 地址前缀 * |
string |
(必需)新创建的 Vnet 要用于 ANF 二级卷部署的子网地址前缀。 |
* AZ-volume_path_primary_* |
string |
(必需)主卷的唯一文件路径。用于创建挂载目标。更改后,系统将强制创建新资源。 |
* AZ 卷路径二级 * |
string |
(必需)二级卷的唯一文件路径。用于创建挂载目标。更改后,系统将强制创建新资源。 |
* AZ-Capacity_Pool_size_primary_* |
整型 |
(必需)以 TB 为单位提及的容量池大小。 |
* AZ 容量池大小二级 * |
整型 |
(必需)以 TB 为单位提及的容量池大小。 |
* 。 as_vnet_primary_creation_bool* |
布尔值 |
(必需)如果要为主卷创建新的 vnet ,请将此布尔值设置为 |
* 。 as_vnet_secondary _creation_bool* |
布尔值 |
(必需)如果要为二级卷创建新的 vnet ,请将此布尔值设置为 |
* AZ-subnet_primary_creation_bool* |
布尔值 |
(必需)将此布尔值设置为 |
* AZ-subnet_secondary _creation_bool* |
布尔值 |
(必需)将此布尔值设置为 |
* AZ 主子网 ID for_anf_vol* |
string |
(必需)在您决定使用现有子网时,请注明子网 ID ,方法是将 |
* AZ 二级子网 id_for_anf_vol* |
string |
(必需)在您决定使用现有子网时,请注明子网 ID ,方法是将 |
* AZ-NetApp_Pool_service_level_primary_* |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_Pool_service_level_secondary * |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_service_level_primary_* |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_service_level_secondary * |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_protocol_primary_* |
string |
(可选)以列表形式表示的目标卷协议。支持的单个值包括 |
* AZ-NetApp_vol_protocol_secondary * |
string |
(可选)以列表形式表示的目标卷协议。支持的单个值包括 |
* AZ-NetApp_vol_storage_quota_primary_* |
string |
(必需)文件系统允许的最大存储配额,以 GB 为单位。 |
* AZ-NetApp_vol_storage_quota_secondary * |
string |
(必需)文件系统允许的最大存储配额,以 GB 为单位。 |
* AZ DP 复制频率 * |
string |
(必需)复制频率,支持的值为 |
根据此建议、此脚本使用 prevent_destroy 用于减少配置文件中意外数据丢失的可能性的生命周期参数。有关的详细信息、请参见 prevent_destroy 生命周期参数请参见terraform文档: https://developer.hashicorp.com/terraform/tutorials/state/resource-lifecycle#prevent-resource-deletion。
|
本节包含各种 Terraform 配置文件,用于部署 / 配置在 Azure 上启用了双协议的 ANF ( Azure NetApp Files )卷。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation
-
登录到 Azure 命令行界面(必须安装 Azure 命令行界面)。
az login
-
更新
vars/azure_anf_dual_protocol.tfvars
中的变量值。您可以选择使用现有的 vnet 和子网部署 ANF 卷,方法是将变量 "vnet_creation_bool" 和 "subnet_creation_bool" 值设置为 false 并提供 "subnet_id_for_anf_vol" 。您也可以将这些值设置为 true 并创建新的 vnet 和子网,在这种情况下,子网 ID 将自动从新创建的子网中获取。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.anf_dual_protocol" -var-file="vars/azure_anf_dual_protocol.tfvars"
-
运行部署
terraform apply -target="module.anf_dual_protocol" -var-file="vars/azure_anf_dual_protocol.tfvars"
删除部署
terraform destroy
s单节点实例
启用了双协议的单个 ANF 卷的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* AZ 位置 * |
string |
(必需)指定资源所在的受支持 Azure 位置。更改后,系统将强制创建新资源。 |
* AZ 前缀 * |
string |
(必需)应在其中创建 NetApp 卷的资源组的名称。更改后,系统将强制创建新资源。 |
* 空格 _vnet_address_space* |
string |
(必需)新创建的 Vnet 用于 ANF 卷部署的地址空间。 |
* AZ 子网地址前缀 * |
string |
(必需)新创建的 Vnet 要用于 ANF 卷部署的子网地址前缀。 |
* 。 as_volume_path* |
string |
(必需)卷的唯一文件路径。用于创建挂载目标。更改后,系统将强制创建新资源。 |
* AZ 容量池大小 * |
整型 |
(必需)以 TB 为单位提及的容量池大小。 |
* 。 as_vnet_creation_bool* |
布尔值 |
(必需)如果要创建新的 vnet ,请将此布尔值设置为 |
* AZ-subnet_creation_bool* |
布尔值 |
(必需)将此布尔值设置为 |
* AZ-subnet_id_for_anf_vol* |
string |
(必需)在您决定使用现有子网时,请注明子网 ID ,方法是将 |
* AZ-NetApp_Pool_service_level* |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_service_level* |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_Protocol1* |
string |
(必需)以列表形式表示的目标卷协议。支持的单个值包括 |
* AZ-NetApp_vol_protocol2* |
string |
(必需)以列表形式表示的目标卷协议。支持的单个值包括 |
* AZ-NetApp_vol_storage_quot* |
string |
(必需)文件系统允许的最大存储配额,以 GB 为单位。 |
* AZ-SMB_server_username* |
string |
(必需)用于创建 ActiveDirectory 对象的用户名。 |
* AZ-SMB_server_password* |
string |
(必需)用于创建 ActiveDirectory 对象的用户密码。 |
* AZ-SMB_server_name* |
string |
(必需)用于创建 ActiveDirectory 对象的服务器名称。 |
* AZ-SMB_DNS_servers* |
string |
(必需)用于创建 ActiveDirectory 对象的 DNS 服务器 IP 。 |
根据此建议、此脚本使用 prevent_destroy 用于减少配置文件中意外数据丢失的可能性的生命周期参数。有关的详细信息、请参见 prevent_destroy 生命周期参数请参见terraform文档: https://developer.hashicorp.com/terraform/tutorials/state/resource-lifecycle#prevent-resource-deletion。
|
本节包含用于从 Azure 上的 Snapshot 部署 / 配置 ANF ( Azure NetApp Files )卷的各种 Terraform 配置文件。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation
-
登录到 Azure 命令行界面(必须安装 Azure 命令行界面)。
az login
-
更新
vars/azure_anf_volume_from_snapshot.tfvars
中的变量值。
您可以选择使用现有的 vnet 和子网部署 ANF 卷,方法是将变量 "vnet_creation_bool" 和 "subnet_creation_bool" 值设置为 false 并提供 "subnet_id_for_anf_vol" 。您也可以将这些值设置为 true 并创建新的 vnet 和子网,在这种情况下,子网 ID 将自动从新创建的子网中获取。 |
-
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.anf_volume_from_snapshot" -var-file="vars/azure_anf_volume_from_snapshot.tfvars"
-
运行部署
terraform apply -target="module.anf_volume_from_snapshot" -var-file="vars/azure_anf_volume_from_snapshot.tfvars"
删除部署
terraform destroy
s单节点实例
使用 snapshot 的单个 ANF 卷的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* AZ 位置 * |
string |
(必需)指定资源所在的受支持 Azure 位置。更改后,系统将强制创建新资源。 |
* AZ 前缀 * |
string |
(必需)应在其中创建 NetApp 卷的资源组的名称。更改后,系统将强制创建新资源。 |
* 空格 _vnet_address_space* |
string |
(必需)新创建的 Vnet 用于 ANF 卷部署的地址空间。 |
* AZ 子网地址前缀 * |
string |
(必需)新创建的 Vnet 要用于 ANF 卷部署的子网地址前缀。 |
* 。 as_volume_path* |
string |
(必需)卷的唯一文件路径。用于创建挂载目标。更改后,系统将强制创建新资源。 |
* AZ 容量池大小 * |
整型 |
(必需)以 TB 为单位提及的容量池大小。 |
* 。 as_vnet_creation_bool* |
布尔值 |
(必需)如果要创建新的 vnet ,请将此布尔值设置为 |
* AZ-subnet_creation_bool* |
布尔值 |
(必需)将此布尔值设置为 |
* AZ-subnet_id_for_anf_vol* |
string |
(必需)在您决定使用现有子网时,请注明子网 ID ,方法是将 |
* AZ-NetApp_Pool_service_level* |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_service_level* |
string |
(必需)文件系统的目标性能。有效值包括 |
* AZ-NetApp_vol_protocol* |
string |
(可选)以列表形式表示的目标卷协议。支持的单个值包括 |
* AZ-NetApp_vol_storage_quot* |
string |
(必需)文件系统允许的最大存储配额,以 GB 为单位。 |
* 。 as_snapshot_id* |
string |
(必需)用于创建新 ANF 卷的 Snapshot ID 。 |
根据此建议、此脚本使用 prevent_destroy 用于减少配置文件中意外数据丢失的可能性的生命周期参数。有关的详细信息、请参见 prevent_destroy 生命周期参数请参见terraform文档: https://developer.hashicorp.com/terraform/tutorials/state/resource-lifecycle#prevent-resource-deletion。
|
本节包含用于在 Azure 上部署 / 配置单节点 CVO ( Cloud Volumes ONTAP )的各种 Terraform 配置文件。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation
-
登录到 Azure 命令行界面(必须安装 Azure 命令行界面)。
az login
-
更新
vars\azure_CVO_single 节点 _deployment.tfvars
中的变量。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.az_cvo_single_node_deployment" -var-file="vars\azure_cvo_single_node_deployment.tfvars"
-
运行部署
terraform apply -target="module.az_cvo_single_node_deployment" -var-file="vars\azure_cvo_single_node_deployment.tfvars"
删除部署
terraform destroy
s单节点实例
单节点 Cloud Volumes ONTAP ( CVO )的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* 刷新令牌 * |
string |
(必需) NetApp Cloud Manager 的刷新令牌。这可以从 NetApp Cloud Central 生成。 |
* AZ 连接器名称 * |
string |
(必需) Cloud Manager Connector 的名称。 |
* AZ 连接器位置 * |
string |
(必需)创建 Cloud Manager Connector 的位置。 |
* AZ 连接器 _subscription_id* |
string |
(必需) Azure 订阅的 ID 。 |
* AZ 连接器公司 * |
string |
(必需)用户公司的名称。 |
* AZ 连接器 _resource_group* |
整型 |
(必需) Azure 中要创建资源的资源组。 |
* AZ 连接器 _subnet_id* |
string |
(必需)虚拟机的子网名称。 |
* AZ 连接器 _vnet_id* |
string |
(必需)虚拟网络的名称。 |
* AZ 连接器 _network_security_group_name* |
string |
(必需)实例的安全组名称。 |
* AZ 连接器 _associate_public_ip_address* |
string |
(必需)指示是否将公有 IP 地址与虚拟机关联。 |
* AZ 连接器帐户 ID * |
string |
(必需) Connector 要关联的 NetApp 帐户 ID 。如果未提供, Cloud Manager 将使用第一个帐户。如果不存在任何帐户, Cloud Manager 将创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID ,网址为 https://cloudmanager.netapp.com。 |
* AZ-Connector_admin_password* |
string |
(必需) Connector 的密码。 |
* AZ-Connector_admin_username* |
string |
(必需) Connector 的用户名。 |
* AZ-CVO_NAME* |
string |
(必需) Cloud Volumes ONTAP 工作环境的名称。 |
* AZ-CVO_OITE* |
string |
(必需)创建工作环境的位置。 |
* AZ-CVO_subnet_id* |
string |
(必需) Cloud Volumes ONTAP 系统的子网名称。 |
* AZ-CVO_vnet_id* |
string |
(必需)虚拟网络的名称。 |
* AZ-CVO_vnet_resource_group* |
string |
(必需) Azure 中与虚拟网络关联的资源组。 |
* AZ-CVO_data_encryption_type* |
string |
(必需)工作环境要使用的加密类型: [ |
* AZ-CVO_storage_type* |
string |
(必需)第一个数据聚合的存储类型: |
* AZ-CVO_SVM_password* |
string |
(必需) Cloud Volumes ONTAP 的管理员密码。 |
* AZ-CVO_workspace ID |
string |
(必需)要部署 Cloud Volumes ONTAP 的 Cloud Manager 工作空间的 ID 。如果未提供, Cloud Manager 将使用第一个工作空间。您可以从上的 " 工作空间 " 选项卡中找到此 ID https://cloudmanager.netapp.com。 |
* AZ-CVO_capacity_tier* |
string |
(必需)是否为第一个数据聚合启用数据分层: |
* AZ-CVO_writing_speed_state* |
string |
(必需) Cloud Volumes ONTAP 的写入速度设置: [ |
* AZ-CVO_ontap_version* |
string |
(必需)所需的 ONTAP 版本。如果 "use_latest_version" 设置为 true ,则忽略此参数。默认情况下使用最新版本。 |
* AZ-CVO_instance_type* |
string |
(必需)要使用的实例类型,具体取决于您选择的许可证类型: Explore : |
* AZ-CVO_LICENSE_TYPE * |
string |
(必需)要使用的许可证类型。对于单个节点: |
* AZ-CVO_NSS_account* |
string |
(必需)用于此 Cloud Volumes ONTAP 系统的 NetApp 支持站点帐户 ID 。如果许可证类型为 BYOL 且未提供 NSS 帐户,则 Cloud Manager 会尝试使用第一个现有 NSS 帐户。 |
* AZ 租户 ID * |
string |
(必需)在 Azure 中注册的应用程序 / 服务主体的租户 ID 。 |
* AZ 应用程序 ID * |
string |
(必需)在 Azure 中注册的应用程序 / 服务主体的应用程序 ID 。 |
* AZ-application_key* |
string |
(必需)在 Azure 中注册的应用程序 / 服务主体的应用程序密钥。 |
本节包含用于在 Azure 上部署 / 配置 CVO ( Cloud Volumes ONTAP ) HA (高可用性)的各种 Terraform 配置文件。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation
-
登录到 Azure 命令行界面(必须安装 Azure 命令行界面)。
az login
-
更新
vars\azure_CVO_ha_deployment.tfvars
中的变量。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.az_cvo_ha_deployment" -var-file="vars\azure_cvo_ha_deployment.tfvars"
-
运行部署
terraform apply -target="module.az_cvo_ha_deployment" -var-file="vars\azure_cvo_ha_deployment.tfvars"
删除部署
terraform destroy
HA 对实例
HA 对 Cloud Volumes ONTAP ( CVO )的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* 刷新令牌 * |
string |
(必需) NetApp Cloud Manager 的刷新令牌。这可以从 NetApp Cloud Central 生成。 |
* AZ 连接器名称 * |
string |
(必需) Cloud Manager Connector 的名称。 |
* AZ 连接器位置 * |
string |
(必需)创建 Cloud Manager Connector 的位置。 |
* AZ 连接器 _subscription_id* |
string |
(必需) Azure 订阅的 ID 。 |
* AZ 连接器公司 * |
string |
(必需)用户公司的名称。 |
* AZ 连接器 _resource_group* |
整型 |
(必需) Azure 中要创建资源的资源组。 |
* AZ 连接器 _subnet_id* |
string |
(必需)虚拟机的子网名称。 |
* AZ 连接器 _vnet_id* |
string |
(必需)虚拟网络的名称。 |
* AZ 连接器 _network_security_group_name* |
string |
(必需)实例的安全组名称。 |
* AZ 连接器 _associate_public_ip_address* |
string |
(必需)指示是否将公有 IP 地址与虚拟机关联。 |
* AZ 连接器帐户 ID * |
string |
(必需) Connector 要关联的 NetApp 帐户 ID 。如果未提供, Cloud Manager 将使用第一个帐户。如果不存在任何帐户, Cloud Manager 将创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID ,网址为 https://cloudmanager.netapp.com。 |
* AZ-Connector_admin_password* |
string |
(必需) Connector 的密码。 |
* AZ-Connector_admin_username* |
string |
(必需) Connector 的用户名。 |
* AZ-CVO_NAME* |
string |
(必需) Cloud Volumes ONTAP 工作环境的名称。 |
* AZ-CVO_OITE* |
string |
(必需)创建工作环境的位置。 |
* AZ-CVO_subnet_id* |
string |
(必需) Cloud Volumes ONTAP 系统的子网名称。 |
* AZ-CVO_vnet_id* |
string |
(必需)虚拟网络的名称。 |
* AZ-CVO_vnet_resource_group* |
string |
(必需) Azure 中与虚拟网络关联的资源组。 |
* AZ-CVO_data_encryption_type* |
string |
(必需)工作环境要使用的加密类型: [ |
* AZ-CVO_storage_type* |
string |
(必需)第一个数据聚合的存储类型: |
* AZ-CVO_SVM_password* |
string |
(必需) Cloud Volumes ONTAP 的管理员密码。 |
* AZ-CVO_workspace ID |
string |
(必需)要部署 Cloud Volumes ONTAP 的 Cloud Manager 工作空间的 ID 。如果未提供, Cloud Manager 将使用第一个工作空间。您可以从上的 " 工作空间 " 选项卡中找到此 ID https://cloudmanager.netapp.com。 |
* AZ-CVO_capacity_tier* |
string |
(必需)是否为第一个数据聚合启用数据分层: |
* AZ-CVO_writing_speed_state* |
string |
(必需) Cloud Volumes ONTAP 的写入速度设置: [ |
* AZ-CVO_ontap_version* |
string |
(必需)所需的 ONTAP 版本。如果 "use_latest_version" 设置为 true ,则忽略此参数。默认情况下使用最新版本。 |
* AZ-CVO_instance_type* |
string |
(必需)要使用的实例类型,具体取决于您选择的许可证类型: Explore : |
* AZ-CVO_LICENSE_TYPE * |
string |
(必需)要使用的许可证类型。对于单个节点: |
* AZ-CVO_NSS_account* |
string |
(必需)用于此 Cloud Volumes ONTAP 系统的 NetApp 支持站点帐户 ID 。如果许可证类型为 BYOL 且未提供 NSS 帐户,则 Cloud Manager 会尝试使用第一个现有 NSS 帐户。 |
* AZ 租户 ID * |
string |
(必需)在 Azure 中注册的应用程序 / 服务主体的租户 ID 。 |
* AZ 应用程序 ID * |
string |
(必需)在 Azure 中注册的应用程序 / 服务主体的应用程序 ID 。 |
* AZ-application_key* |
string |
(必需)在 Azure 中注册的应用程序 / 服务主体的应用程序密钥。 |
GCP
本节包含各种 Terraform 配置文件,用于在 GCP ( Google 云平台)上部署 / 配置单节点 NetApp CVO ( Cloud Volumes ONTAP )。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation/
-
将 GCP 身份验证密钥 JSON 文件保存在目录中。
-
更新
vars/gcp_CVO_single 节点 _deployment.tfvar
中的变量值您可以通过将变量 "gcp_connector_deploy_bool" 值设置为 true/false 来选择部署连接器。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.gco_single_node" -var-file="vars/gcp_cvo_single_node_deployment.tfvars"
-
运行部署
terraform apply -target="module.gcp_single_node" -var-file="vars/gcp_cvo_single_node_deployment.tfvars"
删除部署
terraform destroy
连接器
用于 CVO 部署的 NetApp GCP 连接器实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* gcp_connector_deploy_bool* |
池 |
(必需)检查连接器部署。 |
* GCP_connector_name* |
string |
(必需) Cloud Manager Connector 的名称。 |
* GCP_connector_project_id* |
string |
(必需)要创建连接器的 GCP project_id 。 |
* GCP_connector_zone* |
string |
(必需)要创建连接器的 GCP 分区。 |
* GCP_connector_company_* |
string |
(必需)用户公司的名称。 |
* GCP_connector_service_account_email * |
string |
(必需)连接器实例的 service_account 的电子邮件。此服务帐户用于允许 Connector 创建云卷 ONTAP 。 |
* GCP_connector_service_account_path* |
string |
(必需) service_account JSON 文件的本地路径,用于 GCP 授权。此服务帐户用于在 GCP 中创建连接器。 |
* gcp_connector_account_id* |
string |
(可选) Connector 要关联的 NetApp 帐户 ID 。如果未提供, Cloud Manager 将使用第一个帐户。如果不存在任何帐户, Cloud Manager 将创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID ,网址为 https://cloudmanager.netapp.com。 |
s单节点实例
GCP 上单个 NetApp CVO 实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* GCP_CVO_NAME* |
string |
(必需) Cloud Volumes ONTAP 工作环境的名称。 |
* GCP_CVO_project_id* |
string |
(必需) GCP 项目的 ID 。 |
* GCP_CVO_Zone* |
string |
(必需)要创建工作环境的区域的区域。 |
* GCP_CVO_GCP_SERVICE_account* |
string |
(必需) GCP_SERVICE_account 电子邮件,以便将冷数据分层到 Google Cloud Storage 。 |
* GCP_CVO_SVM_password* |
string |
(必需) Cloud Volumes ONTAP 的管理员密码。 |
* GCP_CVO_workspace ID |
string |
(可选)要部署 Cloud Volumes ONTAP 的 Cloud Manager 工作空间的 ID 。如果未提供, Cloud Manager 将使用第一个工作空间。您可以从上的 " 工作空间 " 选项卡中找到此 ID https://cloudmanager.netapp.com。 |
* GCP_CVO_LICENSE_TYPE * |
string |
(可选)要使用的许可证类型。对于单个节点: "capacity-payge" , "gcp-cot-explore-payge" , "gcp-cot-standard-payge" , "gcp-cot-premy-payge" , "gcp-cot-premy-BYOL" , 对于 HA : "ha-capacity-payge" , "gcp-ha-cot-explore-payge" , "gcp-ha-cot-standard-payge" , "gcp-ha-cot-premy-payge" , "gcp-ha-cot-premy-BYOL" 。对于单个节点,默认值为 "capacity-payGo" ,对于 HA ,默认值为 "ha-capacity-payGo" 。 |
* GCP_CVO_capacity_package_name* |
string |
(可选)容量包名称: [' 基本 ' , ' 专业 ' , 'Freemi'] 。默认值为 " 基本 " 。 |
本节包含各种 Terraform 配置文件,用于在 GCP ( Google 云平台)上以高可用性对部署 / 配置 NetApp CVO ( Cloud Volumes ONTAP )。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation/
-
将 GCP 身份验证密钥 JSON 文件保存在目录中。
-
更新
vars/gcp_CVO_ha_deployment.tfvars
中的变量值。您可以通过将变量 "gcp_connector_deploy_bool" 值设置为 true/false 来选择部署连接器。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.gcp_ha" -var-file="vars/gcp_cvo_ha_deployment.tfvars"
-
运行部署
terraform apply -target="module.gcp_ha" -var-file="vars/gcp_cvo_ha_deployment.tfvars"
删除部署
terraform destroy
连接器
用于 CVO 部署的 NetApp GCP 连接器实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* gcp_connector_deploy_bool* |
池 |
(必需)检查连接器部署。 |
* GCP_connector_name* |
string |
(必需) Cloud Manager Connector 的名称。 |
* GCP_connector_project_id* |
string |
(必需)要创建连接器的 GCP project_id 。 |
* GCP_connector_zone* |
string |
(必需)要创建连接器的 GCP 分区。 |
* GCP_connector_company_* |
string |
(必需)用户公司的名称。 |
* GCP_connector_service_account_email * |
string |
(必需)连接器实例的 service_account 的电子邮件。此服务帐户用于允许 Connector 创建云卷 ONTAP 。 |
* GCP_connector_service_account_path* |
string |
(必需) service_account JSON 文件的本地路径,用于 GCP 授权。此服务帐户用于在 GCP 中创建连接器。 |
* gcp_connector_account_id* |
string |
(可选) Connector 要关联的 NetApp 帐户 ID 。如果未提供, Cloud Manager 将使用第一个帐户。如果不存在任何帐户, Cloud Manager 将创建一个新帐户。您可以在 Cloud Manager 的帐户选项卡中找到帐户 ID ,网址为 https://cloudmanager.netapp.com。 |
HA 对
GCP 上 HA 对中 NetApp CVO 实例的 Terraform 变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* GCP_CVO_is_ha* |
池 |
(可选)指示工作环境是否为 HA 对。默认值为 false 。 |
* GCP_CVO_NAME* |
string |
(必需) Cloud Volumes ONTAP 工作环境的名称。 |
* GCP_CVO_project_id* |
string |
(必需) GCP 项目的 ID 。 |
* GCP_CVO_Zone* |
string |
(必需)要创建工作环境的区域的区域。 |
* GCP_CVO_Node1_Zone* |
string |
(可选)节点 1 的分区。 |
* GCP_CVO_Node2_Zone* |
string |
(可选)节点 2 的分区。 |
* GCP_CVO_mediate_zone* |
string |
(可选)用于调解器的分区。 |
* GCP_CVO_VPC_ID* |
string |
(可选) VPC 的名称。 |
* GCP_CVO_subnet_id* |
string |
(可选) Cloud Volumes ONTAP 的子网名称。默认值为: "default" 。 |
* GCP_CVO_vpc0_node_and_data_connection* |
string |
(可选) NIC1 的 VPC 路径,节点和数据连接所需。如果使用共享 VPC ,则必须提供 netwrok_project_id 。 |
* GCP_CVO_vpc1_cluster_connectivity* |
string |
(可选) NIC2 的 VPC 路径,集群连接所需。 |
* GCP_CVO_vpc2_ha_connectivity* |
string |
(可选) NIC3 的 VPC 路径, HA 连接所需。 |
* GCP_CVO_vpc3_data_replication * |
string |
(可选) NIC4 的 VPC 路径,数据复制所需。 |
* GCP_CVO_subnet0_node_and_data_connection* |
string |
(可选) NIC 1 的子网路径,节点和数据连接需要此路径。如果使用共享 VPC ,则必须提供 netwrok_project_id 。 |
* GCP_CVO_subnet1_cluster_connectivity* |
string |
(可选) NIC 2 的子网路径,集群连接所需。 |
* GCP_CVO_subnet2_ha_connectivity* |
string |
(可选) NIC3 的子网路径, HA 连接所需。 |
* GCP_CVO_subnet3_data_replication * |
string |
(可选) NIC4 的子网路径,数据复制所需。 |
* GCP_CVO_GCP_SERVICE_account* |
string |
(必需) GCP_SERVICE_account 电子邮件,以便将冷数据分层到 Google Cloud Storage 。 |
* GCP_CVO_SVM_password* |
string |
(必需) Cloud Volumes ONTAP 的管理员密码。 |
* GCP_CVO_workspace ID |
string |
(可选)要部署 Cloud Volumes ONTAP 的 Cloud Manager 工作空间的 ID 。如果未提供, Cloud Manager 将使用第一个工作空间。您可以从上的 " 工作空间 " 选项卡中找到此 ID https://cloudmanager.netapp.com。 |
* GCP_CVO_LICENSE_TYPE * |
string |
(可选)要使用的许可证类型。对于单个节点: "capacity-payge" , "gcp-cot-explore-payge" , "gcp-cot-standard-payge" , "gcp-cot-premy-payge" , "gcp-cot-premy-BYOL" , 对于 HA : "ha-capacity-payge" , "gcp-ha-cot-explore-payge" , "gcp-ha-cot-standard-payge" , "gcp-ha-cot-premy-payge" , "gcp-ha-cot-premy-BYOL" 。对于单个节点,默认值为 "capacity-payGo" ,对于 HA ,默认值为 "ha-capacity-payGo" 。 |
* GCP_CVO_capacity_package_name* |
string |
(可选)容量包名称: [' 基本 ' , ' 专业 ' , 'Freemi'] 。默认值为 " 基本 " 。 |
* GCP_CVO_GCP_volume_size* |
string |
(可选)第一个数据聚合的 GCP 卷大小。对于 GB ,单位可以是: 100 或 500] 。对于 TB ,此单位可以是: 1 , 2 , 4 , 8 。默认值为 "1" 。 |
* GCP_CVO_GCP_volume_size_unit* |
string |
(可选) ["GB" 或 "TB"] 。默认值为 "TB" 。 |
本节包含用于在GCP (Google云平台)上部署/配置NetApp卷(Google Cloud NetApp卷)卷的各种Terraform配置文件。
要运行此模板,请执行以下操作:
-
克隆存储库。
git clone https://github.com/NetApp/na_cloud_volumes_automation.git
-
导航到所需文件夹
cd na_cloud_volumes_automation/
-
将 GCP 身份验证密钥 JSON 文件保存在目录中。
-
更新
vars/gcp_cvs_volume.tfvars
中的变量值。 -
初始化 Terraform 存储库以安装所有前提条件并准备部署。
terraform init
-
使用 terraform validate 命令验证 terraform 文件。
terraform validate
-
运行此配置以预览部署所需的所有更改。
terraform plan -target="module.gcp_cvs_volume" -var-file="vars/gcp_cvs_volume.tfvars"
-
运行部署
terraform apply -target="module.gcp_cvs_volume" -var-file="vars/gcp_cvs_volume.tfvars"
删除部署
terraform destroy
NetApp Volumes Volume
NetApp GCP NetApp卷卷的Terraform变量。
* 名称 * | * 类型 * | * 问题描述 * |
---|---|---|
* GCP_CVS_NAME* |
string |
(必需) NetApp卷卷的名称。 |
* GCP_CVS_project_id* |
string |
(必需)要创建NetApp卷卷的GCP project_id。 |
* GCP_CVS_GCP_service_account_path* |
string |
(必需) service_account JSON 文件的本地路径,用于 GCP 授权。此服务帐户用于在GCP中创建NetApp卷卷。 |
* GCP_CVS_EORG* |
string |
(必需)要创建NetApp卷卷的GCP区域。 |
* GCP_CVS_NETWORK* |
string |
(必需)卷的网络 VPC 。 |
* GCP_CVS_SIZE * |
整型 |
(必需)卷大小介于 1024 到 102400 之间(含 GiB )。 |
* GCP_CVS_volume_path* |
string |
(可选)卷的卷路径名称。 |
* GCP_CVS_protocol_Types* |
string |
(必需)卷的 protocol_type 。对于 NFS ,请使用 "NFSv3" 或 "NFSv4" ,对于 SMB ,请使用 "CIFS" 或 "MB" 。 |