import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; /** * Creates a new VMware user cluster in a given project and location. */ export declare class VmwareCluster extends pulumi.CustomResource { /** * Get an existing VmwareCluster resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): VmwareCluster; /** * Returns true if the given object is an instance of VmwareCluster. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is VmwareCluster; /** * The admin cluster this VMware user cluster belongs to. This is the full resource name of the admin cluster's fleet membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources. */ readonly adminClusterMembership: pulumi.Output; /** * The resource name of the VMware admin cluster hosting this user cluster. */ readonly adminClusterName: pulumi.Output; /** * Annotations on the VMware user cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. */ readonly annotations: pulumi.Output<{ [key: string]: string; }>; /** * AAGConfig specifies whether to spread VMware user cluster nodes across at least three physical hosts in the datacenter. */ readonly antiAffinityGroups: pulumi.Output; /** * RBAC policy that will be applied and managed by the Anthos On-Prem API. */ readonly authorization: pulumi.Output; /** * Configuration for auto repairing. */ readonly autoRepairConfig: pulumi.Output; /** * VMware user cluster control plane nodes must have either 1 or 3 replicas. */ readonly controlPlaneNode: pulumi.Output; /** * The time at which VMware user cluster was created. */ readonly createTime: pulumi.Output; /** * VmwareDataplaneV2Config specifies configuration for Dataplane V2. */ readonly dataplaneV2: pulumi.Output; /** * The time at which VMware user cluster was deleted. */ readonly deleteTime: pulumi.Output; /** * A human readable description of this VMware user cluster. */ readonly description: pulumi.Output; /** * Disable bundled ingress. */ readonly disableBundledIngress: pulumi.Output; /** * Enable control plane V2. Default to false. */ readonly enableControlPlaneV2: pulumi.Output; /** * The DNS name of VMware user cluster's API server. */ readonly endpoint: pulumi.Output; /** * This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control. */ readonly etag: pulumi.Output; /** * Fleet configuration for the cluster. */ readonly fleet: pulumi.Output; /** * Load balancer configuration. */ readonly loadBalancer: pulumi.Output; /** * The object name of the VMware OnPremUserCluster custom resource on the associated admin cluster. This field is used to support conflicting names when enrolling existing clusters to the API. When used as a part of cluster enrollment, this field will differ from the ID in the resource name. For new clusters, this field will match the user provided cluster name and be visible in the last component of the resource name. It is not modifiable. All users should use this name to access their cluster using gkectl or kubectl and should expect to see the local name when viewing admin cluster controller logs. */ readonly localName: pulumi.Output; readonly location: pulumi.Output; /** * Immutable. The VMware user cluster resource name. */ readonly name: pulumi.Output; /** * The VMware user cluster network configuration. */ readonly networkConfig: pulumi.Output; /** * The Anthos clusters on the VMware version for your user cluster. */ readonly onPremVersion: pulumi.Output; readonly project: pulumi.Output; /** * If set, there are currently changes in flight to the VMware user cluster. */ readonly reconciling: pulumi.Output; /** * The current state of VMware user cluster. */ readonly state: pulumi.Output; /** * ResourceStatus representing detailed cluster state. */ readonly status: pulumi.Output; /** * Storage configuration. */ readonly storage: pulumi.Output; /** * The unique identifier of the VMware user cluster. */ readonly uid: pulumi.Output; /** * The time at which VMware user cluster was last updated. */ readonly updateTime: pulumi.Output; /** * Specifies upgrade policy for the cluster. */ readonly upgradePolicy: pulumi.Output; /** * ValidationCheck represents the result of the preflight check job. */ readonly validationCheck: pulumi.Output; /** * VmwareVCenterConfig specifies vCenter config for the user cluster. If unspecified, it is inherited from the admin cluster. */ readonly vcenter: pulumi.Output; /** * Enable VM tracking. */ readonly vmTrackingEnabled: pulumi.Output; /** * User provided identifier that is used as part of the resource name; This value must be up to 40 characters and follow RFC-1123 (https://tools.ietf.org/html/rfc1123) format. */ readonly vmwareClusterId: pulumi.Output; /** * Create a VmwareCluster resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: VmwareClusterArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a VmwareCluster resource. */ export interface VmwareClusterArgs { /** * The admin cluster this VMware user cluster belongs to. This is the full resource name of the admin cluster's fleet membership. In the future, references to other resource types might be allowed if admin clusters are modeled as their own resources. */ adminClusterMembership: pulumi.Input; /** * Annotations on the VMware user cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. */ annotations?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * AAGConfig specifies whether to spread VMware user cluster nodes across at least three physical hosts in the datacenter. */ antiAffinityGroups?: pulumi.Input; /** * RBAC policy that will be applied and managed by the Anthos On-Prem API. */ authorization?: pulumi.Input; /** * Configuration for auto repairing. */ autoRepairConfig?: pulumi.Input; /** * VMware user cluster control plane nodes must have either 1 or 3 replicas. */ controlPlaneNode?: pulumi.Input; /** * VmwareDataplaneV2Config specifies configuration for Dataplane V2. */ dataplaneV2?: pulumi.Input; /** * A human readable description of this VMware user cluster. */ description?: pulumi.Input; /** * Disable bundled ingress. */ disableBundledIngress?: pulumi.Input; /** * Enable control plane V2. Default to false. */ enableControlPlaneV2?: pulumi.Input; /** * This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Allows clients to perform consistent read-modify-writes through optimistic concurrency control. */ etag?: pulumi.Input; /** * Load balancer configuration. */ loadBalancer?: pulumi.Input; location?: pulumi.Input; /** * Immutable. The VMware user cluster resource name. */ name?: pulumi.Input; /** * The VMware user cluster network configuration. */ networkConfig?: pulumi.Input; /** * The Anthos clusters on the VMware version for your user cluster. */ onPremVersion: pulumi.Input; project?: pulumi.Input; /** * Storage configuration. */ storage?: pulumi.Input; /** * Specifies upgrade policy for the cluster. */ upgradePolicy?: pulumi.Input; /** * VmwareVCenterConfig specifies vCenter config for the user cluster. If unspecified, it is inherited from the admin cluster. */ vcenter?: pulumi.Input; /** * Enable VM tracking. */ vmTrackingEnabled?: pulumi.Input; /** * User provided identifier that is used as part of the resource name; This value must be up to 40 characters and follow RFC-1123 (https://tools.ietf.org/html/rfc1123) format. */ vmwareClusterId?: pulumi.Input; }