SqlVirtualMachineArgs

data class SqlVirtualMachineArgs(val assessmentSettings: Output<AssessmentSettingsArgs>? = null, val autoBackupSettings: Output<AutoBackupSettingsArgs>? = null, val autoPatchingSettings: Output<AutoPatchingSettingsArgs>? = null, val enableAutomaticUpgrade: Output<Boolean>? = null, val identity: Output<ResourceIdentityArgs>? = null, val keyVaultCredentialSettings: Output<KeyVaultCredentialSettingsArgs>? = null, val leastPrivilegeMode: Output<Either<String, LeastPrivilegeMode>>? = null, val location: Output<String>? = null, val resourceGroupName: Output<String>? = null, val serverConfigurationsManagementSettings: Output<ServerConfigurationsManagementSettingsArgs>? = null, val sqlImageOffer: Output<String>? = null, val sqlImageSku: Output<Either<String, SqlImageSku>>? = null, val sqlManagement: Output<Either<String, SqlManagementMode>>? = null, val sqlServerLicenseType: Output<Either<String, SqlServerLicenseType>>? = null, val sqlVirtualMachineGroupResourceId: Output<String>? = null, val sqlVirtualMachineName: Output<String>? = null, val storageConfigurationSettings: Output<StorageConfigurationSettingsArgs>? = null, val tags: Output<Map<String, String>>? = null, val virtualMachineIdentitySettings: Output<VirtualMachineIdentityArgs>? = null, val virtualMachineResourceId: Output<String>? = null, val wsfcDomainCredentials: Output<WsfcDomainCredentialsArgs>? = null, val wsfcStaticIp: Output<String>? = null) : ConvertibleToJava<SqlVirtualMachineArgs>

