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

371 lines (370 loc) • 16.7 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"; /** * An Azure SQL managed instance. * * Uses Azure REST API version 2023-08-01. In version 2.x of the Azure Native provider, it used API version 2021-11-01. * * Other available API versions: 2015-05-01-preview, 2018-06-01-preview, 2020-02-02-preview, 2020-08-01-preview, 2020-11-01-preview, 2021-02-01-preview, 2021-05-01-preview, 2021-08-01-preview, 2021-11-01, 2021-11-01-preview, 2022-02-01-preview, 2022-05-01-preview, 2022-08-01-preview, 2022-11-01-preview, 2023-02-01-preview, 2023-05-01-preview, 2023-08-01-preview, 2024-05-01-preview, 2024-11-01-preview. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native sql [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details. */ export declare class ManagedInstance extends pulumi.CustomResource { /** * Get an existing ManagedInstance 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): ManagedInstance; /** * Returns true if the given object is an instance of ManagedInstance. 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 ManagedInstance; /** * Administrator username for the managed instance. Can only be specified when the managed instance is being created (and is required for creation). */ readonly administratorLogin: pulumi.Output<string | undefined>; /** * The Azure Active Directory administrator of the instance. This can only be used at instance create time. If used for instance update, it will be ignored or it will result in an error. For updates individual APIs will need to be used. */ readonly administrators: pulumi.Output<outputs.sql.ManagedInstanceExternalAdministratorResponse | undefined>; /** * The managed instance's authentication metadata lookup mode. */ readonly authenticationMetadata: pulumi.Output<string | undefined>; /** * The Azure API version of the resource. */ readonly azureApiVersion: pulumi.Output<string>; /** * Collation of the managed instance. */ readonly collation: pulumi.Output<string | undefined>; /** * Specifies the point in time (ISO8601 format) of the Managed Instance creation. */ readonly createTime: pulumi.Output<string>; /** * The storage account type used to store backups for this instance. The options are Local (LocallyRedundantStorage), Zone (ZoneRedundantStorage), Geo (GeoRedundantStorage) and GeoZone(GeoZoneRedundantStorage) */ readonly currentBackupStorageRedundancy: pulumi.Output<string>; /** * Specifies the internal format of instance databases specific to the SQL engine version. */ readonly databaseFormat: pulumi.Output<string | undefined>; /** * The Dns Zone that the managed instance is in. */ readonly dnsZone: pulumi.Output<string>; /** * Status of external governance. */ readonly externalGovernanceStatus: pulumi.Output<string>; /** * The fully qualified domain name of the managed instance. */ readonly fullyQualifiedDomainName: pulumi.Output<string>; /** * Hybrid secondary usage. Possible values are 'Active' (default value) and 'Passive' (customer uses the secondary as Passive DR). */ readonly hybridSecondaryUsage: pulumi.Output<string | undefined>; /** * Hybrid secondary usage detected. Possible values are 'Active' (customer does not meet the requirements to use the secondary as Passive DR) and 'Passive' (customer meets the requirements to use the secondary as Passive DR). */ readonly hybridSecondaryUsageDetected: pulumi.Output<string>; /** * The Azure Active Directory identity of the managed instance. */ readonly identity: pulumi.Output<outputs.sql.ResourceIdentityResponse | undefined>; /** * The Id of the instance pool this managed server belongs to. */ readonly instancePoolId: pulumi.Output<string | undefined>; /** * Whether or not this is a GPv2 variant of General Purpose edition. */ readonly isGeneralPurposeV2: pulumi.Output<boolean | undefined>; /** * A CMK URI of the key to use for encryption. */ readonly keyId: pulumi.Output<string | undefined>; /** * The license type. Possible values are 'LicenseIncluded' (regular price inclusive of a new SQL license) and 'BasePrice' (discounted AHB price for bringing your own SQL licenses). */ readonly licenseType: pulumi.Output<string | undefined>; /** * Resource location. */ readonly location: pulumi.Output<string>; /** * Specifies maintenance configuration id to apply to this managed instance. */ readonly maintenanceConfigurationId: pulumi.Output<string | undefined>; /** * Minimal TLS version. Allowed values: 'None', '1.0', '1.1', '1.2' */ readonly minimalTlsVersion: pulumi.Output<string | undefined>; /** * Resource name. */ readonly name: pulumi.Output<string>; /** * Pricing model of Managed Instance. */ readonly pricingModel: pulumi.Output<string | undefined>; /** * The resource id of a user assigned identity to be used by default. */ readonly primaryUserAssignedIdentityId: pulumi.Output<string | undefined>; /** * List of private endpoint connections on a managed instance. */ readonly privateEndpointConnections: pulumi.Output<outputs.sql.ManagedInstancePecPropertyResponse[]>; /** * Provisioning state of managed instance. */ readonly provisioningState: pulumi.Output<string>; /** * Connection type used for connecting to the instance. */ readonly proxyOverride: pulumi.Output<string | undefined>; /** * Whether or not the public data endpoint is enabled. */ readonly publicDataEndpointEnabled: pulumi.Output<boolean | undefined>; /** * The storage account type to be used to store backups for this instance. The options are Local (LocallyRedundantStorage), Zone (ZoneRedundantStorage), Geo (GeoRedundantStorage) and GeoZone(GeoZoneRedundantStorage) */ readonly requestedBackupStorageRedundancy: pulumi.Output<string | undefined>; /** * The managed instance's service principal. */ readonly servicePrincipal: pulumi.Output<outputs.sql.ServicePrincipalResponse | undefined>; /** * Managed instance SKU. Allowed values for sku.name: GP_Gen5, GP_G8IM, GP_G8IH, BC_Gen5, BC_G8IM, BC_G8IH */ readonly sku: pulumi.Output<outputs.sql.SkuResponse | undefined>; /** * The state of the managed instance. */ readonly state: pulumi.Output<string>; /** * Storage IOps. Minimum value: 300. Maximum value: 80000. Increments of 1 IOps allowed only. Maximum value depends on the selected hardware family and number of vCores. */ readonly storageIOps: pulumi.Output<number | undefined>; /** * Storage size in GB. Minimum value: 32. Maximum value: 16384. Increments of 32 GB allowed only. Maximum value depends on the selected hardware family and number of vCores. */ readonly storageSizeInGB: pulumi.Output<number | undefined>; /** * Storage throughput MBps parameter is not supported in the instance create/update operation. */ readonly storageThroughputMBps: pulumi.Output<number | undefined>; /** * Subnet resource ID for the managed instance. */ readonly subnetId: pulumi.Output<string | undefined>; /** * Resource tags. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Id of the timezone. Allowed values are timezones supported by Windows. * Windows keeps details on supported timezones, including the id, in registry under * KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones. * You can get those registry values via SQL Server by querying SELECT name AS timezone_id FROM sys.time_zone_info. * List of Ids can also be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. * An example of valid timezone id is "Pacific Standard Time" or "W. Europe Standard Time". */ readonly timezoneId: pulumi.Output<string | undefined>; /** * Resource type. */ readonly type: pulumi.Output<string>; /** * The number of vCores. Allowed values: 8, 16, 24, 32, 40, 64, 80. */ readonly vCores: pulumi.Output<number | undefined>; /** * Virtual cluster resource id for the Managed Instance. */ readonly virtualClusterId: pulumi.Output<string>; /** * Whether or not the multi-az is enabled. */ readonly zoneRedundant: pulumi.Output<boolean | undefined>; /** * Create a ManagedInstance 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: ManagedInstanceArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a ManagedInstance resource. */ export interface ManagedInstanceArgs { /** * Administrator username for the managed instance. Can only be specified when the managed instance is being created (and is required for creation). */ administratorLogin?: pulumi.Input<string>; /** * The administrator login password (required for managed instance creation). */ administratorLoginPassword?: pulumi.Input<string>; /** * The Azure Active Directory administrator of the instance. This can only be used at instance create time. If used for instance update, it will be ignored or it will result in an error. For updates individual APIs will need to be used. */ administrators?: pulumi.Input<inputs.sql.ManagedInstanceExternalAdministratorArgs>; /** * The managed instance's authentication metadata lookup mode. */ authenticationMetadata?: pulumi.Input<string | enums.sql.AuthMetadataLookupModes>; /** * Collation of the managed instance. */ collation?: pulumi.Input<string>; /** * Specifies the internal format of instance databases specific to the SQL engine version. */ databaseFormat?: pulumi.Input<string | enums.sql.ManagedInstanceDatabaseFormat>; /** * The resource id of another managed instance whose DNS zone this managed instance will share after creation. */ dnsZonePartner?: pulumi.Input<string>; /** * Hybrid secondary usage. Possible values are 'Active' (default value) and 'Passive' (customer uses the secondary as Passive DR). */ hybridSecondaryUsage?: pulumi.Input<string | enums.sql.HybridSecondaryUsage>; /** * The Azure Active Directory identity of the managed instance. */ identity?: pulumi.Input<inputs.sql.ResourceIdentityArgs>; /** * The Id of the instance pool this managed server belongs to. */ instancePoolId?: pulumi.Input<string>; /** * Whether or not this is a GPv2 variant of General Purpose edition. */ isGeneralPurposeV2?: pulumi.Input<boolean>; /** * A CMK URI of the key to use for encryption. */ keyId?: pulumi.Input<string>; /** * The license type. Possible values are 'LicenseIncluded' (regular price inclusive of a new SQL license) and 'BasePrice' (discounted AHB price for bringing your own SQL licenses). */ licenseType?: pulumi.Input<string | enums.sql.ManagedInstanceLicenseType>; /** * Resource location. */ location?: pulumi.Input<string>; /** * Specifies maintenance configuration id to apply to this managed instance. */ maintenanceConfigurationId?: pulumi.Input<string>; /** * Specifies the mode of database creation. * * Default: Regular instance creation. * * Restore: Creates an instance by restoring a set of backups to specific point in time. RestorePointInTime and SourceManagedInstanceId must be specified. */ managedInstanceCreateMode?: pulumi.Input<string | enums.sql.ManagedServerCreateMode>; /** * The name of the managed instance. */ managedInstanceName?: pulumi.Input<string>; /** * Minimal TLS version. Allowed values: 'None', '1.0', '1.1', '1.2' */ minimalTlsVersion?: pulumi.Input<string>; /** * Pricing model of Managed Instance. */ pricingModel?: pulumi.Input<string | enums.sql.PricingModel>; /** * The resource id of a user assigned identity to be used by default. */ primaryUserAssignedIdentityId?: pulumi.Input<string>; /** * Connection type used for connecting to the instance. */ proxyOverride?: pulumi.Input<string | enums.sql.ManagedInstanceProxyOverride>; /** * Whether or not the public data endpoint is enabled. */ publicDataEndpointEnabled?: pulumi.Input<boolean>; /** * The storage account type to be used to store backups for this instance. The options are Local (LocallyRedundantStorage), Zone (ZoneRedundantStorage), Geo (GeoRedundantStorage) and GeoZone(GeoZoneRedundantStorage) */ requestedBackupStorageRedundancy?: pulumi.Input<string | enums.sql.BackupStorageRedundancy>; /** * The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal. */ resourceGroupName: pulumi.Input<string>; /** * Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database. */ restorePointInTime?: pulumi.Input<string>; /** * The managed instance's service principal. */ servicePrincipal?: pulumi.Input<inputs.sql.ServicePrincipalArgs>; /** * Managed instance SKU. Allowed values for sku.name: GP_Gen5, GP_G8IM, GP_G8IH, BC_Gen5, BC_G8IM, BC_G8IH */ sku?: pulumi.Input<inputs.sql.SkuArgs>; /** * The resource identifier of the source managed instance associated with create operation of this instance. */ sourceManagedInstanceId?: pulumi.Input<string>; /** * Storage IOps. Minimum value: 300. Maximum value: 80000. Increments of 1 IOps allowed only. Maximum value depends on the selected hardware family and number of vCores. */ storageIOps?: pulumi.Input<number>; /** * Storage size in GB. Minimum value: 32. Maximum value: 16384. Increments of 32 GB allowed only. Maximum value depends on the selected hardware family and number of vCores. */ storageSizeInGB?: pulumi.Input<number>; /** * Storage throughput MBps parameter is not supported in the instance create/update operation. */ storageThroughputMBps?: pulumi.Input<number>; /** * Subnet resource ID for the managed instance. */ subnetId?: pulumi.Input<string>; /** * Resource tags. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * Id of the timezone. Allowed values are timezones supported by Windows. * Windows keeps details on supported timezones, including the id, in registry under * KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones. * You can get those registry values via SQL Server by querying SELECT name AS timezone_id FROM sys.time_zone_info. * List of Ids can also be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. * An example of valid timezone id is "Pacific Standard Time" or "W. Europe Standard Time". */ timezoneId?: pulumi.Input<string>; /** * The number of vCores. Allowed values: 8, 16, 24, 32, 40, 64, 80. */ vCores?: pulumi.Input<number>; /** * Whether or not the multi-az is enabled. */ zoneRedundant?: pulumi.Input<boolean>; }