gcp.netapp.StoragePool
Explore with Pulumi AI
Example Usage
Storage Pool Create
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
// Create a network or use datasource to reference existing network
const peeringNetwork = new gcp.compute.Network("peering_network", {name: "test-network"});
// Reserve a CIDR for NetApp Volumes to use
// When using shared-VPCs, this resource needs to be created in host project
const privateIpAlloc = new gcp.compute.GlobalAddress("private_ip_alloc", {
name: "test-address",
purpose: "VPC_PEERING",
addressType: "INTERNAL",
prefixLength: 16,
network: peeringNetwork.id,
});
// Create a Private Service Access connection
// When using shared-VPCs, this resource needs to be created in host project
const _default = new gcp.servicenetworking.Connection("default", {
network: peeringNetwork.id,
service: "netapp.servicenetworking.goog",
reservedPeeringRanges: [privateIpAlloc.name],
});
// Modify the PSA Connection to allow import/export of custom routes
// When using shared-VPCs, this resource needs to be created in host project
const routeUpdates = new gcp.compute.NetworkPeeringRoutesConfig("route_updates", {
peering: _default.peering,
network: peeringNetwork.name,
importCustomRoutes: true,
exportCustomRoutes: true,
});
// Create a storage pool
// Create this resource in the project which is expected to own the volumes
const testPool = new gcp.netapp.StoragePool("test_pool", {
name: "test-pool",
location: "us-central1",
serviceLevel: "PREMIUM",
capacityGib: "2048",
network: peeringNetwork.id,
});
import pulumi
import pulumi_gcp as gcp
# Create a network or use datasource to reference existing network
peering_network = gcp.compute.Network("peering_network", name="test-network")
# Reserve a CIDR for NetApp Volumes to use
# When using shared-VPCs, this resource needs to be created in host project
private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
name="test-address",
purpose="VPC_PEERING",
address_type="INTERNAL",
prefix_length=16,
network=peering_network.id)
# Create a Private Service Access connection
# When using shared-VPCs, this resource needs to be created in host project
default = gcp.servicenetworking.Connection("default",
network=peering_network.id,
service="netapp.servicenetworking.goog",
reserved_peering_ranges=[private_ip_alloc.name])
# Modify the PSA Connection to allow import/export of custom routes
# When using shared-VPCs, this resource needs to be created in host project
route_updates = gcp.compute.NetworkPeeringRoutesConfig("route_updates",
peering=default.peering,
network=peering_network.name,
import_custom_routes=True,
export_custom_routes=True)
# Create a storage pool
# Create this resource in the project which is expected to own the volumes
test_pool = gcp.netapp.StoragePool("test_pool",
name="test-pool",
location="us-central1",
service_level="PREMIUM",
capacity_gib="2048",
network=peering_network.id)
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/netapp"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create a network or use datasource to reference existing network
peeringNetwork, err := compute.NewNetwork(ctx, "peering_network", &compute.NetworkArgs{
Name: pulumi.String("test-network"),
})
if err != nil {
return err
}
// Reserve a CIDR for NetApp Volumes to use
// When using shared-VPCs, this resource needs to be created in host project
privateIpAlloc, err := compute.NewGlobalAddress(ctx, "private_ip_alloc", &compute.GlobalAddressArgs{
Name: pulumi.String("test-address"),
Purpose: pulumi.String("VPC_PEERING"),
AddressType: pulumi.String("INTERNAL"),
PrefixLength: pulumi.Int(16),
Network: peeringNetwork.ID(),
})
if err != nil {
return err
}
// Create a Private Service Access connection
// When using shared-VPCs, this resource needs to be created in host project
_, err = servicenetworking.NewConnection(ctx, "default", &servicenetworking.ConnectionArgs{
Network: peeringNetwork.ID(),
Service: pulumi.String("netapp.servicenetworking.goog"),
ReservedPeeringRanges: pulumi.StringArray{
privateIpAlloc.Name,
},
})
if err != nil {
return err
}
// Modify the PSA Connection to allow import/export of custom routes
// When using shared-VPCs, this resource needs to be created in host project
_, err = compute.NewNetworkPeeringRoutesConfig(ctx, "route_updates", &compute.NetworkPeeringRoutesConfigArgs{
Peering: _default.Peering,
Network: peeringNetwork.Name,
ImportCustomRoutes: pulumi.Bool(true),
ExportCustomRoutes: pulumi.Bool(true),
})
if err != nil {
return err
}
// Create a storage pool
// Create this resource in the project which is expected to own the volumes
_, err = netapp.NewStoragePool(ctx, "test_pool", &netapp.StoragePoolArgs{
Name: pulumi.String("test-pool"),
Location: pulumi.String("us-central1"),
ServiceLevel: pulumi.String("PREMIUM"),
CapacityGib: pulumi.String("2048"),
Network: peeringNetwork.ID(),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
// Create a network or use datasource to reference existing network
var peeringNetwork = new Gcp.Compute.Network("peering_network", new()
{
Name = "test-network",
});
// Reserve a CIDR for NetApp Volumes to use
// When using shared-VPCs, this resource needs to be created in host project
var privateIpAlloc = new Gcp.Compute.GlobalAddress("private_ip_alloc", new()
{
Name = "test-address",
Purpose = "VPC_PEERING",
AddressType = "INTERNAL",
PrefixLength = 16,
Network = peeringNetwork.Id,
});
// Create a Private Service Access connection
// When using shared-VPCs, this resource needs to be created in host project
var @default = new Gcp.ServiceNetworking.Connection("default", new()
{
Network = peeringNetwork.Id,
Service = "netapp.servicenetworking.goog",
ReservedPeeringRanges = new[]
{
privateIpAlloc.Name,
},
});
// Modify the PSA Connection to allow import/export of custom routes
// When using shared-VPCs, this resource needs to be created in host project
var routeUpdates = new Gcp.Compute.NetworkPeeringRoutesConfig("route_updates", new()
{
Peering = @default.Peering,
Network = peeringNetwork.Name,
ImportCustomRoutes = true,
ExportCustomRoutes = true,
});
// Create a storage pool
// Create this resource in the project which is expected to own the volumes
var testPool = new Gcp.Netapp.StoragePool("test_pool", new()
{
Name = "test-pool",
Location = "us-central1",
ServiceLevel = "PREMIUM",
CapacityGib = "2048",
Network = peeringNetwork.Id,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.GlobalAddress;
import com.pulumi.gcp.compute.GlobalAddressArgs;
import com.pulumi.gcp.servicenetworking.Connection;
import com.pulumi.gcp.servicenetworking.ConnectionArgs;
import com.pulumi.gcp.compute.NetworkPeeringRoutesConfig;
import com.pulumi.gcp.compute.NetworkPeeringRoutesConfigArgs;
import com.pulumi.gcp.netapp.StoragePool;
import com.pulumi.gcp.netapp.StoragePoolArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
// Create a network or use datasource to reference existing network
var peeringNetwork = new Network("peeringNetwork", NetworkArgs.builder()
.name("test-network")
.build());
// Reserve a CIDR for NetApp Volumes to use
// When using shared-VPCs, this resource needs to be created in host project
var privateIpAlloc = new GlobalAddress("privateIpAlloc", GlobalAddressArgs.builder()
.name("test-address")
.purpose("VPC_PEERING")
.addressType("INTERNAL")
.prefixLength(16)
.network(peeringNetwork.id())
.build());
// Create a Private Service Access connection
// When using shared-VPCs, this resource needs to be created in host project
var default_ = new Connection("default", ConnectionArgs.builder()
.network(peeringNetwork.id())
.service("netapp.servicenetworking.goog")
.reservedPeeringRanges(privateIpAlloc.name())
.build());
// Modify the PSA Connection to allow import/export of custom routes
// When using shared-VPCs, this resource needs to be created in host project
var routeUpdates = new NetworkPeeringRoutesConfig("routeUpdates", NetworkPeeringRoutesConfigArgs.builder()
.peering(default_.peering())
.network(peeringNetwork.name())
.importCustomRoutes(true)
.exportCustomRoutes(true)
.build());
// Create a storage pool
// Create this resource in the project which is expected to own the volumes
var testPool = new StoragePool("testPool", StoragePoolArgs.builder()
.name("test-pool")
.location("us-central1")
.serviceLevel("PREMIUM")
.capacityGib("2048")
.network(peeringNetwork.id())
.build());
}
}
resources:
# Create a network or use datasource to reference existing network
peeringNetwork:
type: gcp:compute:Network
name: peering_network
properties:
name: test-network
# Reserve a CIDR for NetApp Volumes to use
# When using shared-VPCs, this resource needs to be created in host project
privateIpAlloc:
type: gcp:compute:GlobalAddress
name: private_ip_alloc
properties:
name: test-address
purpose: VPC_PEERING
addressType: INTERNAL
prefixLength: 16
network: ${peeringNetwork.id}
# Create a Private Service Access connection
# When using shared-VPCs, this resource needs to be created in host project
default:
type: gcp:servicenetworking:Connection
properties:
network: ${peeringNetwork.id}
service: netapp.servicenetworking.goog
reservedPeeringRanges:
- ${privateIpAlloc.name}
# Modify the PSA Connection to allow import/export of custom routes
# When using shared-VPCs, this resource needs to be created in host project
routeUpdates:
type: gcp:compute:NetworkPeeringRoutesConfig
name: route_updates
properties:
peering: ${default.peering}
network: ${peeringNetwork.name}
importCustomRoutes: true
exportCustomRoutes: true
# Create a storage pool
# Create this resource in the project which is expected to own the volumes
testPool:
type: gcp:netapp:StoragePool
name: test_pool
properties:
name: test-pool
location: us-central1
serviceLevel: PREMIUM
capacityGib: '2048'
network: ${peeringNetwork.id}
Create StoragePool Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new StoragePool(name: string, args: StoragePoolArgs, opts?: CustomResourceOptions);
@overload
def StoragePool(resource_name: str,
args: StoragePoolArgs,
opts: Optional[ResourceOptions] = None)
@overload
def StoragePool(resource_name: str,
opts: Optional[ResourceOptions] = None,
location: Optional[str] = None,
service_level: Optional[str] = None,
capacity_gib: Optional[str] = None,
network: Optional[str] = None,
description: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
ldap_enabled: Optional[bool] = None,
kms_config: Optional[str] = None,
name: Optional[str] = None,
active_directory: Optional[str] = None,
project: Optional[str] = None,
replica_zone: Optional[str] = None,
allow_auto_tiering: Optional[bool] = None,
zone: Optional[str] = None)
func NewStoragePool(ctx *Context, name string, args StoragePoolArgs, opts ...ResourceOption) (*StoragePool, error)
public StoragePool(string name, StoragePoolArgs args, CustomResourceOptions? opts = null)
public StoragePool(String name, StoragePoolArgs args)
public StoragePool(String name, StoragePoolArgs args, CustomResourceOptions options)
type: gcp:netapp:StoragePool
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args StoragePoolArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args StoragePoolArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args StoragePoolArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args StoragePoolArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args StoragePoolArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var storagePoolResource = new Gcp.Netapp.StoragePool("storagePoolResource", new()
{
Location = "string",
ServiceLevel = "string",
CapacityGib = "string",
Network = "string",
Description = "string",
Labels =
{
{ "string", "string" },
},
LdapEnabled = false,
KmsConfig = "string",
Name = "string",
ActiveDirectory = "string",
Project = "string",
ReplicaZone = "string",
AllowAutoTiering = false,
Zone = "string",
});
example, err := netapp.NewStoragePool(ctx, "storagePoolResource", &netapp.StoragePoolArgs{
Location: pulumi.String("string"),
ServiceLevel: pulumi.String("string"),
CapacityGib: pulumi.String("string"),
Network: pulumi.String("string"),
Description: pulumi.String("string"),
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
LdapEnabled: pulumi.Bool(false),
KmsConfig: pulumi.String("string"),
Name: pulumi.String("string"),
ActiveDirectory: pulumi.String("string"),
Project: pulumi.String("string"),
ReplicaZone: pulumi.String("string"),
AllowAutoTiering: pulumi.Bool(false),
Zone: pulumi.String("string"),
})
var storagePoolResource = new StoragePool("storagePoolResource", StoragePoolArgs.builder()
.location("string")
.serviceLevel("string")
.capacityGib("string")
.network("string")
.description("string")
.labels(Map.of("string", "string"))
.ldapEnabled(false)
.kmsConfig("string")
.name("string")
.activeDirectory("string")
.project("string")
.replicaZone("string")
.allowAutoTiering(false)
.zone("string")
.build());
storage_pool_resource = gcp.netapp.StoragePool("storagePoolResource",
location="string",
service_level="string",
capacity_gib="string",
network="string",
description="string",
labels={
"string": "string",
},
ldap_enabled=False,
kms_config="string",
name="string",
active_directory="string",
project="string",
replica_zone="string",
allow_auto_tiering=False,
zone="string")
const storagePoolResource = new gcp.netapp.StoragePool("storagePoolResource", {
location: "string",
serviceLevel: "string",
capacityGib: "string",
network: "string",
description: "string",
labels: {
string: "string",
},
ldapEnabled: false,
kmsConfig: "string",
name: "string",
activeDirectory: "string",
project: "string",
replicaZone: "string",
allowAutoTiering: false,
zone: "string",
});
type: gcp:netapp:StoragePool
properties:
activeDirectory: string
allowAutoTiering: false
capacityGib: string
description: string
kmsConfig: string
labels:
string: string
ldapEnabled: false
location: string
name: string
network: string
project: string
replicaZone: string
serviceLevel: string
zone: string
StoragePool Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The StoragePool resource accepts the following input properties:
- Capacity
Gib string - Capacity of the storage pool (in GiB).
- Location string
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- Network string
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- Service
Level string - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - Active
Directory string - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - Allow
Auto boolTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- Description string
- An optional description of this resource.
- Kms
Config string - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - Labels Dictionary<string, string>
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- Ldap
Enabled bool - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- Name string
- The resource name of the storage pool. Needs to be unique per location/region.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Replica
Zone string - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - Zone string
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- Capacity
Gib string - Capacity of the storage pool (in GiB).
- Location string
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- Network string
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- Service
Level string - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - Active
Directory string - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - Allow
Auto boolTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- Description string
- An optional description of this resource.
- Kms
Config string - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - Labels map[string]string
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- Ldap
Enabled bool - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- Name string
- The resource name of the storage pool. Needs to be unique per location/region.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Replica
Zone string - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - Zone string
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- capacity
Gib String - Capacity of the storage pool (in GiB).
- location String
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- network String
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- service
Level String - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - active
Directory String - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - allow
Auto BooleanTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- description String
- An optional description of this resource.
- kms
Config String - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - labels Map<String,String>
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- ldap
Enabled Boolean - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- name String
- The resource name of the storage pool. Needs to be unique per location/region.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- replica
Zone String - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - zone String
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- capacity
Gib string - Capacity of the storage pool (in GiB).
- location string
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- network string
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- service
Level string - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - active
Directory string - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - allow
Auto booleanTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- description string
- An optional description of this resource.
- kms
Config string - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - labels {[key: string]: string}
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- ldap
Enabled boolean - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- name string
- The resource name of the storage pool. Needs to be unique per location/region.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- replica
Zone string - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - zone string
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- capacity_
gib str - Capacity of the storage pool (in GiB).
- location str
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- network str
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- service_
level str - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - active_
directory str - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - allow_
auto_ booltiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- description str
- An optional description of this resource.
- kms_
config str - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - labels Mapping[str, str]
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- ldap_
enabled bool - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- name str
- The resource name of the storage pool. Needs to be unique per location/region.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- replica_
zone str - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - zone str
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- capacity
Gib String - Capacity of the storage pool (in GiB).
- location String
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- network String
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- service
Level String - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - active
Directory String - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - allow
Auto BooleanTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- description String
- An optional description of this resource.
- kms
Config String - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - labels Map<String>
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- ldap
Enabled Boolean - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- name String
- The resource name of the storage pool. Needs to be unique per location/region.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- replica
Zone String - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - zone String
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
Outputs
All input properties are implicitly available as output properties. Additionally, the StoragePool resource produces the following output properties:
- Effective
Labels Dictionary<string, string> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Encryption
Type string - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- Id string
- The provider-assigned unique ID for this managed resource.
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- Volume
Capacity stringGib - Size allocated to volumes in the storage pool (in GiB).
- Volume
Count int - Number of volume in the storage pool.
- Effective
Labels map[string]string - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Encryption
Type string - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- Id string
- The provider-assigned unique ID for this managed resource.
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- Volume
Capacity stringGib - Size allocated to volumes in the storage pool (in GiB).
- Volume
Count int - Number of volume in the storage pool.
- effective
Labels Map<String,String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- encryption
Type String - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- id String
- The provider-assigned unique ID for this managed resource.
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- volume
Capacity StringGib - Size allocated to volumes in the storage pool (in GiB).
- volume
Count Integer - Number of volume in the storage pool.
- effective
Labels {[key: string]: string} - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- encryption
Type string - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- id string
- The provider-assigned unique ID for this managed resource.
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- volume
Capacity stringGib - Size allocated to volumes in the storage pool (in GiB).
- volume
Count number - Number of volume in the storage pool.
- effective_
labels Mapping[str, str] - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- encryption_
type str - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- id str
- The provider-assigned unique ID for this managed resource.
- pulumi_
labels Mapping[str, str] - The combination of labels configured directly on the resource and default labels configured on the provider.
- volume_
capacity_ strgib - Size allocated to volumes in the storage pool (in GiB).
- volume_
count int - Number of volume in the storage pool.
- effective
Labels Map<String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- encryption
Type String - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- id String
- The provider-assigned unique ID for this managed resource.
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- volume
Capacity StringGib - Size allocated to volumes in the storage pool (in GiB).
- volume
Count Number - Number of volume in the storage pool.
Look up Existing StoragePool Resource
Get an existing StoragePool resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: StoragePoolState, opts?: CustomResourceOptions): StoragePool
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
active_directory: Optional[str] = None,
allow_auto_tiering: Optional[bool] = None,
capacity_gib: Optional[str] = None,
description: Optional[str] = None,
effective_labels: Optional[Mapping[str, str]] = None,
encryption_type: Optional[str] = None,
kms_config: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
ldap_enabled: Optional[bool] = None,
location: Optional[str] = None,
name: Optional[str] = None,
network: Optional[str] = None,
project: Optional[str] = None,
pulumi_labels: Optional[Mapping[str, str]] = None,
replica_zone: Optional[str] = None,
service_level: Optional[str] = None,
volume_capacity_gib: Optional[str] = None,
volume_count: Optional[int] = None,
zone: Optional[str] = None) -> StoragePool
func GetStoragePool(ctx *Context, name string, id IDInput, state *StoragePoolState, opts ...ResourceOption) (*StoragePool, error)
public static StoragePool Get(string name, Input<string> id, StoragePoolState? state, CustomResourceOptions? opts = null)
public static StoragePool get(String name, Output<String> id, StoragePoolState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Active
Directory string - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - Allow
Auto boolTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- Capacity
Gib string - Capacity of the storage pool (in GiB).
- Description string
- An optional description of this resource.
- Effective
Labels Dictionary<string, string> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Encryption
Type string - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- Kms
Config string - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - Labels Dictionary<string, string>
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- Ldap
Enabled bool - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- Location string
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- Name string
- The resource name of the storage pool. Needs to be unique per location/region.
- Network string
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- Replica
Zone string - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - Service
Level string - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - Volume
Capacity stringGib - Size allocated to volumes in the storage pool (in GiB).
- Volume
Count int - Number of volume in the storage pool.
- Zone string
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- Active
Directory string - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - Allow
Auto boolTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- Capacity
Gib string - Capacity of the storage pool (in GiB).
- Description string
- An optional description of this resource.
- Effective
Labels map[string]string - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Encryption
Type string - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- Kms
Config string - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - Labels map[string]string
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- Ldap
Enabled bool - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- Location string
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- Name string
- The resource name of the storage pool. Needs to be unique per location/region.
- Network string
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- Replica
Zone string - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - Service
Level string - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - Volume
Capacity stringGib - Size allocated to volumes in the storage pool (in GiB).
- Volume
Count int - Number of volume in the storage pool.
- Zone string
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- active
Directory String - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - allow
Auto BooleanTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- capacity
Gib String - Capacity of the storage pool (in GiB).
- description String
- An optional description of this resource.
- effective
Labels Map<String,String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- encryption
Type String - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- kms
Config String - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - labels Map<String,String>
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- ldap
Enabled Boolean - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- location String
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- name String
- The resource name of the storage pool. Needs to be unique per location/region.
- network String
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- replica
Zone String - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - service
Level String - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - volume
Capacity StringGib - Size allocated to volumes in the storage pool (in GiB).
- volume
Count Integer - Number of volume in the storage pool.
- zone String
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- active
Directory string - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - allow
Auto booleanTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- capacity
Gib string - Capacity of the storage pool (in GiB).
- description string
- An optional description of this resource.
- effective
Labels {[key: string]: string} - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- encryption
Type string - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- kms
Config string - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - labels {[key: string]: string}
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- ldap
Enabled boolean - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- location string
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- name string
- The resource name of the storage pool. Needs to be unique per location/region.
- network string
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- replica
Zone string - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - service
Level string - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - volume
Capacity stringGib - Size allocated to volumes in the storage pool (in GiB).
- volume
Count number - Number of volume in the storage pool.
- zone string
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- active_
directory str - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - allow_
auto_ booltiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- capacity_
gib str - Capacity of the storage pool (in GiB).
- description str
- An optional description of this resource.
- effective_
labels Mapping[str, str] - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- encryption_
type str - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- kms_
config str - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - labels Mapping[str, str]
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- ldap_
enabled bool - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- location str
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- name str
- The resource name of the storage pool. Needs to be unique per location/region.
- network str
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi_
labels Mapping[str, str] - The combination of labels configured directly on the resource and default labels configured on the provider.
- replica_
zone str - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - service_
level str - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - volume_
capacity_ strgib - Size allocated to volumes in the storage pool (in GiB).
- volume_
count int - Number of volume in the storage pool.
- zone str
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
- active
Directory String - Specifies the Active Directory policy to be used. Format:
projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
. The policy needs to be in the same location as the storage pool. - allow
Auto BooleanTiering - Optional. True if the storage pool supports Auto Tiering enabled volumes. Default is false. Auto-tiering can be enabled after storage pool creation but it can't be disabled once enabled.
- capacity
Gib String - Capacity of the storage pool (in GiB).
- description String
- An optional description of this resource.
- effective
Labels Map<String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- encryption
Type String - Reports if volumes in the pool are encrypted using a Google-managed encryption key or CMEK.
- kms
Config String - Specifies the CMEK policy to be used for volume encryption. Format:
projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
. The policy needs to be in the same location as the storage pool. - labels Map<String>
Labels as key value pairs. Example:
{ "owner": "Bob", "department": "finance", "purpose": "testing" }
.Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field
effective_labels
for all of the labels present on the resource.- ldap
Enabled Boolean - When enabled, the volumes uses Active Directory as LDAP name service for UID/GID lookups. Required to enable extended group support for NFSv3, using security identifiers for NFSv4.1 or principal names for kerberized NFSv4.1.
- location String
- Name of the location. For zonal Flex pools specify a zone name, in all other cases a region name.
- name String
- The resource name of the storage pool. Needs to be unique per location/region.
- network String
- VPC network name with format:
projects/{{project}}/global/networks/{{network}}
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- replica
Zone String - Specifies the replica zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. - service
Level String - Service level of the storage pool.
Possible values are:
PREMIUM
,EXTREME
,STANDARD
,FLEX
. - volume
Capacity StringGib - Size allocated to volumes in the storage pool (in GiB).
- volume
Count Number - Number of volume in the storage pool.
- zone String
- Specifies the active zone for regional Flex pools.
zone
andreplica_zone
values can be swapped to initiate a zone switch. If you want to create a zonal Flex pool, specify a zone name forlocation
and omitzone
.
Import
StoragePool can be imported using any of these accepted formats:
projects/{{project}}/locations/{{location}}/storagePools/{{name}}
{{project}}/{{location}}/{{name}}
{{location}}/{{name}}
When using the pulumi import
command, StoragePool can be imported using one of the formats above. For example:
$ pulumi import gcp:netapp/storagePool:StoragePool default projects/{{project}}/locations/{{location}}/storagePools/{{name}}
$ pulumi import gcp:netapp/storagePool:StoragePool default {{project}}/{{location}}/{{name}}
$ pulumi import gcp:netapp/storagePool:StoragePool default {{location}}/{{name}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-beta
Terraform Provider.