@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [ • 9.31 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
* A private cloud resource
*
* Uses Azure REST API version 2023-09-01. In version 2.x of the Azure Native provider, it used API version 2022-05-01.
*
* Other available API versions: 2022-05-01, 2023-03-01, 2024-09-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native avs [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
*/
export declare class PrivateCloud extends pulumi.CustomResource {
/**
* Get an existing PrivateCloud 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<pulumi.ID>, opts?: pulumi.CustomResourceOptions): PrivateCloud;
/**
* Returns true if the given object is an instance of PrivateCloud. 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 PrivateCloud;
/**
* Properties describing how the cloud is distributed across availability zones
*/
readonly availability: pulumi.Output<outputs.avs.AvailabilityPropertiesResponse | undefined>;
/**
* The Azure API version of the resource.
*/
readonly azureApiVersion: pulumi.Output<string>;
/**
* An ExpressRoute Circuit
*/
readonly circuit: pulumi.Output<outputs.avs.CircuitResponse | undefined>;
/**
* The type of DNS zone to use.
*/
readonly dnsZoneType: pulumi.Output<string | undefined>;
/**
* Customer managed key encryption, can be enabled or disabled
*/
readonly encryption: pulumi.Output<outputs.avs.EncryptionResponse | undefined>;
/**
* The endpoints
*/
readonly endpoints: pulumi.Output<outputs.avs.EndpointsResponse>;
/**
* Array of additional networks noncontiguous with networkBlock. Networks must be
* unique and non-overlapping across VNet in your subscription, on-premise, and
* this privateCloud networkBlock attribute. Make sure the CIDR format conforms to
* (A.B.C.D/X).
*/
readonly extendedNetworkBlocks: pulumi.Output<string[] | undefined>;
/**
* Array of cloud link IDs from other clouds that connect to this one
*/
readonly externalCloudLinks: pulumi.Output<string[]>;
/**
* The managed service identities assigned to this resource.
*/
readonly identity: pulumi.Output<outputs.avs.SystemAssignedServiceIdentityResponse | undefined>;
/**
* vCenter Single Sign On Identity Sources
*/
readonly identitySources: pulumi.Output<outputs.avs.IdentitySourceResponse[] | undefined>;
/**
* Connectivity to internet is enabled or disabled
*/
readonly internet: pulumi.Output<string | undefined>;
/**
* The geo-location where the resource lives
*/
readonly location: pulumi.Output<string>;
/**
* The default cluster used for management
*/
readonly managementCluster: pulumi.Output<outputs.avs.ManagementClusterResponse>;
/**
* Network used to access vCenter Server and NSX-T Manager
*/
readonly managementNetwork: pulumi.Output<string>;
/**
* The name of the resource
*/
readonly name: pulumi.Output<string>;
/**
* The block of addresses should be unique across VNet in your subscription as
* well as on-premise. Make sure the CIDR format is conformed to (A.B.C.D/X) where
* A,B,C,D are between 0 and 255, and X is between 0 and 22
*/
readonly networkBlock: pulumi.Output<string>;
/**
* Flag to indicate whether the private cloud has the quota for provisioned NSX
* Public IP count raised from 64 to 1024
*/
readonly nsxPublicIpQuotaRaised: pulumi.Output<string>;
/**
* Thumbprint of the NSX-T Manager SSL certificate
*/
readonly nsxtCertificateThumbprint: pulumi.Output<string>;
/**
* Optionally, set the NSX-T Manager password when the private cloud is created
*/
readonly nsxtPassword: pulumi.Output<string | undefined>;
/**
* Used for virtual machine cold migration, cloning, and snapshot migration
*/
readonly provisioningNetwork: pulumi.Output<string>;
/**
* The provisioning state
*/
readonly provisioningState: pulumi.Output<string>;
/**
* A secondary expressRoute circuit from a separate AZ. Only present in a
* stretched private cloud
*/
readonly secondaryCircuit: pulumi.Output<outputs.avs.CircuitResponse | undefined>;
/**
* The SKU (Stock Keeping Unit) assigned to this resource.
*/
readonly sku: pulumi.Output<outputs.avs.SkuResponse>;
/**
* Azure Resource Manager metadata containing createdBy and modifiedBy information.
*/
readonly systemData: pulumi.Output<outputs.avs.SystemDataResponse>;
/**
* Resource tags.
*/
readonly tags: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*/
readonly type: pulumi.Output<string>;
/**
* Thumbprint of the vCenter Server SSL certificate
*/
readonly vcenterCertificateThumbprint: pulumi.Output<string>;
/**
* Optionally, set the vCenter admin password when the private cloud is created
*/
readonly vcenterPassword: pulumi.Output<string | undefined>;
/**
* Azure resource ID of the virtual network
*/
readonly virtualNetworkId: pulumi.Output<string | undefined>;
/**
* Used for live migration of virtual machines
*/
readonly vmotionNetwork: pulumi.Output<string>;
/**
* Create a PrivateCloud 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: PrivateCloudArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a PrivateCloud resource.
*/
export interface PrivateCloudArgs {
/**
* Properties describing how the cloud is distributed across availability zones
*/
availability?: pulumi.Input<inputs.avs.AvailabilityPropertiesArgs>;
/**
* The type of DNS zone to use.
*/
dnsZoneType?: pulumi.Input<string | enums.avs.DnsZoneType>;
/**
* Customer managed key encryption, can be enabled or disabled
*/
encryption?: pulumi.Input<inputs.avs.EncryptionArgs>;
/**
* Array of additional networks noncontiguous with networkBlock. Networks must be
* unique and non-overlapping across VNet in your subscription, on-premise, and
* this privateCloud networkBlock attribute. Make sure the CIDR format conforms to
* (A.B.C.D/X).
*/
extendedNetworkBlocks?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The managed service identities assigned to this resource.
*/
identity?: pulumi.Input<inputs.avs.SystemAssignedServiceIdentityArgs>;
/**
* vCenter Single Sign On Identity Sources
*/
identitySources?: pulumi.Input<pulumi.Input<inputs.avs.IdentitySourceArgs>[]>;
/**
* Connectivity to internet is enabled or disabled
*/
internet?: pulumi.Input<string | enums.avs.InternetEnum>;
/**
* The geo-location where the resource lives
*/
location?: pulumi.Input<string>;
/**
* The default cluster used for management
*/
managementCluster: pulumi.Input<inputs.avs.ManagementClusterArgs>;
/**
* The block of addresses should be unique across VNet in your subscription as
* well as on-premise. Make sure the CIDR format is conformed to (A.B.C.D/X) where
* A,B,C,D are between 0 and 255, and X is between 0 and 22
*/
networkBlock: pulumi.Input<string>;
/**
* Optionally, set the NSX-T Manager password when the private cloud is created
*/
nsxtPassword?: pulumi.Input<string>;
/**
* Name of the private cloud
*/
privateCloudName?: pulumi.Input<string>;
/**
* The name of the resource group. The name is case insensitive.
*/
resourceGroupName: pulumi.Input<string>;
/**
* The SKU (Stock Keeping Unit) assigned to this resource.
*/
sku: pulumi.Input<inputs.avs.SkuArgs>;
/**
* Resource tags.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Optionally, set the vCenter admin password when the private cloud is created
*/
vcenterPassword?: pulumi.Input<string>;
/**
* Azure resource ID of the virtual network
*/
virtualNetworkId?: pulumi.Input<string>;
}