A SQL virtual machine. Uses Azure REST API version 2023-10-01. In version 2.x of the Azure Native provider, it used API version 2022-02-01. Other available API versions: 2022-02-01, 2022-07-01-preview, 2022-08-01-preview, 2023-01-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native sqlvirtualmachine [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Creates or updates a SQL virtual machine and joins it to a SQL virtual machine group.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sqlVirtualMachine = new AzureNative.SqlVirtualMachine.SqlVirtualMachine("sqlVirtualMachine", new()
{
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 = new AzureNative.SqlVirtualMachine.Inputs.WsfcDomainCredentialsArgs
{
ClusterBootstrapAccountPassword = "<Password>",
ClusterOperatorAccountPassword = "<Password>",
SqlServiceAccountPassword = "<Password>",
},
WsfcStaticIp = "10.0.0.7",
});
});
package main
import (
sqlvirtualmachine "github.com/pulumi/pulumi-azure-native-sdk/sqlvirtualmachine/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sqlvirtualmachine.NewSqlVirtualMachine(ctx, "sqlVirtualMachine", &sqlvirtualmachine.SqlVirtualMachineArgs{
Location: pulumi.String("northeurope"),
ResourceGroupName: pulumi.String("testrg"),
SqlVirtualMachineGroupResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup"),
SqlVirtualMachineName: pulumi.String("testvm"),
VirtualMachineResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm2"),
WsfcDomainCredentials: &sqlvirtualmachine.WsfcDomainCredentialsArgs{
ClusterBootstrapAccountPassword: pulumi.String("<Password>"),
ClusterOperatorAccountPassword: pulumi.String("<Password>"),
SqlServiceAccountPassword: pulumi.String("<Password>"),
},
WsfcStaticIp: pulumi.String("10.0.0.7"),
})
if err != nil {
return err
}
return nil
})
}
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.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sqlVirtualMachine = new AzureNative.SqlVirtualMachine.SqlVirtualMachine("sqlVirtualMachine", new()
{
AutoBackupSettings = new AzureNative.SqlVirtualMachine.Inputs.AutoBackupSettingsArgs
{
BackupScheduleType = AzureNative.SqlVirtualMachine.BackupScheduleType.Manual,
BackupSystemDbs = true,
DaysOfWeek = new[]
{
AzureNative.SqlVirtualMachine.AutoBackupDaysOfWeek.Monday,
AzureNative.SqlVirtualMachine.AutoBackupDaysOfWeek.Friday,
},
Enable = true,
EnableEncryption = true,
FullBackupFrequency = AzureNative.SqlVirtualMachine.FullBackupFrequencyType.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",
},
AutoPatchingSettings = new AzureNative.SqlVirtualMachine.Inputs.AutoPatchingSettingsArgs
{
DayOfWeek = AzureNative.SqlVirtualMachine.DayOfWeek.Sunday,
Enable = true,
MaintenanceWindowDuration = 60,
MaintenanceWindowStartingHour = 2,
},
KeyVaultCredentialSettings = new AzureNative.SqlVirtualMachine.Inputs.KeyVaultCredentialSettingsArgs
{
Enable = false,
},
Location = "northeurope",
ResourceGroupName = "testrg",
ServerConfigurationsManagementSettings = new AzureNative.SqlVirtualMachine.Inputs.ServerConfigurationsManagementSettingsArgs
{
AdditionalFeaturesServerConfigurations = new AzureNative.SqlVirtualMachine.Inputs.AdditionalFeaturesServerConfigurationsArgs
{
IsRServicesEnabled = false,
},
SqlConnectivityUpdateSettings = new AzureNative.SqlVirtualMachine.Inputs.SqlConnectivityUpdateSettingsArgs
{
ConnectivityType = AzureNative.SqlVirtualMachine.ConnectivityType.PRIVATE,
Port = 1433,
SqlAuthUpdatePassword = "<password>",
SqlAuthUpdateUserName = "sqllogin",
},
SqlStorageUpdateSettings = new AzureNative.SqlVirtualMachine.Inputs.SqlStorageUpdateSettingsArgs
{
DiskConfigurationType = AzureNative.SqlVirtualMachine.DiskConfigurationType.NEW,
DiskCount = 1,
StartingDeviceId = 2,
},
SqlWorkloadTypeUpdateSettings = new AzureNative.SqlVirtualMachine.Inputs.SqlWorkloadTypeUpdateSettingsArgs
{
SqlWorkloadType = AzureNative.SqlVirtualMachine.SqlWorkloadType.OLTP,
},
},
SqlImageSku = AzureNative.SqlVirtualMachine.SqlImageSku.Enterprise,
SqlServerLicenseType = AzureNative.SqlVirtualMachine.SqlServerLicenseType.PAYG,
SqlVirtualMachineName = "testvm",
VirtualMachineResourceId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm",
});
});
package main
import (
sqlvirtualmachine "github.com/pulumi/pulumi-azure-native-sdk/sqlvirtualmachine/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sqlvirtualmachine.NewSqlVirtualMachine(ctx, "sqlVirtualMachine", &sqlvirtualmachine.SqlVirtualMachineArgs{
AutoBackupSettings: &sqlvirtualmachine.AutoBackupSettingsArgs{
BackupScheduleType: pulumi.String(sqlvirtualmachine.BackupScheduleTypeManual),
BackupSystemDbs: pulumi.Bool(true),
DaysOfWeek: pulumi.StringArray{
pulumi.String(sqlvirtualmachine.AutoBackupDaysOfWeekMonday),
pulumi.String(sqlvirtualmachine.AutoBackupDaysOfWeekFriday),
},
Enable: pulumi.Bool(true),
EnableEncryption: pulumi.Bool(true),
FullBackupFrequency: pulumi.String(sqlvirtualmachine.FullBackupFrequencyTypeWeekly),
FullBackupStartTime: pulumi.Int(6),
FullBackupWindowHours: pulumi.Int(11),
LogBackupFrequency: pulumi.Int(10),
Password: pulumi.String("<Password>"),
RetentionPeriod: pulumi.Int(17),
StorageAccessKey: pulumi.String("<primary storage access key>"),
StorageAccountUrl: pulumi.String("https://teststorage.blob.core.windows.net/"),
StorageContainerName: pulumi.String("testcontainer"),
},
AutoPatchingSettings: &sqlvirtualmachine.AutoPatchingSettingsArgs{
DayOfWeek: sqlvirtualmachine.DayOfWeekSunday,
Enable: pulumi.Bool(true),
MaintenanceWindowDuration: pulumi.Int(60),
MaintenanceWindowStartingHour: pulumi.Int(2),
},
KeyVaultCredentialSettings: &sqlvirtualmachine.KeyVaultCredentialSettingsArgs{
Enable: pulumi.Bool(false),
},
Location: pulumi.String("northeurope"),
ResourceGroupName: pulumi.String("testrg"),
ServerConfigurationsManagementSettings: &sqlvirtualmachine.ServerConfigurationsManagementSettingsArgs{
AdditionalFeaturesServerConfigurations: &sqlvirtualmachine.AdditionalFeaturesServerConfigurationsArgs{
IsRServicesEnabled: pulumi.Bool(false),
},
SqlConnectivityUpdateSettings: &sqlvirtualmachine.SqlConnectivityUpdateSettingsArgs{
ConnectivityType: pulumi.String(sqlvirtualmachine.ConnectivityTypePRIVATE),
Port: pulumi.Int(1433),
SqlAuthUpdatePassword: pulumi.String("<password>"),
SqlAuthUpdateUserName: pulumi.String("sqllogin"),
},
SqlStorageUpdateSettings: &sqlvirtualmachine.SqlStorageUpdateSettingsArgs{
DiskConfigurationType: pulumi.String(sqlvirtualmachine.DiskConfigurationTypeNEW),
DiskCount: pulumi.Int(1),
StartingDeviceId: pulumi.Int(2),
},
SqlWorkloadTypeUpdateSettings: &sqlvirtualmachine.SqlWorkloadTypeUpdateSettingsArgs{
SqlWorkloadType: pulumi.String(sqlvirtualmachine.SqlWorkloadTypeOLTP),
},
},
SqlImageSku: pulumi.String(sqlvirtualmachine.SqlImageSkuEnterprise),
SqlServerLicenseType: pulumi.String(sqlvirtualmachine.SqlServerLicenseTypePAYG),
SqlVirtualMachineName: pulumi.String("testvm"),
VirtualMachineResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm"),
})
if err != nil {
return err
}
return nil
})
}
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")
.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.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sqlVirtualMachine = new AzureNative.SqlVirtualMachine.SqlVirtualMachine("sqlVirtualMachine", new()
{
Location = "northeurope",
ResourceGroupName = "testrg",
SqlVirtualMachineName = "testvm",
StorageConfigurationSettings = new AzureNative.SqlVirtualMachine.Inputs.StorageConfigurationSettingsArgs
{
DiskConfigurationType = AzureNative.SqlVirtualMachine.DiskConfigurationType.EXTEND,
SqlDataSettings = new AzureNative.SqlVirtualMachine.Inputs.SQLStorageSettingsArgs
{
Luns = new[]
{
2,
},
},
},
VirtualMachineResourceId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm",
});
});
package main
import (
sqlvirtualmachine "github.com/pulumi/pulumi-azure-native-sdk/sqlvirtualmachine/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sqlvirtualmachine.NewSqlVirtualMachine(ctx, "sqlVirtualMachine", &sqlvirtualmachine.SqlVirtualMachineArgs{
Location: pulumi.String("northeurope"),
ResourceGroupName: pulumi.String("testrg"),
SqlVirtualMachineName: pulumi.String("testvm"),
StorageConfigurationSettings: &sqlvirtualmachine.StorageConfigurationSettingsArgs{
DiskConfigurationType: pulumi.String(sqlvirtualmachine.DiskConfigurationTypeEXTEND),
SqlDataSettings: &sqlvirtualmachine.SQLStorageSettingsArgs{
Luns: pulumi.IntArray{
pulumi.Int(2),
},
},
},
VirtualMachineResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm"),
})
if err != nil {
return err
}
return nil
})
}
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.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sqlVirtualMachine = new AzureNative.SqlVirtualMachine.SqlVirtualMachine("sqlVirtualMachine", new()
{
Location = "northeurope",
ResourceGroupName = "testrg",
SqlVirtualMachineName = "testvm",
StorageConfigurationSettings = new AzureNative.SqlVirtualMachine.Inputs.StorageConfigurationSettingsArgs
{
DiskConfigurationType = AzureNative.SqlVirtualMachine.DiskConfigurationType.NEW,
SqlDataSettings = new AzureNative.SqlVirtualMachine.Inputs.SQLStorageSettingsArgs
{
DefaultFilePath = "F:\\folderpath\\",
Luns = new[]
{
0,
},
},
SqlLogSettings = new AzureNative.SqlVirtualMachine.Inputs.SQLStorageSettingsArgs
{
DefaultFilePath = "G:\\folderpath\\",
Luns = new[]
{
1,
},
},
SqlSystemDbOnDataDisk = true,
SqlTempDbSettings = new AzureNative.SqlVirtualMachine.Inputs.SQLTempDbSettingsArgs
{
DataFileCount = 8,
DataFileSize = 256,
DataGrowth = 512,
DefaultFilePath = "D:\\TEMP",
LogFileSize = 256,
LogGrowth = 512,
},
StorageWorkloadType = AzureNative.SqlVirtualMachine.StorageWorkloadType.OLTP,
},
VirtualMachineResourceId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm",
});
});
package main
import (
sqlvirtualmachine "github.com/pulumi/pulumi-azure-native-sdk/sqlvirtualmachine/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sqlvirtualmachine.NewSqlVirtualMachine(ctx, "sqlVirtualMachine", &sqlvirtualmachine.SqlVirtualMachineArgs{
Location: pulumi.String("northeurope"),
ResourceGroupName: pulumi.String("testrg"),
SqlVirtualMachineName: pulumi.String("testvm"),
StorageConfigurationSettings: &sqlvirtualmachine.StorageConfigurationSettingsArgs{
DiskConfigurationType: pulumi.String(sqlvirtualmachine.DiskConfigurationTypeNEW),
SqlDataSettings: &sqlvirtualmachine.SQLStorageSettingsArgs{
DefaultFilePath: pulumi.String("F:\\folderpath\\"),
Luns: pulumi.IntArray{
pulumi.Int(0),
},
},
SqlLogSettings: &sqlvirtualmachine.SQLStorageSettingsArgs{
DefaultFilePath: pulumi.String("G:\\folderpath\\"),
Luns: pulumi.IntArray{
pulumi.Int(1),
},
},
SqlSystemDbOnDataDisk: pulumi.Bool(true),
SqlTempDbSettings: &sqlvirtualmachine.SQLTempDbSettingsArgs{
DataFileCount: pulumi.Int(8),
DataFileSize: pulumi.Int(256),
DataGrowth: pulumi.Int(512),
DefaultFilePath: pulumi.String("D:\\TEMP"),
LogFileSize: pulumi.Int(256),
LogGrowth: pulumi.Int(512),
},
StorageWorkloadType: pulumi.String(sqlvirtualmachine.StorageWorkloadTypeOLTP),
},
VirtualMachineResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm"),
})
if err != nil {
return err
}
return nil
})
}
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 to enable the usage of Virtual Machine managed identity.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sqlVirtualMachine = new AzureNative.SqlVirtualMachine.SqlVirtualMachine("sqlVirtualMachine", new()
{
Location = "northeurope",
ResourceGroupName = "testrg",
SqlVirtualMachineName = "testvm",
VirtualMachineIdentitySettings = new AzureNative.SqlVirtualMachine.Inputs.VirtualMachineIdentityArgs
{
ResourceId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourcegroups/testrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testvmidentity",
Type = AzureNative.SqlVirtualMachine.VmIdentityType.UserAssigned,
},
VirtualMachineResourceId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm",
});
});
package main
import (
sqlvirtualmachine "github.com/pulumi/pulumi-azure-native-sdk/sqlvirtualmachine/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sqlvirtualmachine.NewSqlVirtualMachine(ctx, "sqlVirtualMachine", &sqlvirtualmachine.SqlVirtualMachineArgs{
Location: pulumi.String("northeurope"),
ResourceGroupName: pulumi.String("testrg"),
SqlVirtualMachineName: pulumi.String("testvm"),
VirtualMachineIdentitySettings: &sqlvirtualmachine.VirtualMachineIdentityArgs{
ResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourcegroups/testrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testvmidentity"),
Type: pulumi.String(sqlvirtualmachine.VmIdentityTypeUserAssigned),
},
VirtualMachineResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm"),
})
if err != nil {
return err
}
return nil
})
}
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.VirtualMachineIdentityArgs;
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")
.virtualMachineIdentitySettings(VirtualMachineIdentityArgs.builder()
.resourceId("/subscriptions/00000000-1111-2222-3333-444444444444/resourcegroups/testrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testvmidentity")
.type("UserAssigned")
.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.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sqlVirtualMachine = new AzureNative.SqlVirtualMachine.SqlVirtualMachine("sqlVirtualMachine", new()
{
AssessmentSettings = new AzureNative.SqlVirtualMachine.Inputs.AssessmentSettingsArgs
{
Enable = true,
RunImmediately = true,
Schedule = new AzureNative.SqlVirtualMachine.Inputs.ScheduleArgs
{
DayOfWeek = AzureNative.SqlVirtualMachine.AssessmentDayOfWeek.Sunday,
Enable = true,
StartTime = "23:17",
WeeklyInterval = 1,
},
},
AutoBackupSettings = new AzureNative.SqlVirtualMachine.Inputs.AutoBackupSettingsArgs
{
BackupScheduleType = AzureNative.SqlVirtualMachine.BackupScheduleType.Manual,
BackupSystemDbs = true,
Enable = true,
EnableEncryption = true,
FullBackupFrequency = AzureNative.SqlVirtualMachine.FullBackupFrequencyType.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",
},
AutoPatchingSettings = new AzureNative.SqlVirtualMachine.Inputs.AutoPatchingSettingsArgs
{
DayOfWeek = AzureNative.SqlVirtualMachine.DayOfWeek.Sunday,
Enable = true,
MaintenanceWindowDuration = 60,
MaintenanceWindowStartingHour = 2,
},
EnableAutomaticUpgrade = true,
KeyVaultCredentialSettings = new AzureNative.SqlVirtualMachine.Inputs.KeyVaultCredentialSettingsArgs
{
Enable = false,
},
LeastPrivilegeMode = AzureNative.SqlVirtualMachine.LeastPrivilegeMode.Enabled,
Location = "northeurope",
ResourceGroupName = "testrg",
ServerConfigurationsManagementSettings = new AzureNative.SqlVirtualMachine.Inputs.ServerConfigurationsManagementSettingsArgs
{
AdditionalFeaturesServerConfigurations = new AzureNative.SqlVirtualMachine.Inputs.AdditionalFeaturesServerConfigurationsArgs
{
IsRServicesEnabled = false,
},
AzureAdAuthenticationSettings = new AzureNative.SqlVirtualMachine.Inputs.AADAuthenticationSettingsArgs
{
ClientId = "11111111-2222-3333-4444-555555555555",
},
SqlConnectivityUpdateSettings = new AzureNative.SqlVirtualMachine.Inputs.SqlConnectivityUpdateSettingsArgs
{
ConnectivityType = AzureNative.SqlVirtualMachine.ConnectivityType.PRIVATE,
Port = 1433,
SqlAuthUpdatePassword = "<password>",
SqlAuthUpdateUserName = "sqllogin",
},
SqlInstanceSettings = new AzureNative.SqlVirtualMachine.Inputs.SQLInstanceSettingsArgs
{
Collation = "SQL_Latin1_General_CP1_CI_AS",
IsIfiEnabled = true,
IsLpimEnabled = true,
IsOptimizeForAdHocWorkloadsEnabled = true,
MaxDop = 8,
MaxServerMemoryMB = 128,
MinServerMemoryMB = 0,
},
SqlStorageUpdateSettings = new AzureNative.SqlVirtualMachine.Inputs.SqlStorageUpdateSettingsArgs
{
DiskConfigurationType = AzureNative.SqlVirtualMachine.DiskConfigurationType.NEW,
DiskCount = 1,
StartingDeviceId = 2,
},
SqlWorkloadTypeUpdateSettings = new AzureNative.SqlVirtualMachine.Inputs.SqlWorkloadTypeUpdateSettingsArgs
{
SqlWorkloadType = AzureNative.SqlVirtualMachine.SqlWorkloadType.OLTP,
},
},
SqlImageSku = AzureNative.SqlVirtualMachine.SqlImageSku.Enterprise,
SqlServerLicenseType = AzureNative.SqlVirtualMachine.SqlServerLicenseType.PAYG,
SqlVirtualMachineName = "testvm",
StorageConfigurationSettings = new AzureNative.SqlVirtualMachine.Inputs.StorageConfigurationSettingsArgs
{
DiskConfigurationType = AzureNative.SqlVirtualMachine.DiskConfigurationType.NEW,
EnableStorageConfigBlade = true,
SqlDataSettings = new AzureNative.SqlVirtualMachine.Inputs.SQLStorageSettingsArgs
{
DefaultFilePath = "F:\\folderpath\\",
Luns = new[]
{
0,
},
UseStoragePool = false,
},
SqlLogSettings = new AzureNative.SqlVirtualMachine.Inputs.SQLStorageSettingsArgs
{
DefaultFilePath = "G:\\folderpath\\",
Luns = new[]
{
1,
},
UseStoragePool = false,
},
SqlSystemDbOnDataDisk = true,
SqlTempDbSettings = new AzureNative.SqlVirtualMachine.Inputs.SQLTempDbSettingsArgs
{
DataFileCount = 8,
DataFileSize = 256,
DataGrowth = 512,
DefaultFilePath = "D:\\TEMP",
LogFileSize = 256,
LogGrowth = 512,
Luns = new[]
{
2,
},
UseStoragePool = false,
},
StorageWorkloadType = AzureNative.SqlVirtualMachine.StorageWorkloadType.OLTP,
},
VirtualMachineResourceId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm",
});
});
package main
import (
sqlvirtualmachine "github.com/pulumi/pulumi-azure-native-sdk/sqlvirtualmachine/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sqlvirtualmachine.NewSqlVirtualMachine(ctx, "sqlVirtualMachine", &sqlvirtualmachine.SqlVirtualMachineArgs{
AssessmentSettings: &sqlvirtualmachine.AssessmentSettingsArgs{
Enable: pulumi.Bool(true),
RunImmediately: pulumi.Bool(true),
Schedule: &sqlvirtualmachine.ScheduleArgs{
DayOfWeek: sqlvirtualmachine.AssessmentDayOfWeekSunday,
Enable: pulumi.Bool(true),
StartTime: pulumi.String("23:17"),
WeeklyInterval: pulumi.Int(1),
},
},
AutoBackupSettings: &sqlvirtualmachine.AutoBackupSettingsArgs{
BackupScheduleType: pulumi.String(sqlvirtualmachine.BackupScheduleTypeManual),
BackupSystemDbs: pulumi.Bool(true),
Enable: pulumi.Bool(true),
EnableEncryption: pulumi.Bool(true),
FullBackupFrequency: pulumi.String(sqlvirtualmachine.FullBackupFrequencyTypeDaily),
FullBackupStartTime: pulumi.Int(6),
FullBackupWindowHours: pulumi.Int(11),
LogBackupFrequency: pulumi.Int(10),
Password: pulumi.String("<Password>"),
RetentionPeriod: pulumi.Int(17),
StorageAccessKey: pulumi.String("<primary storage access key>"),
StorageAccountUrl: pulumi.String("https://teststorage.blob.core.windows.net/"),
StorageContainerName: pulumi.String("testcontainer"),
},
AutoPatchingSettings: &sqlvirtualmachine.AutoPatchingSettingsArgs{
DayOfWeek: sqlvirtualmachine.DayOfWeekSunday,
Enable: pulumi.Bool(true),
MaintenanceWindowDuration: pulumi.Int(60),
MaintenanceWindowStartingHour: pulumi.Int(2),
},
EnableAutomaticUpgrade: pulumi.Bool(true),
KeyVaultCredentialSettings: &sqlvirtualmachine.KeyVaultCredentialSettingsArgs{
Enable: pulumi.Bool(false),
},
LeastPrivilegeMode: pulumi.String(sqlvirtualmachine.LeastPrivilegeModeEnabled),
Location: pulumi.String("northeurope"),
ResourceGroupName: pulumi.String("testrg"),
ServerConfigurationsManagementSettings: &sqlvirtualmachine.ServerConfigurationsManagementSettingsArgs{
AdditionalFeaturesServerConfigurations: &sqlvirtualmachine.AdditionalFeaturesServerConfigurationsArgs{
IsRServicesEnabled: pulumi.Bool(false),
},
AzureAdAuthenticationSettings: &sqlvirtualmachine.AADAuthenticationSettingsArgs{
ClientId: pulumi.String("11111111-2222-3333-4444-555555555555"),
},
SqlConnectivityUpdateSettings: &sqlvirtualmachine.SqlConnectivityUpdateSettingsArgs{
ConnectivityType: pulumi.String(sqlvirtualmachine.ConnectivityTypePRIVATE),
Port: pulumi.Int(1433),
SqlAuthUpdatePassword: pulumi.String("<password>"),
SqlAuthUpdateUserName: pulumi.String("sqllogin"),
},
SqlInstanceSettings: &sqlvirtualmachine.SQLInstanceSettingsArgs{
Collation: pulumi.String("SQL_Latin1_General_CP1_CI_AS"),
IsIfiEnabled: pulumi.Bool(true),
IsLpimEnabled: pulumi.Bool(true),
IsOptimizeForAdHocWorkloadsEnabled: pulumi.Bool(true),
MaxDop: pulumi.Int(8),
MaxServerMemoryMB: pulumi.Int(128),
MinServerMemoryMB: pulumi.Int(0),
},
SqlStorageUpdateSettings: &sqlvirtualmachine.SqlStorageUpdateSettingsArgs{
DiskConfigurationType: pulumi.String(sqlvirtualmachine.DiskConfigurationTypeNEW),
DiskCount: pulumi.Int(1),
StartingDeviceId: pulumi.Int(2),
},
SqlWorkloadTypeUpdateSettings: &sqlvirtualmachine.SqlWorkloadTypeUpdateSettingsArgs{
SqlWorkloadType: pulumi.String(sqlvirtualmachine.SqlWorkloadTypeOLTP),
},
},
SqlImageSku: pulumi.String(sqlvirtualmachine.SqlImageSkuEnterprise),
SqlServerLicenseType: pulumi.String(sqlvirtualmachine.SqlServerLicenseTypePAYG),
SqlVirtualMachineName: pulumi.String("testvm"),
StorageConfigurationSettings: &sqlvirtualmachine.StorageConfigurationSettingsArgs{
DiskConfigurationType: pulumi.String(sqlvirtualmachine.DiskConfigurationTypeNEW),
EnableStorageConfigBlade: pulumi.Bool(true),
SqlDataSettings: &sqlvirtualmachine.SQLStorageSettingsArgs{
DefaultFilePath: pulumi.String("F:\\folderpath\\"),
Luns: pulumi.IntArray{
pulumi.Int(0),
},
UseStoragePool: pulumi.Bool(false),
},
SqlLogSettings: &sqlvirtualmachine.SQLStorageSettingsArgs{
DefaultFilePath: pulumi.String("G:\\folderpath\\"),
Luns: pulumi.IntArray{
pulumi.Int(1),
},
UseStoragePool: pulumi.Bool(false),
},
SqlSystemDbOnDataDisk: pulumi.Bool(true),
SqlTempDbSettings: &sqlvirtualmachine.SQLTempDbSettingsArgs{
DataFileCount: pulumi.Int(8),
DataFileSize: pulumi.Int(256),
DataGrowth: pulumi.Int(512),
DefaultFilePath: pulumi.String("D:\\TEMP"),
LogFileSize: pulumi.Int(256),
LogGrowth: pulumi.Int(512),
Luns: pulumi.IntArray{
pulumi.Int(2),
},
UseStoragePool: pulumi.Bool(false),
},
StorageWorkloadType: pulumi.String(sqlvirtualmachine.StorageWorkloadTypeOLTP),
},
VirtualMachineResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm"),
})
if err != nil {
return err
}
return nil
})
}
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.AADAuthenticationSettingsArgs;
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 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()
.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())
.enableAutomaticUpgrade(true)
.keyVaultCredentialSettings(KeyVaultCredentialSettingsArgs.builder()
.enable(false)
.build())
.leastPrivilegeMode("Enabled")
.location("northeurope")
.resourceGroupName("testrg")
.serverConfigurationsManagementSettings(ServerConfigurationsManagementSettingsArgs.builder()
.additionalFeaturesServerConfigurations(AdditionalFeaturesServerConfigurationsArgs.builder()
.isRServicesEnabled(false)
.build())
.azureAdAuthenticationSettings(AADAuthenticationSettingsArgs.builder()
.clientId("11111111-2222-3333-4444-555555555555")
.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")
.sqlServerLicenseType("PAYG")
.sqlVirtualMachineName("testvm")
.storageConfigurationSettings(StorageConfigurationSettingsArgs.builder()
.diskConfigurationType("NEW")
.enableStorageConfigBlade(true)
.sqlDataSettings(SQLStorageSettingsArgs.builder()
.defaultFilePath("F:\\folderpath\\")
.luns(0)
.useStoragePool(false)
.build())
.sqlLogSettings(SQLStorageSettingsArgs.builder()
.defaultFilePath("G:\\folderpath\\")
.luns(1)
.useStoragePool(false)
.build())
.sqlSystemDbOnDataDisk(true)
.sqlTempDbSettings(SQLTempDbSettingsArgs.builder()
.dataFileCount(8)
.dataFileSize(256)
.dataGrowth(512)
.defaultFilePath("D:\\TEMP")
.logFileSize(256)
.logGrowth(512)
.luns(2)
.useStoragePool(false)
.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 min parameters.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var sqlVirtualMachine = new AzureNative.SqlVirtualMachine.SqlVirtualMachine("sqlVirtualMachine", new()
{
Location = "northeurope",
ResourceGroupName = "testrg",
SqlVirtualMachineName = "testvm",
VirtualMachineResourceId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm",
});
});
package main
import (
sqlvirtualmachine "github.com/pulumi/pulumi-azure-native-sdk/sqlvirtualmachine/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sqlvirtualmachine.NewSqlVirtualMachine(ctx, "sqlVirtualMachine", &sqlvirtualmachine.SqlVirtualMachineArgs{
Location: pulumi.String("northeurope"),
ResourceGroupName: pulumi.String("testrg"),
SqlVirtualMachineName: pulumi.String("testvm"),
VirtualMachineResourceId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm"),
})
if err != nil {
return err
}
return nil
})
}
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.

