1. Packages
  2. Google Cloud Native
  3. API Docs
  4. vmwareengine
  5. vmwareengine/v1
  6. Cluster

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.vmwareengine/v1.Cluster

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Creates a new cluster in a given private cloud. Creating a new cluster provides additional nodes for use in the parent private cloud and requires sufficient node quota. Auto-naming is currently not supported for this resource.

    Create Cluster Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Cluster(name: string, args: ClusterArgs, opts?: CustomResourceOptions);
    @overload
    def Cluster(resource_name: str,
                args: ClusterArgs,
                opts: Optional[ResourceOptions] = None)
    
    @overload
    def Cluster(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                cluster_id: Optional[str] = None,
                node_type_configs: Optional[Mapping[str, str]] = None,
                private_cloud_id: Optional[str] = None,
                location: Optional[str] = None,
                project: Optional[str] = None,
                request_id: Optional[str] = None,
                stretched_cluster_config: Optional[StretchedClusterConfigArgs] = None)
    func NewCluster(ctx *Context, name string, args ClusterArgs, opts ...ResourceOption) (*Cluster, error)
    public Cluster(string name, ClusterArgs args, CustomResourceOptions? opts = null)
    public Cluster(String name, ClusterArgs args)
    public Cluster(String name, ClusterArgs args, CustomResourceOptions options)
    
    type: google-native:vmwareengine/v1:Cluster
    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 ClusterArgs
    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 ClusterArgs
    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 ClusterArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ClusterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ClusterArgs
    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 exampleclusterResourceResourceFromVmwareenginev1 = new GoogleNative.VMwareEngine.V1.Cluster("exampleclusterResourceResourceFromVmwareenginev1", new()
    {
        ClusterId = "string",
        NodeTypeConfigs = 
        {
            { "string", "string" },
        },
        PrivateCloudId = "string",
        Location = "string",
        Project = "string",
        RequestId = "string",
        StretchedClusterConfig = new GoogleNative.VMwareEngine.V1.Inputs.StretchedClusterConfigArgs
        {
            PreferredLocation = "string",
            SecondaryLocation = "string",
        },
    });
    
    example, err := vmwareengine.NewCluster(ctx, "exampleclusterResourceResourceFromVmwareenginev1", &vmwareengine.ClusterArgs{
    	ClusterId: pulumi.String("string"),
    	NodeTypeConfigs: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	PrivateCloudId: pulumi.String("string"),
    	Location:       pulumi.String("string"),
    	Project:        pulumi.String("string"),
    	RequestId:      pulumi.String("string"),
    	StretchedClusterConfig: &vmwareengine.StretchedClusterConfigArgs{
    		PreferredLocation: pulumi.String("string"),
    		SecondaryLocation: pulumi.String("string"),
    	},
    })
    
    var exampleclusterResourceResourceFromVmwareenginev1 = new Cluster("exampleclusterResourceResourceFromVmwareenginev1", ClusterArgs.builder()
        .clusterId("string")
        .nodeTypeConfigs(Map.of("string", "string"))
        .privateCloudId("string")
        .location("string")
        .project("string")
        .requestId("string")
        .stretchedClusterConfig(StretchedClusterConfigArgs.builder()
            .preferredLocation("string")
            .secondaryLocation("string")
            .build())
        .build());
    
    examplecluster_resource_resource_from_vmwareenginev1 = google_native.vmwareengine.v1.Cluster("exampleclusterResourceResourceFromVmwareenginev1",
        cluster_id="string",
        node_type_configs={
            "string": "string",
        },
        private_cloud_id="string",
        location="string",
        project="string",
        request_id="string",
        stretched_cluster_config={
            "preferred_location": "string",
            "secondary_location": "string",
        })
    
    const exampleclusterResourceResourceFromVmwareenginev1 = new google_native.vmwareengine.v1.Cluster("exampleclusterResourceResourceFromVmwareenginev1", {
        clusterId: "string",
        nodeTypeConfigs: {
            string: "string",
        },
        privateCloudId: "string",
        location: "string",
        project: "string",
        requestId: "string",
        stretchedClusterConfig: {
            preferredLocation: "string",
            secondaryLocation: "string",
        },
    });
    
    type: google-native:vmwareengine/v1:Cluster
    properties:
        clusterId: string
        location: string
        nodeTypeConfigs:
            string: string
        privateCloudId: string
        project: string
        requestId: string
        stretchedClusterConfig:
            preferredLocation: string
            secondaryLocation: string
    

    Cluster Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The Cluster resource accepts the following input properties:

    ClusterId string
    Required. The user-provided identifier of the new Cluster. This identifier must be unique among clusters within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with RFC 1034 (section 3.5)
    NodeTypeConfigs Dictionary<string, string>
    The map of cluster node types in this cluster, where the key is canonical identifier of the node type (corresponds to the NodeType).
    PrivateCloudId string
    Location string
    Project string
    RequestId string
    Optional. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
    StretchedClusterConfig Pulumi.GoogleNative.VMwareEngine.V1.Inputs.StretchedClusterConfig
    Optional. Configuration of a stretched cluster. Required for clusters that belong to a STRETCHED private cloud.
    ClusterId string
    Required. The user-provided identifier of the new Cluster. This identifier must be unique among clusters within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with RFC 1034 (section 3.5)
    NodeTypeConfigs map[string]string
    The map of cluster node types in this cluster, where the key is canonical identifier of the node type (corresponds to the NodeType).
    PrivateCloudId string
    Location string
    Project string
    RequestId string
    Optional. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
    StretchedClusterConfig StretchedClusterConfigArgs
    Optional. Configuration of a stretched cluster. Required for clusters that belong to a STRETCHED private cloud.
    clusterId String
    Required. The user-provided identifier of the new Cluster. This identifier must be unique among clusters within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with RFC 1034 (section 3.5)
    nodeTypeConfigs Map<String,String>
    The map of cluster node types in this cluster, where the key is canonical identifier of the node type (corresponds to the NodeType).
    privateCloudId String
    location String
    project String
    requestId String
    Optional. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
    stretchedClusterConfig StretchedClusterConfig
    Optional. Configuration of a stretched cluster. Required for clusters that belong to a STRETCHED private cloud.
    clusterId string
    Required. The user-provided identifier of the new Cluster. This identifier must be unique among clusters within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with RFC 1034 (section 3.5)
    nodeTypeConfigs {[key: string]: string}
    The map of cluster node types in this cluster, where the key is canonical identifier of the node type (corresponds to the NodeType).
    privateCloudId string
    location string
    project string
    requestId string
    Optional. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
    stretchedClusterConfig StretchedClusterConfig
    Optional. Configuration of a stretched cluster. Required for clusters that belong to a STRETCHED private cloud.
    cluster_id str
    Required. The user-provided identifier of the new Cluster. This identifier must be unique among clusters within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with RFC 1034 (section 3.5)
    node_type_configs Mapping[str, str]
    The map of cluster node types in this cluster, where the key is canonical identifier of the node type (corresponds to the NodeType).
    private_cloud_id str
    location str
    project str
    request_id str
    Optional. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
    stretched_cluster_config StretchedClusterConfigArgs
    Optional. Configuration of a stretched cluster. Required for clusters that belong to a STRETCHED private cloud.
    clusterId String
    Required. The user-provided identifier of the new Cluster. This identifier must be unique among clusters within the parent and becomes the final token in the name URI. The identifier must meet the following requirements: * Only contains 1-63 alphanumeric characters and hyphens * Begins with an alphabetical character * Ends with a non-hyphen character * Not formatted as a UUID * Complies with RFC 1034 (section 3.5)
    nodeTypeConfigs Map<String>
    The map of cluster node types in this cluster, where the key is canonical identifier of the node type (corresponds to the NodeType).
    privateCloudId String
    location String
    project String
    requestId String
    Optional. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
    stretchedClusterConfig Property Map
    Optional. Configuration of a stretched cluster. Required for clusters that belong to a STRETCHED private cloud.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Cluster resource produces the following output properties:

    CreateTime string
    Creation time of this resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    Management bool
    True if the cluster is a management cluster; false otherwise. There can only be one management cluster in a private cloud and it has to be the first one.
    Name string
    The resource name of this cluster. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster
    State string
    State of the resource.
    Uid string
    System-generated unique identifier for the resource.
    UpdateTime string
    Last update time of this resource.
    CreateTime string
    Creation time of this resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    Management bool
    True if the cluster is a management cluster; false otherwise. There can only be one management cluster in a private cloud and it has to be the first one.
    Name string
    The resource name of this cluster. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster
    State string
    State of the resource.
    Uid string
    System-generated unique identifier for the resource.
    UpdateTime string
    Last update time of this resource.
    createTime String
    Creation time of this resource.
    id String
    The provider-assigned unique ID for this managed resource.
    management Boolean
    True if the cluster is a management cluster; false otherwise. There can only be one management cluster in a private cloud and it has to be the first one.
    name String
    The resource name of this cluster. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster
    state String
    State of the resource.
    uid String
    System-generated unique identifier for the resource.
    updateTime String
    Last update time of this resource.
    createTime string
    Creation time of this resource.
    id string
    The provider-assigned unique ID for this managed resource.
    management boolean
    True if the cluster is a management cluster; false otherwise. There can only be one management cluster in a private cloud and it has to be the first one.
    name string
    The resource name of this cluster. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster
    state string
    State of the resource.
    uid string
    System-generated unique identifier for the resource.
    updateTime string
    Last update time of this resource.
    create_time str
    Creation time of this resource.
    id str
    The provider-assigned unique ID for this managed resource.
    management bool
    True if the cluster is a management cluster; false otherwise. There can only be one management cluster in a private cloud and it has to be the first one.
    name str
    The resource name of this cluster. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster
    state str
    State of the resource.
    uid str
    System-generated unique identifier for the resource.
    update_time str
    Last update time of this resource.
    createTime String
    Creation time of this resource.
    id String
    The provider-assigned unique ID for this managed resource.
    management Boolean
    True if the cluster is a management cluster; false otherwise. There can only be one management cluster in a private cloud and it has to be the first one.
    name String
    The resource name of this cluster. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/resource_names. For example: projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster
    state String
    State of the resource.
    uid String
    System-generated unique identifier for the resource.
    updateTime String
    Last update time of this resource.

    Supporting Types

    StretchedClusterConfig, StretchedClusterConfigArgs

    PreferredLocation string
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    SecondaryLocation string
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    PreferredLocation string
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    SecondaryLocation string
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    preferredLocation String
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    secondaryLocation String
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    preferredLocation string
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    secondaryLocation string
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    preferred_location str
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    secondary_location str
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    preferredLocation String
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    secondaryLocation String
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.

    StretchedClusterConfigResponse, StretchedClusterConfigResponseArgs

    PreferredLocation string
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    SecondaryLocation string
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    PreferredLocation string
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    SecondaryLocation string
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    preferredLocation String
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    secondaryLocation String
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    preferredLocation string
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    secondaryLocation string
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    preferred_location str
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    secondary_location str
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.
    preferredLocation String
    Zone that will remain operational when connection between the two zones is lost. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-a where {project} can either be a project number or a project ID.
    secondaryLocation String
    Additional zone for a higher level of availability and load balancing. Specify the resource name of a zone that belongs to the region of the private cloud. For example: projects/{project}/locations/europe-west3-b where {project} can either be a project number or a project ID.

    Package Details

    Repository
    Google Cloud Native pulumi/pulumi-google-native
    License
    Apache-2.0
    google-native logo

    Google Cloud Native is in preview. Google Cloud Classic is fully supported.

    Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi