UNPKG

@pulumi/azure-native

Version:

[![Slack](http://www.pulumi.com/images/docs/badges/slack.svg)](https://slack.pulumi.com) [![NPM version](https://badge.fury.io/js/%40pulumi%2Fazure-native.svg)](https://npmjs.com/package/@pulumi/azure-native) [![Python version](https://badge.fury.io/py/pu

245 lines (244 loc) • 9.31 kB
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>; }