$ pulumi import azure-native:sqlvirtualmachine:SqlVirtualMachine testvm /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/{sqlVirtualMachineName}

Constructors

Link copied to clipboard
constructor(assessmentSettings: Output<AssessmentSettingsArgs>? = null, autoBackupSettings: Output<AutoBackupSettingsArgs>? = null, autoPatchingSettings: Output<AutoPatchingSettingsArgs>? = null, enableAutomaticUpgrade: Output<Boolean>? = null, identity: Output<ResourceIdentityArgs>? = null, keyVaultCredentialSettings: Output<KeyVaultCredentialSettingsArgs>? = null, leastPrivilegeMode: Output<Either<String, LeastPrivilegeMode>>? = null, location: Output<String>? = null, resourceGroupName: Output<String>? = null, serverConfigurationsManagementSettings: Output<ServerConfigurationsManagementSettingsArgs>? = null, sqlImageOffer: Output<String>? = null, sqlImageSku: Output<Either<String, SqlImageSku>>? = null, sqlManagement: Output<Either<String, SqlManagementMode>>? = null, sqlServerLicenseType: Output<Either<String, SqlServerLicenseType>>? = null, sqlVirtualMachineGroupResourceId: Output<String>? = null, sqlVirtualMachineName: Output<String>? = null, storageConfigurationSettings: Output<StorageConfigurationSettingsArgs>? = null, tags: Output<Map<String, String>>? = null, virtualMachineIdentitySettings: Output<VirtualMachineIdentityArgs>? = null, virtualMachineResourceId: Output<String>? = null, wsfcDomainCredentials: Output<WsfcDomainCredentialsArgs>? = null, wsfcStaticIp: Output<String>? = null)

