Class SqlVirtualMachine
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachine
-
public class SqlVirtualMachine extends com.pulumi.resources.CustomResource
A SQL virtual machine. Azure REST API version: 2022-02-01. Prior API version in Azure Native 1.x: 2017-03-01-preview. Other available API versions: 2023-01-01-preview, 2023-10-01. ## Example Usage ### Creates or updates a SQL virtual machine and joins it to a SQL virtual machine group. ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachine; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachineArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.WsfcDomainCredentialsArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var sqlVirtualMachine = new SqlVirtualMachine("sqlVirtualMachine", SqlVirtualMachineArgs.builder() .location("northeurope") .resourceGroupName("testrg") .sqlVirtualMachineGroupResourceId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup") .sqlVirtualMachineName("testvm") .virtualMachineResourceId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm2") .wsfcDomainCredentials(WsfcDomainCredentialsArgs.builder() .clusterBootstrapAccountPassword("<Password>") .clusterOperatorAccountPassword("<Password>") .sqlServiceAccountPassword("<Password>") .build()) .wsfcStaticIp("10.0.0.7") .build()); } } ``` ### Creates or updates a SQL virtual machine for Automated Back up Settings with Weekly and Days of the week to run the back up. ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachine; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachineArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.AutoBackupSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.AutoPatchingSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.KeyVaultCredentialSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.ServerConfigurationsManagementSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.AdditionalFeaturesServerConfigurationsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SqlConnectivityUpdateSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SqlStorageUpdateSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SqlWorkloadTypeUpdateSettingsArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var sqlVirtualMachine = new SqlVirtualMachine("sqlVirtualMachine", SqlVirtualMachineArgs.builder() .autoBackupSettings(AutoBackupSettingsArgs.builder() .backupScheduleType("Manual") .backupSystemDbs(true) .daysOfWeek( "Monday", "Friday") .enable(true) .enableEncryption(true) .fullBackupFrequency("Weekly") .fullBackupStartTime(6) .fullBackupWindowHours(11) .logBackupFrequency(10) .password("<Password>") .retentionPeriod(17) .storageAccessKey("<primary storage access key>") .storageAccountUrl("https://teststorage.blob.core.windows.net/") .storageContainerName("testcontainer") .build()) .autoPatchingSettings(AutoPatchingSettingsArgs.builder() .dayOfWeek("Sunday") .enable(true) .maintenanceWindowDuration(60) .maintenanceWindowStartingHour(2) .build()) .keyVaultCredentialSettings(KeyVaultCredentialSettingsArgs.builder() .enable(false) .build()) .location("northeurope") .resourceGroupName("testrg") .serverConfigurationsManagementSettings(ServerConfigurationsManagementSettingsArgs.builder() .additionalFeaturesServerConfigurations(AdditionalFeaturesServerConfigurationsArgs.builder() .isRServicesEnabled(false) .build()) .sqlConnectivityUpdateSettings(SqlConnectivityUpdateSettingsArgs.builder() .connectivityType("PRIVATE") .port(1433) .sqlAuthUpdatePassword("<password>") .sqlAuthUpdateUserName("sqllogin") .build()) .sqlStorageUpdateSettings(SqlStorageUpdateSettingsArgs.builder() .diskConfigurationType("NEW") .diskCount(1) .startingDeviceId(2) .build()) .sqlWorkloadTypeUpdateSettings(SqlWorkloadTypeUpdateSettingsArgs.builder() .sqlWorkloadType("OLTP") .build()) .build()) .sqlImageSku("Enterprise") .sqlManagement("Full") .sqlServerLicenseType("PAYG") .sqlVirtualMachineName("testvm") .virtualMachineResourceId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm") .build()); } } ``` ### Creates or updates a SQL virtual machine for Storage Configuration Settings to EXTEND Data, Log or TempDB storage pool. ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachine; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachineArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.StorageConfigurationSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SQLStorageSettingsArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var sqlVirtualMachine = new SqlVirtualMachine("sqlVirtualMachine", SqlVirtualMachineArgs.builder() .location("northeurope") .resourceGroupName("testrg") .sqlVirtualMachineName("testvm") .storageConfigurationSettings(StorageConfigurationSettingsArgs.builder() .diskConfigurationType("EXTEND") .sqlDataSettings(SQLStorageSettingsArgs.builder() .luns(2) .build()) .build()) .virtualMachineResourceId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm") .build()); } } ``` ### Creates or updates a SQL virtual machine for Storage Configuration Settings to NEW Data, Log and TempDB storage pool. ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachine; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachineArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.StorageConfigurationSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SQLStorageSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SQLTempDbSettingsArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var sqlVirtualMachine = new SqlVirtualMachine("sqlVirtualMachine", SqlVirtualMachineArgs.builder() .location("northeurope") .resourceGroupName("testrg") .sqlVirtualMachineName("testvm") .storageConfigurationSettings(StorageConfigurationSettingsArgs.builder() .diskConfigurationType("NEW") .sqlDataSettings(SQLStorageSettingsArgs.builder() .defaultFilePath("F:\\folderpath\\") .luns(0) .build()) .sqlLogSettings(SQLStorageSettingsArgs.builder() .defaultFilePath("G:\\folderpath\\") .luns(1) .build()) .sqlSystemDbOnDataDisk(true) .sqlTempDbSettings(SQLTempDbSettingsArgs.builder() .dataFileCount(8) .dataFileSize(256) .dataGrowth(512) .defaultFilePath("D:\\TEMP") .logFileSize(256) .logGrowth(512) .build()) .storageWorkloadType("OLTP") .build()) .virtualMachineResourceId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm") .build()); } } ``` ### Creates or updates a SQL virtual machine with max parameters. ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachine; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachineArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.AssessmentSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.ScheduleArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.AutoBackupSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.AutoPatchingSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.KeyVaultCredentialSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.ServerConfigurationsManagementSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.AdditionalFeaturesServerConfigurationsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SqlConnectivityUpdateSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SQLInstanceSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SqlStorageUpdateSettingsArgs; import com.pulumi.azurenative.sqlvirtualmachine.inputs.SqlWorkloadTypeUpdateSettingsArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var sqlVirtualMachine = new SqlVirtualMachine("sqlVirtualMachine", SqlVirtualMachineArgs.builder() .assessmentSettings(AssessmentSettingsArgs.builder() .enable(true) .runImmediately(true) .schedule(ScheduleArgs.builder() .dayOfWeek("Sunday") .enable(true) .startTime("23:17") .weeklyInterval(1) .build()) .build()) .autoBackupSettings(AutoBackupSettingsArgs.builder() .backupScheduleType("Manual") .backupSystemDbs(true) .enable(true) .enableEncryption(true) .fullBackupFrequency("Daily") .fullBackupStartTime(6) .fullBackupWindowHours(11) .logBackupFrequency(10) .password("<Password>") .retentionPeriod(17) .storageAccessKey("<primary storage access key>") .storageAccountUrl("https://teststorage.blob.core.windows.net/") .storageContainerName("testcontainer") .build()) .autoPatchingSettings(AutoPatchingSettingsArgs.builder() .dayOfWeek("Sunday") .enable(true) .maintenanceWindowDuration(60) .maintenanceWindowStartingHour(2) .build()) .keyVaultCredentialSettings(KeyVaultCredentialSettingsArgs.builder() .enable(false) .build()) .location("northeurope") .resourceGroupName("testrg") .serverConfigurationsManagementSettings(ServerConfigurationsManagementSettingsArgs.builder() .additionalFeaturesServerConfigurations(AdditionalFeaturesServerConfigurationsArgs.builder() .isRServicesEnabled(false) .build()) .sqlConnectivityUpdateSettings(SqlConnectivityUpdateSettingsArgs.builder() .connectivityType("PRIVATE") .port(1433) .sqlAuthUpdatePassword("<password>") .sqlAuthUpdateUserName("sqllogin") .build()) .sqlInstanceSettings(SQLInstanceSettingsArgs.builder() .collation("SQL_Latin1_General_CP1_CI_AS") .isIfiEnabled(true) .isLpimEnabled(true) .isOptimizeForAdHocWorkloadsEnabled(true) .maxDop(8) .maxServerMemoryMB(128) .minServerMemoryMB(0) .build()) .sqlStorageUpdateSettings(SqlStorageUpdateSettingsArgs.builder() .diskConfigurationType("NEW") .diskCount(1) .startingDeviceId(2) .build()) .sqlWorkloadTypeUpdateSettings(SqlWorkloadTypeUpdateSettingsArgs.builder() .sqlWorkloadType("OLTP") .build()) .build()) .sqlImageSku("Enterprise") .sqlManagement("Full") .sqlServerLicenseType("PAYG") .sqlVirtualMachineName("testvm") .virtualMachineResourceId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm") .build()); } } ``` ### Creates or updates a SQL virtual machine with min parameters. ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachine; import com.pulumi.azurenative.sqlvirtualmachine.SqlVirtualMachineArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var sqlVirtualMachine = new SqlVirtualMachine("sqlVirtualMachine", SqlVirtualMachineArgs.builder() .location("northeurope") .resourceGroupName("testrg") .sqlVirtualMachineName("testvm") .virtualMachineResourceId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm") .build()); } } ``` ## Import An existing resource can be imported using its type token, name, and identifier, e.g. ```sh $ pulumi import azure-native:sqlvirtualmachine:SqlVirtualMachine testvm /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/{sqlVirtualMachineName} ```
-
-
Constructor Summary
Constructors Constructor Description SqlVirtualMachine(java.lang.String name)
SqlVirtualMachine(java.lang.String name, SqlVirtualMachineArgs args)
SqlVirtualMachine(java.lang.String name, SqlVirtualMachineArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.util.Optional<AssessmentSettingsResponse>>
assessmentSettings()
com.pulumi.core.Output<java.util.Optional<AutoBackupSettingsResponse>>
autoBackupSettings()
com.pulumi.core.Output<java.util.Optional<AutoPatchingSettingsResponse>>
autoPatchingSettings()
static SqlVirtualMachine
get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.util.Optional<ResourceIdentityResponse>>
identity()
com.pulumi.core.Output<java.util.Optional<KeyVaultCredentialSettingsResponse>>
keyVaultCredentialSettings()
com.pulumi.core.Output<java.lang.String>
location()
com.pulumi.core.Output<java.lang.String>
name()
com.pulumi.core.Output<java.lang.String>
provisioningState()
com.pulumi.core.Output<java.util.Optional<ServerConfigurationsManagementSettingsResponse>>
serverConfigurationsManagementSettings()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
sqlImageOffer()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
sqlImageSku()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
sqlManagement()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
sqlServerLicenseType()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
sqlVirtualMachineGroupResourceId()
com.pulumi.core.Output<java.util.Optional<StorageConfigurationSettingsResponse>>
storageConfigurationSettings()
com.pulumi.core.Output<SystemDataResponse>
systemData()
com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>
tags()
com.pulumi.core.Output<java.lang.String>
type()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
virtualMachineResourceId()
com.pulumi.core.Output<java.util.Optional<WsfcDomainCredentialsResponse>>
wsfcDomainCredentials()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
wsfcStaticIp()
-
-
-
Constructor Detail
-
SqlVirtualMachine
public SqlVirtualMachine(java.lang.String name)
- Parameters:
name
- The _unique_ name of the resulting resource.
-
SqlVirtualMachine
public SqlVirtualMachine(java.lang.String name, SqlVirtualMachineArgs args)
- Parameters:
name
- The _unique_ name of the resulting resource.args
- The arguments to use to populate this resource's properties.
-
SqlVirtualMachine
public SqlVirtualMachine(java.lang.String name, SqlVirtualMachineArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)
- Parameters:
name
- The _unique_ name of the resulting resource.args
- The arguments to use to populate this resource's properties.options
- A bag of options that control this resource's behavior.
-
-
Method Detail
-
assessmentSettings
public com.pulumi.core.Output<java.util.Optional<AssessmentSettingsResponse>> assessmentSettings()
- Returns:
- Assessment Settings.
-
autoBackupSettings
public com.pulumi.core.Output<java.util.Optional<AutoBackupSettingsResponse>> autoBackupSettings()
- Returns:
- Auto backup settings for SQL Server.
-
autoPatchingSettings
public com.pulumi.core.Output<java.util.Optional<AutoPatchingSettingsResponse>> autoPatchingSettings()
- Returns:
- Auto patching settings for applying critical security updates to SQL virtual machine.
-
identity
public com.pulumi.core.Output<java.util.Optional<ResourceIdentityResponse>> identity()
- Returns:
- Azure Active Directory identity of the server.
-
keyVaultCredentialSettings
public com.pulumi.core.Output<java.util.Optional<KeyVaultCredentialSettingsResponse>> keyVaultCredentialSettings()
- Returns:
- Key vault credential settings.
-
location
public com.pulumi.core.Output<java.lang.String> location()
- Returns:
- Resource location.
-
name
public com.pulumi.core.Output<java.lang.String> name()
- Returns:
- Resource name.
-
provisioningState
public com.pulumi.core.Output<java.lang.String> provisioningState()
- Returns:
- Provisioning state to track the async operation status.
-
serverConfigurationsManagementSettings
public com.pulumi.core.Output<java.util.Optional<ServerConfigurationsManagementSettingsResponse>> serverConfigurationsManagementSettings()
- Returns:
- SQL Server configuration management settings.
-
sqlImageOffer
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> sqlImageOffer()
- Returns:
- SQL image offer. Examples include SQL2016-WS2016, SQL2017-WS2016.
-
sqlImageSku
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> sqlImageSku()
- Returns:
- SQL Server edition type.
-
sqlManagement
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> sqlManagement()
- Returns:
- SQL Server Management type.
-
sqlServerLicenseType
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> sqlServerLicenseType()
- Returns:
- SQL Server license type.
-
sqlVirtualMachineGroupResourceId
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> sqlVirtualMachineGroupResourceId()
- Returns:
- ARM resource id of the SQL virtual machine group this SQL virtual machine is or will be part of.
-
storageConfigurationSettings
public com.pulumi.core.Output<java.util.Optional<StorageConfigurationSettingsResponse>> storageConfigurationSettings()
- Returns:
- Storage Configuration Settings.
-
systemData
public com.pulumi.core.Output<SystemDataResponse> systemData()
- Returns:
- Metadata pertaining to creation and last modification of the resource.
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Resource tags.
-
type
public com.pulumi.core.Output<java.lang.String> type()
- Returns:
- Resource type.
-
virtualMachineResourceId
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> virtualMachineResourceId()
- Returns:
- ARM Resource id of underlying virtual machine created from SQL marketplace image.
-
wsfcDomainCredentials
public com.pulumi.core.Output<java.util.Optional<WsfcDomainCredentialsResponse>> wsfcDomainCredentials()
- Returns:
- Domain credentials for setting up Windows Server Failover Cluster for SQL availability group.
-
wsfcStaticIp
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> wsfcStaticIp()
- Returns:
- Domain credentials for setting up Windows Server Failover Cluster for SQL availability group.
-
get
public static SqlVirtualMachine get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name
- The _unique_ name of the resulting resource.id
- The _unique_ provider ID of the resource to lookup.options
- Optional settings to control the behavior of the CustomResource.
-
-