Properties

Link copied to clipboard

SQL best practices Assessment Settings.

Link copied to clipboard

Auto backup settings for SQL Server.

Link copied to clipboard

Auto patching settings for applying critical security updates to SQL virtual machine.

Link copied to clipboard
val enableAutomaticUpgrade: Output<Boolean>? = null

Enable automatic upgrade of Sql IaaS extension Agent.

Link copied to clipboard
val identity: Output<ResourceIdentityArgs>? = null

DO NOT USE. This value will be deprecated. Azure Active Directory identity of the server.

Link copied to clipboard

Key vault credential settings.

Link copied to clipboard
val leastPrivilegeMode: Output<Either<String, LeastPrivilegeMode>>? = null

SQL IaaS Agent least privilege mode.

Link copied to clipboard
val location: Output<String>? = null

Resource location.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.

Link copied to clipboard

SQL Server configuration management settings.

Link copied to clipboard
val sqlImageOffer: Output<String>? = null

SQL image offer. Examples include SQL2016-WS2016, SQL2017-WS2016.

Link copied to clipboard
val sqlImageSku: Output<Either<String, SqlImageSku>>? = null

SQL Server edition type.

Link copied to clipboard
val sqlManagement: Output<Either<String, SqlManagementMode>>? = null

SQL Server Management type. NOTE: This parameter is not used anymore. API will automatically detect the Sql Management, refrain from using it.

Link copied to clipboard
val sqlServerLicenseType: Output<Either<String, SqlServerLicenseType>>? = null

SQL Server license type.

Link copied to clipboard

ARM resource id of the SQL virtual machine group this SQL virtual machine is or will be part of.

Link copied to clipboard
val sqlVirtualMachineName: Output<String>? = null

Name of the SQL virtual machine.

Link copied to clipboard

Storage Configuration Settings.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Resource tags.

Link copied to clipboard

Virtual Machine Identity details used for Sql IaaS extension configurations.

Link copied to clipboard
val virtualMachineResourceId: Output<String>? = null

ARM Resource id of underlying virtual machine created from SQL marketplace image.

Link copied to clipboard

Domain credentials for setting up Windows Server Failover Cluster for SQL availability group.

Link copied to clipboard
val wsfcStaticIp: Output<String>? = null

Domain credentials for setting up Windows Server Failover Cluster for SQL availability group.

Functions

Link copied to clipboard
open override fun toJava(): SqlVirtualMachineArgs