1. Packages
  2. Azure Classic
  3. API Docs
  4. mssql
  5. VirtualMachine

We recommend using Azure Native.

Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi

azure.mssql.VirtualMachine

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi

    Manages a Microsoft SQL Virtual Machine

    Example Usage

    This example provisions a brief Managed Microsoft SQL Virtual Machine.

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const example = azure.compute.getVirtualMachine({
        name: "example-vm",
        resourceGroupName: "example-resources",
    });
    const exampleVirtualMachine = new azure.mssql.VirtualMachine("example", {
        virtualMachineId: example.then(example => example.id),
        sqlLicenseType: "PAYG",
        rServicesEnabled: true,
        sqlConnectivityPort: 1433,
        sqlConnectivityType: "PRIVATE",
        sqlConnectivityUpdatePassword: "Password1234!",
        sqlConnectivityUpdateUsername: "sqllogin",
        autoPatching: {
            dayOfWeek: "Sunday",
            maintenanceWindowDurationInMinutes: 60,
            maintenanceWindowStartingHour: 2,
        },
    });
    
    import pulumi
    import pulumi_azure as azure
    
    example = azure.compute.get_virtual_machine(name="example-vm",
        resource_group_name="example-resources")
    example_virtual_machine = azure.mssql.VirtualMachine("example",
        virtual_machine_id=example.id,
        sql_license_type="PAYG",
        r_services_enabled=True,
        sql_connectivity_port=1433,
        sql_connectivity_type="PRIVATE",
        sql_connectivity_update_password="Password1234!",
        sql_connectivity_update_username="sqllogin",
        auto_patching=azure.mssql.VirtualMachineAutoPatchingArgs(
            day_of_week="Sunday",
            maintenance_window_duration_in_minutes=60,
            maintenance_window_starting_hour=2,
        ))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/mssql"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := compute.LookupVirtualMachine(ctx, &compute.LookupVirtualMachineArgs{
    			Name:              "example-vm",
    			ResourceGroupName: "example-resources",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = mssql.NewVirtualMachine(ctx, "example", &mssql.VirtualMachineArgs{
    			VirtualMachineId:              pulumi.String(example.Id),
    			SqlLicenseType:                pulumi.String("PAYG"),
    			RServicesEnabled:              pulumi.Bool(true),
    			SqlConnectivityPort:           pulumi.Int(1433),
    			SqlConnectivityType:           pulumi.String("PRIVATE"),
    			SqlConnectivityUpdatePassword: pulumi.String("Password1234!"),
    			SqlConnectivityUpdateUsername: pulumi.String("sqllogin"),
    			AutoPatching: &mssql.VirtualMachineAutoPatchingArgs{
    				DayOfWeek:                          pulumi.String("Sunday"),
    				MaintenanceWindowDurationInMinutes: pulumi.Int(60),
    				MaintenanceWindowStartingHour:      pulumi.Int(2),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Azure.Compute.GetVirtualMachine.Invoke(new()
        {
            Name = "example-vm",
            ResourceGroupName = "example-resources",
        });
    
        var exampleVirtualMachine = new Azure.MSSql.VirtualMachine("example", new()
        {
            VirtualMachineId = example.Apply(getVirtualMachineResult => getVirtualMachineResult.Id),
            SqlLicenseType = "PAYG",
            RServicesEnabled = true,
            SqlConnectivityPort = 1433,
            SqlConnectivityType = "PRIVATE",
            SqlConnectivityUpdatePassword = "Password1234!",
            SqlConnectivityUpdateUsername = "sqllogin",
            AutoPatching = new Azure.MSSql.Inputs.VirtualMachineAutoPatchingArgs
            {
                DayOfWeek = "Sunday",
                MaintenanceWindowDurationInMinutes = 60,
                MaintenanceWindowStartingHour = 2,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azure.compute.ComputeFunctions;
    import com.pulumi.azure.compute.inputs.GetVirtualMachineArgs;
    import com.pulumi.azure.mssql.VirtualMachine;
    import com.pulumi.azure.mssql.VirtualMachineArgs;
    import com.pulumi.azure.mssql.inputs.VirtualMachineAutoPatchingArgs;
    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) {
            final var example = ComputeFunctions.getVirtualMachine(GetVirtualMachineArgs.builder()
                .name("example-vm")
                .resourceGroupName("example-resources")
                .build());
    
            var exampleVirtualMachine = new VirtualMachine("exampleVirtualMachine", VirtualMachineArgs.builder()
                .virtualMachineId(example.applyValue(getVirtualMachineResult -> getVirtualMachineResult.id()))
                .sqlLicenseType("PAYG")
                .rServicesEnabled(true)
                .sqlConnectivityPort(1433)
                .sqlConnectivityType("PRIVATE")
                .sqlConnectivityUpdatePassword("Password1234!")
                .sqlConnectivityUpdateUsername("sqllogin")
                .autoPatching(VirtualMachineAutoPatchingArgs.builder()
                    .dayOfWeek("Sunday")
                    .maintenanceWindowDurationInMinutes(60)
                    .maintenanceWindowStartingHour(2)
                    .build())
                .build());
    
        }
    }
    
    resources:
      exampleVirtualMachine:
        type: azure:mssql:VirtualMachine
        name: example
        properties:
          virtualMachineId: ${example.id}
          sqlLicenseType: PAYG
          rServicesEnabled: true
          sqlConnectivityPort: 1433
          sqlConnectivityType: PRIVATE
          sqlConnectivityUpdatePassword: Password1234!
          sqlConnectivityUpdateUsername: sqllogin
          autoPatching:
            dayOfWeek: Sunday
            maintenanceWindowDurationInMinutes: 60
            maintenanceWindowStartingHour: 2
    variables:
      example:
        fn::invoke:
          Function: azure:compute:getVirtualMachine
          Arguments:
            name: example-vm
            resourceGroupName: example-resources
    

    Create VirtualMachine Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new VirtualMachine(name: string, args: VirtualMachineArgs, opts?: CustomResourceOptions);
    @overload
    def VirtualMachine(resource_name: str,
                       args: VirtualMachineArgs,
                       opts: Optional[ResourceOptions] = None)
    
    @overload
    def VirtualMachine(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       virtual_machine_id: Optional[str] = None,
                       sql_connectivity_update_username: Optional[str] = None,
                       sql_instance: Optional[VirtualMachineSqlInstanceArgs] = None,
                       key_vault_credential: Optional[VirtualMachineKeyVaultCredentialArgs] = None,
                       r_services_enabled: Optional[bool] = None,
                       sql_connectivity_port: Optional[int] = None,
                       sql_connectivity_type: Optional[str] = None,
                       auto_patching: Optional[VirtualMachineAutoPatchingArgs] = None,
                       assessment: Optional[VirtualMachineAssessmentArgs] = None,
                       sql_connectivity_update_password: Optional[str] = None,
                       sql_license_type: Optional[str] = None,
                       sql_virtual_machine_group_id: Optional[str] = None,
                       storage_configuration: Optional[VirtualMachineStorageConfigurationArgs] = None,
                       tags: Optional[Mapping[str, str]] = None,
                       auto_backup: Optional[VirtualMachineAutoBackupArgs] = None,
                       wsfc_domain_credential: Optional[VirtualMachineWsfcDomainCredentialArgs] = None)
    func NewVirtualMachine(ctx *Context, name string, args VirtualMachineArgs, opts ...ResourceOption) (*VirtualMachine, error)
    public VirtualMachine(string name, VirtualMachineArgs args, CustomResourceOptions? opts = null)
    public VirtualMachine(String name, VirtualMachineArgs args)
    public VirtualMachine(String name, VirtualMachineArgs args, CustomResourceOptions options)
    
    type: azure:mssql:VirtualMachine
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VirtualMachineArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var azureVirtualMachineResource = new Azure.MSSql.VirtualMachine("azureVirtualMachineResource", new()
    {
        VirtualMachineId = "string",
        SqlConnectivityUpdateUsername = "string",
        SqlInstance = new Azure.MSSql.Inputs.VirtualMachineSqlInstanceArgs
        {
            AdhocWorkloadsOptimizationEnabled = false,
            Collation = "string",
            InstantFileInitializationEnabled = false,
            LockPagesInMemoryEnabled = false,
            MaxDop = 0,
            MaxServerMemoryMb = 0,
            MinServerMemoryMb = 0,
        },
        KeyVaultCredential = new Azure.MSSql.Inputs.VirtualMachineKeyVaultCredentialArgs
        {
            KeyVaultUrl = "string",
            Name = "string",
            ServicePrincipalName = "string",
            ServicePrincipalSecret = "string",
        },
        RServicesEnabled = false,
        SqlConnectivityPort = 0,
        SqlConnectivityType = "string",
        AutoPatching = new Azure.MSSql.Inputs.VirtualMachineAutoPatchingArgs
        {
            DayOfWeek = "string",
            MaintenanceWindowDurationInMinutes = 0,
            MaintenanceWindowStartingHour = 0,
        },
        Assessment = new Azure.MSSql.Inputs.VirtualMachineAssessmentArgs
        {
            Enabled = false,
            RunImmediately = false,
            Schedule = new Azure.MSSql.Inputs.VirtualMachineAssessmentScheduleArgs
            {
                DayOfWeek = "string",
                StartTime = "string",
                MonthlyOccurrence = 0,
                WeeklyInterval = 0,
            },
        },
        SqlConnectivityUpdatePassword = "string",
        SqlLicenseType = "string",
        SqlVirtualMachineGroupId = "string",
        StorageConfiguration = new Azure.MSSql.Inputs.VirtualMachineStorageConfigurationArgs
        {
            DiskType = "string",
            StorageWorkloadType = "string",
            DataSettings = new Azure.MSSql.Inputs.VirtualMachineStorageConfigurationDataSettingsArgs
            {
                DefaultFilePath = "string",
                Luns = new[]
                {
                    0,
                },
            },
            LogSettings = new Azure.MSSql.Inputs.VirtualMachineStorageConfigurationLogSettingsArgs
            {
                DefaultFilePath = "string",
                Luns = new[]
                {
                    0,
                },
            },
            SystemDbOnDataDiskEnabled = false,
            TempDbSettings = new Azure.MSSql.Inputs.VirtualMachineStorageConfigurationTempDbSettingsArgs
            {
                DefaultFilePath = "string",
                Luns = new[]
                {
                    0,
                },
                DataFileCount = 0,
                DataFileGrowthInMb = 0,
                DataFileSizeMb = 0,
                LogFileGrowthMb = 0,
                LogFileSizeMb = 0,
            },
        },
        Tags = 
        {
            { "string", "string" },
        },
        AutoBackup = new Azure.MSSql.Inputs.VirtualMachineAutoBackupArgs
        {
            RetentionPeriodInDays = 0,
            StorageAccountAccessKey = "string",
            StorageBlobEndpoint = "string",
            EncryptionEnabled = false,
            EncryptionPassword = "string",
            ManualSchedule = new Azure.MSSql.Inputs.VirtualMachineAutoBackupManualScheduleArgs
            {
                FullBackupFrequency = "string",
                FullBackupStartHour = 0,
                FullBackupWindowInHours = 0,
                LogBackupFrequencyInMinutes = 0,
                DaysOfWeeks = new[]
                {
                    "string",
                },
            },
            SystemDatabasesBackupEnabled = false,
        },
        WsfcDomainCredential = new Azure.MSSql.Inputs.VirtualMachineWsfcDomainCredentialArgs
        {
            ClusterBootstrapAccountPassword = "string",
            ClusterOperatorAccountPassword = "string",
            SqlServiceAccountPassword = "string",
        },
    });
    
    example, err := mssql.NewVirtualMachine(ctx, "azureVirtualMachineResource", &mssql.VirtualMachineArgs{
    	VirtualMachineId:              pulumi.String("string"),
    	SqlConnectivityUpdateUsername: pulumi.String("string"),
    	SqlInstance: &mssql.VirtualMachineSqlInstanceArgs{
    		AdhocWorkloadsOptimizationEnabled: pulumi.Bool(false),
    		Collation:                         pulumi.String("string"),
    		InstantFileInitializationEnabled:  pulumi.Bool(false),
    		LockPagesInMemoryEnabled:          pulumi.Bool(false),
    		MaxDop:                            pulumi.Int(0),
    		MaxServerMemoryMb:                 pulumi.Int(0),
    		MinServerMemoryMb:                 pulumi.Int(0),
    	},
    	KeyVaultCredential: &mssql.VirtualMachineKeyVaultCredentialArgs{
    		KeyVaultUrl:            pulumi.String("string"),
    		Name:                   pulumi.String("string"),
    		ServicePrincipalName:   pulumi.String("string"),
    		ServicePrincipalSecret: pulumi.String("string"),
    	},
    	RServicesEnabled:    pulumi.Bool(false),
    	SqlConnectivityPort: pulumi.Int(0),
    	SqlConnectivityType: pulumi.String("string"),
    	AutoPatching: &mssql.VirtualMachineAutoPatchingArgs{
    		DayOfWeek:                          pulumi.String("string"),
    		MaintenanceWindowDurationInMinutes: pulumi.Int(0),
    		MaintenanceWindowStartingHour:      pulumi.Int(0),
    	},
    	Assessment: &mssql.VirtualMachineAssessmentArgs{
    		Enabled:        pulumi.Bool(false),
    		RunImmediately: pulumi.Bool(false),
    		Schedule: &mssql.VirtualMachineAssessmentScheduleArgs{
    			DayOfWeek:         pulumi.String("string"),
    			StartTime:         pulumi.String("string"),
    			MonthlyOccurrence: pulumi.Int(0),
    			WeeklyInterval:    pulumi.Int(0),
    		},
    	},
    	SqlConnectivityUpdatePassword: pulumi.String("string"),
    	SqlLicenseType:                pulumi.String("string"),
    	SqlVirtualMachineGroupId:      pulumi.String("string"),
    	StorageConfiguration: &mssql.VirtualMachineStorageConfigurationArgs{
    		DiskType:            pulumi.String("string"),
    		StorageWorkloadType: pulumi.String("string"),
    		DataSettings: &mssql.VirtualMachineStorageConfigurationDataSettingsArgs{
    			DefaultFilePath: pulumi.String("string"),
    			Luns: pulumi.IntArray{
    				pulumi.Int(0),
    			},
    		},
    		LogSettings: &mssql.VirtualMachineStorageConfigurationLogSettingsArgs{
    			DefaultFilePath: pulumi.String("string"),
    			Luns: pulumi.IntArray{
    				pulumi.Int(0),
    			},
    		},
    		SystemDbOnDataDiskEnabled: pulumi.Bool(false),
    		TempDbSettings: &mssql.VirtualMachineStorageConfigurationTempDbSettingsArgs{
    			DefaultFilePath: pulumi.String("string"),
    			Luns: pulumi.IntArray{
    				pulumi.Int(0),
    			},
    			DataFileCount:      pulumi.Int(0),
    			DataFileGrowthInMb: pulumi.Int(0),
    			DataFileSizeMb:     pulumi.Int(0),
    			LogFileGrowthMb:    pulumi.Int(0),
    			LogFileSizeMb:      pulumi.Int(0),
    		},
    	},
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	AutoBackup: &mssql.VirtualMachineAutoBackupArgs{
    		RetentionPeriodInDays:   pulumi.Int(0),
    		StorageAccountAccessKey: pulumi.String("string"),
    		StorageBlobEndpoint:     pulumi.String("string"),
    		EncryptionEnabled:       pulumi.Bool(false),
    		EncryptionPassword:      pulumi.String("string"),
    		ManualSchedule: &mssql.VirtualMachineAutoBackupManualScheduleArgs{
    			FullBackupFrequency:         pulumi.String("string"),
    			FullBackupStartHour:         pulumi.Int(0),
    			FullBackupWindowInHours:     pulumi.Int(0),
    			LogBackupFrequencyInMinutes: pulumi.Int(0),
    			DaysOfWeeks: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    		SystemDatabasesBackupEnabled: pulumi.Bool(false),
    	},
    	WsfcDomainCredential: &mssql.VirtualMachineWsfcDomainCredentialArgs{
    		ClusterBootstrapAccountPassword: pulumi.String("string"),
    		ClusterOperatorAccountPassword:  pulumi.String("string"),
    		SqlServiceAccountPassword:       pulumi.String("string"),
    	},
    })
    
    var azureVirtualMachineResource = new VirtualMachine("azureVirtualMachineResource", VirtualMachineArgs.builder()
        .virtualMachineId("string")
        .sqlConnectivityUpdateUsername("string")
        .sqlInstance(VirtualMachineSqlInstanceArgs.builder()
            .adhocWorkloadsOptimizationEnabled(false)
            .collation("string")
            .instantFileInitializationEnabled(false)
            .lockPagesInMemoryEnabled(false)
            .maxDop(0)
            .maxServerMemoryMb(0)
            .minServerMemoryMb(0)
            .build())
        .keyVaultCredential(VirtualMachineKeyVaultCredentialArgs.builder()
            .keyVaultUrl("string")
            .name("string")
            .servicePrincipalName("string")
            .servicePrincipalSecret("string")
            .build())
        .rServicesEnabled(false)
        .sqlConnectivityPort(0)
        .sqlConnectivityType("string")
        .autoPatching(VirtualMachineAutoPatchingArgs.builder()
            .dayOfWeek("string")
            .maintenanceWindowDurationInMinutes(0)
            .maintenanceWindowStartingHour(0)
            .build())
        .assessment(VirtualMachineAssessmentArgs.builder()
            .enabled(false)
            .runImmediately(false)
            .schedule(VirtualMachineAssessmentScheduleArgs.builder()
                .dayOfWeek("string")
                .startTime("string")
                .monthlyOccurrence(0)
                .weeklyInterval(0)
                .build())
            .build())
        .sqlConnectivityUpdatePassword("string")
        .sqlLicenseType("string")
        .sqlVirtualMachineGroupId("string")
        .storageConfiguration(VirtualMachineStorageConfigurationArgs.builder()
            .diskType("string")
            .storageWorkloadType("string")
            .dataSettings(VirtualMachineStorageConfigurationDataSettingsArgs.builder()
                .defaultFilePath("string")
                .luns(0)
                .build())
            .logSettings(VirtualMachineStorageConfigurationLogSettingsArgs.builder()
                .defaultFilePath("string")
                .luns(0)
                .build())
            .systemDbOnDataDiskEnabled(false)
            .tempDbSettings(VirtualMachineStorageConfigurationTempDbSettingsArgs.builder()
                .defaultFilePath("string")
                .luns(0)
                .dataFileCount(0)
                .dataFileGrowthInMb(0)
                .dataFileSizeMb(0)
                .logFileGrowthMb(0)
                .logFileSizeMb(0)
                .build())
            .build())
        .tags(Map.of("string", "string"))
        .autoBackup(VirtualMachineAutoBackupArgs.builder()
            .retentionPeriodInDays(0)
            .storageAccountAccessKey("string")
            .storageBlobEndpoint("string")
            .encryptionEnabled(false)
            .encryptionPassword("string")
            .manualSchedule(VirtualMachineAutoBackupManualScheduleArgs.builder()
                .fullBackupFrequency("string")
                .fullBackupStartHour(0)
                .fullBackupWindowInHours(0)
                .logBackupFrequencyInMinutes(0)
                .daysOfWeeks("string")
                .build())
            .systemDatabasesBackupEnabled(false)
            .build())
        .wsfcDomainCredential(VirtualMachineWsfcDomainCredentialArgs.builder()
            .clusterBootstrapAccountPassword("string")
            .clusterOperatorAccountPassword("string")
            .sqlServiceAccountPassword("string")
            .build())
        .build());
    
    azure_virtual_machine_resource = azure.mssql.VirtualMachine("azureVirtualMachineResource",
        virtual_machine_id="string",
        sql_connectivity_update_username="string",
        sql_instance=azure.mssql.VirtualMachineSqlInstanceArgs(
            adhoc_workloads_optimization_enabled=False,
            collation="string",
            instant_file_initialization_enabled=False,
            lock_pages_in_memory_enabled=False,
            max_dop=0,
            max_server_memory_mb=0,
            min_server_memory_mb=0,
        ),
        key_vault_credential=azure.mssql.VirtualMachineKeyVaultCredentialArgs(
            key_vault_url="string",
            name="string",
            service_principal_name="string",
            service_principal_secret="string",
        ),
        r_services_enabled=False,
        sql_connectivity_port=0,
        sql_connectivity_type="string",
        auto_patching=azure.mssql.VirtualMachineAutoPatchingArgs(
            day_of_week="string",
            maintenance_window_duration_in_minutes=0,
            maintenance_window_starting_hour=0,
        ),
        assessment=azure.mssql.VirtualMachineAssessmentArgs(
            enabled=False,
            run_immediately=False,
            schedule=azure.mssql.VirtualMachineAssessmentScheduleArgs(
                day_of_week="string",
                start_time="string",
                monthly_occurrence=0,
                weekly_interval=0,
            ),
        ),
        sql_connectivity_update_password="string",
        sql_license_type="string",
        sql_virtual_machine_group_id="string",
        storage_configuration=azure.mssql.VirtualMachineStorageConfigurationArgs(
            disk_type="string",
            storage_workload_type="string",
            data_settings=azure.mssql.VirtualMachineStorageConfigurationDataSettingsArgs(
                default_file_path="string",
                luns=[0],
            ),
            log_settings=azure.mssql.VirtualMachineStorageConfigurationLogSettingsArgs(
                default_file_path="string",
                luns=[0],
            ),
            system_db_on_data_disk_enabled=False,
            temp_db_settings=azure.mssql.VirtualMachineStorageConfigurationTempDbSettingsArgs(
                default_file_path="string",
                luns=[0],
                data_file_count=0,
                data_file_growth_in_mb=0,
                data_file_size_mb=0,
                log_file_growth_mb=0,
                log_file_size_mb=0,
            ),
        ),
        tags={
            "string": "string",
        },
        auto_backup=azure.mssql.VirtualMachineAutoBackupArgs(
            retention_period_in_days=0,
            storage_account_access_key="string",
            storage_blob_endpoint="string",
            encryption_enabled=False,
            encryption_password="string",
            manual_schedule=azure.mssql.VirtualMachineAutoBackupManualScheduleArgs(
                full_backup_frequency="string",
                full_backup_start_hour=0,
                full_backup_window_in_hours=0,
                log_backup_frequency_in_minutes=0,
                days_of_weeks=["string"],
            ),
            system_databases_backup_enabled=False,
        ),
        wsfc_domain_credential=azure.mssql.VirtualMachineWsfcDomainCredentialArgs(
            cluster_bootstrap_account_password="string",
            cluster_operator_account_password="string",
            sql_service_account_password="string",
        ))
    
    const azureVirtualMachineResource = new azure.mssql.VirtualMachine("azureVirtualMachineResource", {
        virtualMachineId: "string",
        sqlConnectivityUpdateUsername: "string",
        sqlInstance: {
            adhocWorkloadsOptimizationEnabled: false,
            collation: "string",
            instantFileInitializationEnabled: false,
            lockPagesInMemoryEnabled: false,
            maxDop: 0,
            maxServerMemoryMb: 0,
            minServerMemoryMb: 0,
        },
        keyVaultCredential: {
            keyVaultUrl: "string",
            name: "string",
            servicePrincipalName: "string",
            servicePrincipalSecret: "string",
        },
        rServicesEnabled: false,
        sqlConnectivityPort: 0,
        sqlConnectivityType: "string",
        autoPatching: {
            dayOfWeek: "string",
            maintenanceWindowDurationInMinutes: 0,
            maintenanceWindowStartingHour: 0,
        },
        assessment: {
            enabled: false,
            runImmediately: false,
            schedule: {
                dayOfWeek: "string",
                startTime: "string",
                monthlyOccurrence: 0,
                weeklyInterval: 0,
            },
        },
        sqlConnectivityUpdatePassword: "string",
        sqlLicenseType: "string",
        sqlVirtualMachineGroupId: "string",
        storageConfiguration: {
            diskType: "string",
            storageWorkloadType: "string",
            dataSettings: {
                defaultFilePath: "string",
                luns: [0],
            },
            logSettings: {
                defaultFilePath: "string",
                luns: [0],
            },
            systemDbOnDataDiskEnabled: false,
            tempDbSettings: {
                defaultFilePath: "string",
                luns: [0],
                dataFileCount: 0,
                dataFileGrowthInMb: 0,
                dataFileSizeMb: 0,
                logFileGrowthMb: 0,
                logFileSizeMb: 0,
            },
        },
        tags: {
            string: "string",
        },
        autoBackup: {
            retentionPeriodInDays: 0,
            storageAccountAccessKey: "string",
            storageBlobEndpoint: "string",
            encryptionEnabled: false,
            encryptionPassword: "string",
            manualSchedule: {
                fullBackupFrequency: "string",
                fullBackupStartHour: 0,
                fullBackupWindowInHours: 0,
                logBackupFrequencyInMinutes: 0,
                daysOfWeeks: ["string"],
            },
            systemDatabasesBackupEnabled: false,
        },
        wsfcDomainCredential: {
            clusterBootstrapAccountPassword: "string",
            clusterOperatorAccountPassword: "string",
            sqlServiceAccountPassword: "string",
        },
    });
    
    type: azure:mssql:VirtualMachine
    properties:
        assessment:
            enabled: false
            runImmediately: false
            schedule:
                dayOfWeek: string
                monthlyOccurrence: 0
                startTime: string
                weeklyInterval: 0
        autoBackup:
            encryptionEnabled: false
            encryptionPassword: string
            manualSchedule:
                daysOfWeeks:
                    - string
                fullBackupFrequency: string
                fullBackupStartHour: 0
                fullBackupWindowInHours: 0
                logBackupFrequencyInMinutes: 0
            retentionPeriodInDays: 0
            storageAccountAccessKey: string
            storageBlobEndpoint: string
            systemDatabasesBackupEnabled: false
        autoPatching:
            dayOfWeek: string
            maintenanceWindowDurationInMinutes: 0
            maintenanceWindowStartingHour: 0
        keyVaultCredential:
            keyVaultUrl: string
            name: string
            servicePrincipalName: string
            servicePrincipalSecret: string
        rServicesEnabled: false
        sqlConnectivityPort: 0
        sqlConnectivityType: string
        sqlConnectivityUpdatePassword: string
        sqlConnectivityUpdateUsername: string
        sqlInstance:
            adhocWorkloadsOptimizationEnabled: false
            collation: string
            instantFileInitializationEnabled: false
            lockPagesInMemoryEnabled: false
            maxDop: 0
            maxServerMemoryMb: 0
            minServerMemoryMb: 0
        sqlLicenseType: string
        sqlVirtualMachineGroupId: string
        storageConfiguration:
            dataSettings:
                defaultFilePath: string
                luns:
                    - 0
            diskType: string
            logSettings:
                defaultFilePath: string
                luns:
                    - 0
            storageWorkloadType: string
            systemDbOnDataDiskEnabled: false
            tempDbSettings:
                dataFileCount: 0
                dataFileGrowthInMb: 0
                dataFileSizeMb: 0
                defaultFilePath: string
                logFileGrowthMb: 0
                logFileSizeMb: 0
                luns:
                    - 0
        tags:
            string: string
        virtualMachineId: string
        wsfcDomainCredential:
            clusterBootstrapAccountPassword: string
            clusterOperatorAccountPassword: string
            sqlServiceAccountPassword: string
    

    VirtualMachine Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The VirtualMachine resource accepts the following input properties:

    VirtualMachineId string
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    Assessment VirtualMachineAssessment
    An assessment block as defined below.
    AutoBackup VirtualMachineAutoBackup
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    AutoPatching VirtualMachineAutoPatching
    An auto_patching block as defined below.
    KeyVaultCredential VirtualMachineKeyVaultCredential
    An key_vault_credential block as defined below.
    RServicesEnabled bool
    Should R Services be enabled?
    SqlConnectivityPort int
    The SQL Server port. Defaults to 1433.
    SqlConnectivityType string
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    SqlConnectivityUpdatePassword string
    The SQL Server sysadmin login password.
    SqlConnectivityUpdateUsername string
    The SQL Server sysadmin login to create.
    SqlInstance VirtualMachineSqlInstance
    A sql_instance block as defined below.
    SqlLicenseType string
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    SqlVirtualMachineGroupId string
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    StorageConfiguration VirtualMachineStorageConfiguration
    An storage_configuration block as defined below.
    Tags Dictionary<string, string>
    A mapping of tags to assign to the resource.
    WsfcDomainCredential VirtualMachineWsfcDomainCredential
    A wsfc_domain_credential block as defined below
    VirtualMachineId string
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    Assessment VirtualMachineAssessmentArgs
    An assessment block as defined below.
    AutoBackup VirtualMachineAutoBackupArgs
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    AutoPatching VirtualMachineAutoPatchingArgs
    An auto_patching block as defined below.
    KeyVaultCredential VirtualMachineKeyVaultCredentialArgs
    An key_vault_credential block as defined below.
    RServicesEnabled bool
    Should R Services be enabled?
    SqlConnectivityPort int
    The SQL Server port. Defaults to 1433.
    SqlConnectivityType string
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    SqlConnectivityUpdatePassword string
    The SQL Server sysadmin login password.
    SqlConnectivityUpdateUsername string
    The SQL Server sysadmin login to create.
    SqlInstance VirtualMachineSqlInstanceArgs
    A sql_instance block as defined below.
    SqlLicenseType string
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    SqlVirtualMachineGroupId string
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    StorageConfiguration VirtualMachineStorageConfigurationArgs
    An storage_configuration block as defined below.
    Tags map[string]string
    A mapping of tags to assign to the resource.
    WsfcDomainCredential VirtualMachineWsfcDomainCredentialArgs
    A wsfc_domain_credential block as defined below
    virtualMachineId String
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    assessment VirtualMachineAssessment
    An assessment block as defined below.
    autoBackup VirtualMachineAutoBackup
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    autoPatching VirtualMachineAutoPatching
    An auto_patching block as defined below.
    keyVaultCredential VirtualMachineKeyVaultCredential
    An key_vault_credential block as defined below.
    rServicesEnabled Boolean
    Should R Services be enabled?
    sqlConnectivityPort Integer
    The SQL Server port. Defaults to 1433.
    sqlConnectivityType String
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    sqlConnectivityUpdatePassword String
    The SQL Server sysadmin login password.
    sqlConnectivityUpdateUsername String
    The SQL Server sysadmin login to create.
    sqlInstance VirtualMachineSqlInstance
    A sql_instance block as defined below.
    sqlLicenseType String
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    sqlVirtualMachineGroupId String
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    storageConfiguration VirtualMachineStorageConfiguration
    An storage_configuration block as defined below.
    tags Map<String,String>
    A mapping of tags to assign to the resource.
    wsfcDomainCredential VirtualMachineWsfcDomainCredential
    A wsfc_domain_credential block as defined below
    virtualMachineId string
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    assessment VirtualMachineAssessment
    An assessment block as defined below.
    autoBackup VirtualMachineAutoBackup
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    autoPatching VirtualMachineAutoPatching
    An auto_patching block as defined below.
    keyVaultCredential VirtualMachineKeyVaultCredential
    An key_vault_credential block as defined below.
    rServicesEnabled boolean
    Should R Services be enabled?
    sqlConnectivityPort number
    The SQL Server port. Defaults to 1433.
    sqlConnectivityType string
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    sqlConnectivityUpdatePassword string
    The SQL Server sysadmin login password.
    sqlConnectivityUpdateUsername string
    The SQL Server sysadmin login to create.
    sqlInstance VirtualMachineSqlInstance
    A sql_instance block as defined below.
    sqlLicenseType string
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    sqlVirtualMachineGroupId string
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    storageConfiguration VirtualMachineStorageConfiguration
    An storage_configuration block as defined below.
    tags {[key: string]: string}
    A mapping of tags to assign to the resource.
    wsfcDomainCredential VirtualMachineWsfcDomainCredential
    A wsfc_domain_credential block as defined below
    virtual_machine_id str
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    assessment VirtualMachineAssessmentArgs
    An assessment block as defined below.
    auto_backup VirtualMachineAutoBackupArgs
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    auto_patching VirtualMachineAutoPatchingArgs
    An auto_patching block as defined below.
    key_vault_credential VirtualMachineKeyVaultCredentialArgs
    An key_vault_credential block as defined below.
    r_services_enabled bool
    Should R Services be enabled?
    sql_connectivity_port int
    The SQL Server port. Defaults to 1433.
    sql_connectivity_type str
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    sql_connectivity_update_password str
    The SQL Server sysadmin login password.
    sql_connectivity_update_username str
    The SQL Server sysadmin login to create.
    sql_instance VirtualMachineSqlInstanceArgs
    A sql_instance block as defined below.
    sql_license_type str
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    sql_virtual_machine_group_id str
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    storage_configuration VirtualMachineStorageConfigurationArgs
    An storage_configuration block as defined below.
    tags Mapping[str, str]
    A mapping of tags to assign to the resource.
    wsfc_domain_credential VirtualMachineWsfcDomainCredentialArgs
    A wsfc_domain_credential block as defined below
    virtualMachineId String
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    assessment Property Map
    An assessment block as defined below.
    autoBackup Property Map
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    autoPatching Property Map
    An auto_patching block as defined below.
    keyVaultCredential Property Map
    An key_vault_credential block as defined below.
    rServicesEnabled Boolean
    Should R Services be enabled?
    sqlConnectivityPort Number
    The SQL Server port. Defaults to 1433.
    sqlConnectivityType String
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    sqlConnectivityUpdatePassword String
    The SQL Server sysadmin login password.
    sqlConnectivityUpdateUsername String
    The SQL Server sysadmin login to create.
    sqlInstance Property Map
    A sql_instance block as defined below.
    sqlLicenseType String
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    sqlVirtualMachineGroupId String
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    storageConfiguration Property Map
    An storage_configuration block as defined below.
    tags Map<String>
    A mapping of tags to assign to the resource.
    wsfcDomainCredential Property Map
    A wsfc_domain_credential block as defined below

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VirtualMachine resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing VirtualMachine Resource

    Get an existing VirtualMachine resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: VirtualMachineState, opts?: CustomResourceOptions): VirtualMachine
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            assessment: Optional[VirtualMachineAssessmentArgs] = None,
            auto_backup: Optional[VirtualMachineAutoBackupArgs] = None,
            auto_patching: Optional[VirtualMachineAutoPatchingArgs] = None,
            key_vault_credential: Optional[VirtualMachineKeyVaultCredentialArgs] = None,
            r_services_enabled: Optional[bool] = None,
            sql_connectivity_port: Optional[int] = None,
            sql_connectivity_type: Optional[str] = None,
            sql_connectivity_update_password: Optional[str] = None,
            sql_connectivity_update_username: Optional[str] = None,
            sql_instance: Optional[VirtualMachineSqlInstanceArgs] = None,
            sql_license_type: Optional[str] = None,
            sql_virtual_machine_group_id: Optional[str] = None,
            storage_configuration: Optional[VirtualMachineStorageConfigurationArgs] = None,
            tags: Optional[Mapping[str, str]] = None,
            virtual_machine_id: Optional[str] = None,
            wsfc_domain_credential: Optional[VirtualMachineWsfcDomainCredentialArgs] = None) -> VirtualMachine
    func GetVirtualMachine(ctx *Context, name string, id IDInput, state *VirtualMachineState, opts ...ResourceOption) (*VirtualMachine, error)
    public static VirtualMachine Get(string name, Input<string> id, VirtualMachineState? state, CustomResourceOptions? opts = null)
    public static VirtualMachine get(String name, Output<String> id, VirtualMachineState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Assessment VirtualMachineAssessment
    An assessment block as defined below.
    AutoBackup VirtualMachineAutoBackup
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    AutoPatching VirtualMachineAutoPatching
    An auto_patching block as defined below.
    KeyVaultCredential VirtualMachineKeyVaultCredential
    An key_vault_credential block as defined below.
    RServicesEnabled bool
    Should R Services be enabled?
    SqlConnectivityPort int
    The SQL Server port. Defaults to 1433.
    SqlConnectivityType string
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    SqlConnectivityUpdatePassword string
    The SQL Server sysadmin login password.
    SqlConnectivityUpdateUsername string
    The SQL Server sysadmin login to create.
    SqlInstance VirtualMachineSqlInstance
    A sql_instance block as defined below.
    SqlLicenseType string
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    SqlVirtualMachineGroupId string
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    StorageConfiguration VirtualMachineStorageConfiguration
    An storage_configuration block as defined below.
    Tags Dictionary<string, string>
    A mapping of tags to assign to the resource.
    VirtualMachineId string
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    WsfcDomainCredential VirtualMachineWsfcDomainCredential
    A wsfc_domain_credential block as defined below
    Assessment VirtualMachineAssessmentArgs
    An assessment block as defined below.
    AutoBackup VirtualMachineAutoBackupArgs
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    AutoPatching VirtualMachineAutoPatchingArgs
    An auto_patching block as defined below.
    KeyVaultCredential VirtualMachineKeyVaultCredentialArgs
    An key_vault_credential block as defined below.
    RServicesEnabled bool
    Should R Services be enabled?
    SqlConnectivityPort int
    The SQL Server port. Defaults to 1433.
    SqlConnectivityType string
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    SqlConnectivityUpdatePassword string
    The SQL Server sysadmin login password.
    SqlConnectivityUpdateUsername string
    The SQL Server sysadmin login to create.
    SqlInstance VirtualMachineSqlInstanceArgs
    A sql_instance block as defined below.
    SqlLicenseType string
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    SqlVirtualMachineGroupId string
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    StorageConfiguration VirtualMachineStorageConfigurationArgs
    An storage_configuration block as defined below.
    Tags map[string]string
    A mapping of tags to assign to the resource.
    VirtualMachineId string
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    WsfcDomainCredential VirtualMachineWsfcDomainCredentialArgs
    A wsfc_domain_credential block as defined below
    assessment VirtualMachineAssessment
    An assessment block as defined below.
    autoBackup VirtualMachineAutoBackup
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    autoPatching VirtualMachineAutoPatching
    An auto_patching block as defined below.
    keyVaultCredential VirtualMachineKeyVaultCredential
    An key_vault_credential block as defined below.
    rServicesEnabled Boolean
    Should R Services be enabled?
    sqlConnectivityPort Integer
    The SQL Server port. Defaults to 1433.
    sqlConnectivityType String
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    sqlConnectivityUpdatePassword String
    The SQL Server sysadmin login password.
    sqlConnectivityUpdateUsername String
    The SQL Server sysadmin login to create.
    sqlInstance VirtualMachineSqlInstance
    A sql_instance block as defined below.
    sqlLicenseType String
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    sqlVirtualMachineGroupId String
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    storageConfiguration VirtualMachineStorageConfiguration
    An storage_configuration block as defined below.
    tags Map<String,String>
    A mapping of tags to assign to the resource.
    virtualMachineId String
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    wsfcDomainCredential VirtualMachineWsfcDomainCredential
    A wsfc_domain_credential block as defined below
    assessment VirtualMachineAssessment
    An assessment block as defined below.
    autoBackup VirtualMachineAutoBackup
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    autoPatching VirtualMachineAutoPatching
    An auto_patching block as defined below.
    keyVaultCredential VirtualMachineKeyVaultCredential
    An key_vault_credential block as defined below.
    rServicesEnabled boolean
    Should R Services be enabled?
    sqlConnectivityPort number
    The SQL Server port. Defaults to 1433.
    sqlConnectivityType string
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    sqlConnectivityUpdatePassword string
    The SQL Server sysadmin login password.
    sqlConnectivityUpdateUsername string
    The SQL Server sysadmin login to create.
    sqlInstance VirtualMachineSqlInstance
    A sql_instance block as defined below.
    sqlLicenseType string
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    sqlVirtualMachineGroupId string
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    storageConfiguration VirtualMachineStorageConfiguration
    An storage_configuration block as defined below.
    tags {[key: string]: string}
    A mapping of tags to assign to the resource.
    virtualMachineId string
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    wsfcDomainCredential VirtualMachineWsfcDomainCredential
    A wsfc_domain_credential block as defined below
    assessment VirtualMachineAssessmentArgs
    An assessment block as defined below.
    auto_backup VirtualMachineAutoBackupArgs
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    auto_patching VirtualMachineAutoPatchingArgs
    An auto_patching block as defined below.
    key_vault_credential VirtualMachineKeyVaultCredentialArgs
    An key_vault_credential block as defined below.
    r_services_enabled bool
    Should R Services be enabled?
    sql_connectivity_port int
    The SQL Server port. Defaults to 1433.
    sql_connectivity_type str
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    sql_connectivity_update_password str
    The SQL Server sysadmin login password.
    sql_connectivity_update_username str
    The SQL Server sysadmin login to create.
    sql_instance VirtualMachineSqlInstanceArgs
    A sql_instance block as defined below.
    sql_license_type str
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    sql_virtual_machine_group_id str
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    storage_configuration VirtualMachineStorageConfigurationArgs
    An storage_configuration block as defined below.
    tags Mapping[str, str]
    A mapping of tags to assign to the resource.
    virtual_machine_id str
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    wsfc_domain_credential VirtualMachineWsfcDomainCredentialArgs
    A wsfc_domain_credential block as defined below
    assessment Property Map
    An assessment block as defined below.
    autoBackup Property Map
    An auto_backup block as defined below. This block can be added to an existing resource, but removing this block forces a new resource to be created.
    autoPatching Property Map
    An auto_patching block as defined below.
    keyVaultCredential Property Map
    An key_vault_credential block as defined below.
    rServicesEnabled Boolean
    Should R Services be enabled?
    sqlConnectivityPort Number
    The SQL Server port. Defaults to 1433.
    sqlConnectivityType String
    The connectivity type used for this SQL Server. Possible values are LOCAL, PRIVATE and PUBLIC. Defaults to PRIVATE.
    sqlConnectivityUpdatePassword String
    The SQL Server sysadmin login password.
    sqlConnectivityUpdateUsername String
    The SQL Server sysadmin login to create.
    sqlInstance Property Map
    A sql_instance block as defined below.
    sqlLicenseType String
    The SQL Server license type. Possible values are AHUB (Azure Hybrid Benefit), DR (Disaster Recovery), and PAYG (Pay-As-You-Go). Changing this forces a new resource to be created.
    sqlVirtualMachineGroupId String
    The ID of the SQL Virtual Machine Group that the SQL Virtual Machine belongs to.
    storageConfiguration Property Map
    An storage_configuration block as defined below.
    tags Map<String>
    A mapping of tags to assign to the resource.
    virtualMachineId String
    The ID of the Virtual Machine. Changing this forces a new resource to be created.
    wsfcDomainCredential Property Map
    A wsfc_domain_credential block as defined below

    Supporting Types

    VirtualMachineAssessment, VirtualMachineAssessmentArgs

    Enabled bool
    Should Assessment be enabled? Defaults to true.
    RunImmediately bool
    Should Assessment be run immediately? Defaults to false.
    Schedule VirtualMachineAssessmentSchedule
    An schedule block as defined below.
    Enabled bool
    Should Assessment be enabled? Defaults to true.
    RunImmediately bool
    Should Assessment be run immediately? Defaults to false.
    Schedule VirtualMachineAssessmentSchedule
    An schedule block as defined below.
    enabled Boolean
    Should Assessment be enabled? Defaults to true.
    runImmediately Boolean
    Should Assessment be run immediately? Defaults to false.
    schedule VirtualMachineAssessmentSchedule
    An schedule block as defined below.
    enabled boolean
    Should Assessment be enabled? Defaults to true.
    runImmediately boolean
    Should Assessment be run immediately? Defaults to false.
    schedule VirtualMachineAssessmentSchedule
    An schedule block as defined below.
    enabled bool
    Should Assessment be enabled? Defaults to true.
    run_immediately bool
    Should Assessment be run immediately? Defaults to false.
    schedule VirtualMachineAssessmentSchedule
    An schedule block as defined below.
    enabled Boolean
    Should Assessment be enabled? Defaults to true.
    runImmediately Boolean
    Should Assessment be run immediately? Defaults to false.
    schedule Property Map
    An schedule block as defined below.

    VirtualMachineAssessmentSchedule, VirtualMachineAssessmentScheduleArgs

    DayOfWeek string
    What day of the week the assessment will be run. Possible values are Friday, Monday, Saturday, Sunday, Thursday, Tuesday and Wednesday.
    StartTime string
    What time the assessment will be run. Must be in the format HH:mm.
    MonthlyOccurrence int

    How many months between assessment runs. Valid values are between 1 and 5.

    NOTE: Either one of weekly_interval or monthly_occurrence must be specified.

    WeeklyInterval int
    How many weeks between assessment runs. Valid values are between 1 and 6.
    DayOfWeek string
    What day of the week the assessment will be run. Possible values are Friday, Monday, Saturday, Sunday, Thursday, Tuesday and Wednesday.
    StartTime string
    What time the assessment will be run. Must be in the format HH:mm.
    MonthlyOccurrence int

    How many months between assessment runs. Valid values are between 1 and 5.

    NOTE: Either one of weekly_interval or monthly_occurrence must be specified.

    WeeklyInterval int
    How many weeks between assessment runs. Valid values are between 1 and 6.
    dayOfWeek String
    What day of the week the assessment will be run. Possible values are Friday, Monday, Saturday, Sunday, Thursday, Tuesday and Wednesday.
    startTime String
    What time the assessment will be run. Must be in the format HH:mm.
    monthlyOccurrence Integer

    How many months between assessment runs. Valid values are between 1 and 5.

    NOTE: Either one of weekly_interval or monthly_occurrence must be specified.

    weeklyInterval Integer
    How many weeks between assessment runs. Valid values are between 1 and 6.
    dayOfWeek string
    What day of the week the assessment will be run. Possible values are Friday, Monday, Saturday, Sunday, Thursday, Tuesday and Wednesday.
    startTime string
    What time the assessment will be run. Must be in the format HH:mm.
    monthlyOccurrence number

    How many months between assessment runs. Valid values are between 1 and 5.

    NOTE: Either one of weekly_interval or monthly_occurrence must be specified.

    weeklyInterval number
    How many weeks between assessment runs. Valid values are between 1 and 6.
    day_of_week str
    What day of the week the assessment will be run. Possible values are Friday, Monday, Saturday, Sunday, Thursday, Tuesday and Wednesday.
    start_time str
    What time the assessment will be run. Must be in the format HH:mm.
    monthly_occurrence int

    How many months between assessment runs. Valid values are between 1 and 5.

    NOTE: Either one of weekly_interval or monthly_occurrence must be specified.

    weekly_interval int
    How many weeks between assessment runs. Valid values are between 1 and 6.
    dayOfWeek String
    What day of the week the assessment will be run. Possible values are Friday, Monday, Saturday, Sunday, Thursday, Tuesday and Wednesday.
    startTime String
    What time the assessment will be run. Must be in the format HH:mm.
    monthlyOccurrence Number

    How many months between assessment runs. Valid values are between 1 and 5.

    NOTE: Either one of weekly_interval or monthly_occurrence must be specified.

    weeklyInterval Number
    How many weeks between assessment runs. Valid values are between 1 and 6.

    VirtualMachineAutoBackup, VirtualMachineAutoBackupArgs

    RetentionPeriodInDays int
    Retention period of backups, in days. Valid values are from 1 to 30.
    StorageAccountAccessKey string
    Access key for the storage account where backups will be kept.
    StorageBlobEndpoint string
    Blob endpoint for the storage account where backups will be kept.
    EncryptionEnabled bool
    Enable or disable encryption for backups. Defaults to false.
    EncryptionPassword string
    Encryption password to use. Must be specified when encryption is enabled.
    ManualSchedule VirtualMachineAutoBackupManualSchedule
    A manual_schedule block as documented below. When this block is present, the schedule type is set to Manual. Without this block, the schedule type is set to Automated.
    SystemDatabasesBackupEnabled bool
    Include or exclude system databases from auto backup.
    RetentionPeriodInDays int
    Retention period of backups, in days. Valid values are from 1 to 30.
    StorageAccountAccessKey string
    Access key for the storage account where backups will be kept.
    StorageBlobEndpoint string
    Blob endpoint for the storage account where backups will be kept.
    EncryptionEnabled bool
    Enable or disable encryption for backups. Defaults to false.
    EncryptionPassword string
    Encryption password to use. Must be specified when encryption is enabled.
    ManualSchedule VirtualMachineAutoBackupManualSchedule
    A manual_schedule block as documented below. When this block is present, the schedule type is set to Manual. Without this block, the schedule type is set to Automated.
    SystemDatabasesBackupEnabled bool
    Include or exclude system databases from auto backup.
    retentionPeriodInDays Integer
    Retention period of backups, in days. Valid values are from 1 to 30.
    storageAccountAccessKey String
    Access key for the storage account where backups will be kept.
    storageBlobEndpoint String
    Blob endpoint for the storage account where backups will be kept.
    encryptionEnabled Boolean
    Enable or disable encryption for backups. Defaults to false.
    encryptionPassword String
    Encryption password to use. Must be specified when encryption is enabled.
    manualSchedule VirtualMachineAutoBackupManualSchedule
    A manual_schedule block as documented below. When this block is present, the schedule type is set to Manual. Without this block, the schedule type is set to Automated.
    systemDatabasesBackupEnabled Boolean
    Include or exclude system databases from auto backup.
    retentionPeriodInDays number
    Retention period of backups, in days. Valid values are from 1 to 30.
    storageAccountAccessKey string
    Access key for the storage account where backups will be kept.
    storageBlobEndpoint string
    Blob endpoint for the storage account where backups will be kept.
    encryptionEnabled boolean
    Enable or disable encryption for backups. Defaults to false.
    encryptionPassword string
    Encryption password to use. Must be specified when encryption is enabled.
    manualSchedule VirtualMachineAutoBackupManualSchedule
    A manual_schedule block as documented below. When this block is present, the schedule type is set to Manual. Without this block, the schedule type is set to Automated.
    systemDatabasesBackupEnabled boolean
    Include or exclude system databases from auto backup.
    retention_period_in_days int
    Retention period of backups, in days. Valid values are from 1 to 30.
    storage_account_access_key str
    Access key for the storage account where backups will be kept.
    storage_blob_endpoint str
    Blob endpoint for the storage account where backups will be kept.
    encryption_enabled bool
    Enable or disable encryption for backups. Defaults to false.
    encryption_password str
    Encryption password to use. Must be specified when encryption is enabled.
    manual_schedule VirtualMachineAutoBackupManualSchedule
    A manual_schedule block as documented below. When this block is present, the schedule type is set to Manual. Without this block, the schedule type is set to Automated.
    system_databases_backup_enabled bool
    Include or exclude system databases from auto backup.
    retentionPeriodInDays Number
    Retention period of backups, in days. Valid values are from 1 to 30.
    storageAccountAccessKey String
    Access key for the storage account where backups will be kept.
    storageBlobEndpoint String
    Blob endpoint for the storage account where backups will be kept.
    encryptionEnabled Boolean
    Enable or disable encryption for backups. Defaults to false.
    encryptionPassword String
    Encryption password to use. Must be specified when encryption is enabled.
    manualSchedule Property Map
    A manual_schedule block as documented below. When this block is present, the schedule type is set to Manual. Without this block, the schedule type is set to Automated.
    systemDatabasesBackupEnabled Boolean
    Include or exclude system databases from auto backup.

    VirtualMachineAutoBackupManualSchedule, VirtualMachineAutoBackupManualScheduleArgs

    FullBackupFrequency string
    Frequency of full backups. Valid values include Daily or Weekly.
    FullBackupStartHour int
    Start hour of a given day during which full backups can take place. Valid values are from 0 to 23.
    FullBackupWindowInHours int
    Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between 1 and 23.
    LogBackupFrequencyInMinutes int
    Frequency of log backups, in minutes. Valid values are from 5 to 60.
    DaysOfWeeks List<string>

    A list of days on which backup can take place. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday

    NOTE: days_of_week can only be specified when manual_schedule is set to Weekly

    FullBackupFrequency string
    Frequency of full backups. Valid values include Daily or Weekly.
    FullBackupStartHour int
    Start hour of a given day during which full backups can take place. Valid values are from 0 to 23.
    FullBackupWindowInHours int
    Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between 1 and 23.
    LogBackupFrequencyInMinutes int
    Frequency of log backups, in minutes. Valid values are from 5 to 60.
    DaysOfWeeks []string

    A list of days on which backup can take place. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday

    NOTE: days_of_week can only be specified when manual_schedule is set to Weekly

    fullBackupFrequency String
    Frequency of full backups. Valid values include Daily or Weekly.
    fullBackupStartHour Integer
    Start hour of a given day during which full backups can take place. Valid values are from 0 to 23.
    fullBackupWindowInHours Integer
    Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between 1 and 23.
    logBackupFrequencyInMinutes Integer
    Frequency of log backups, in minutes. Valid values are from 5 to 60.
    daysOfWeeks List<String>

    A list of days on which backup can take place. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday

    NOTE: days_of_week can only be specified when manual_schedule is set to Weekly

    fullBackupFrequency string
    Frequency of full backups. Valid values include Daily or Weekly.
    fullBackupStartHour number
    Start hour of a given day during which full backups can take place. Valid values are from 0 to 23.
    fullBackupWindowInHours number
    Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between 1 and 23.
    logBackupFrequencyInMinutes number
    Frequency of log backups, in minutes. Valid values are from 5 to 60.
    daysOfWeeks string[]

    A list of days on which backup can take place. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday

    NOTE: days_of_week can only be specified when manual_schedule is set to Weekly

    full_backup_frequency str
    Frequency of full backups. Valid values include Daily or Weekly.
    full_backup_start_hour int
    Start hour of a given day during which full backups can take place. Valid values are from 0 to 23.
    full_backup_window_in_hours int
    Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between 1 and 23.
    log_backup_frequency_in_minutes int
    Frequency of log backups, in minutes. Valid values are from 5 to 60.
    days_of_weeks Sequence[str]

    A list of days on which backup can take place. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday

    NOTE: days_of_week can only be specified when manual_schedule is set to Weekly

    fullBackupFrequency String
    Frequency of full backups. Valid values include Daily or Weekly.
    fullBackupStartHour Number
    Start hour of a given day during which full backups can take place. Valid values are from 0 to 23.
    fullBackupWindowInHours Number
    Duration of the time window of a given day during which full backups can take place, in hours. Valid values are between 1 and 23.
    logBackupFrequencyInMinutes Number
    Frequency of log backups, in minutes. Valid values are from 5 to 60.
    daysOfWeeks List<String>

    A list of days on which backup can take place. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday

    NOTE: days_of_week can only be specified when manual_schedule is set to Weekly

    VirtualMachineAutoPatching, VirtualMachineAutoPatchingArgs

    DayOfWeek string
    The day of week to apply the patch on. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
    MaintenanceWindowDurationInMinutes int
    The size of the Maintenance Window in minutes.
    MaintenanceWindowStartingHour int
    The Hour, in the Virtual Machine Time-Zone when the patching maintenance window should begin.
    DayOfWeek string
    The day of week to apply the patch on. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
    MaintenanceWindowDurationInMinutes int
    The size of the Maintenance Window in minutes.
    MaintenanceWindowStartingHour int
    The Hour, in the Virtual Machine Time-Zone when the patching maintenance window should begin.
    dayOfWeek String
    The day of week to apply the patch on. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
    maintenanceWindowDurationInMinutes Integer
    The size of the Maintenance Window in minutes.
    maintenanceWindowStartingHour Integer
    The Hour, in the Virtual Machine Time-Zone when the patching maintenance window should begin.
    dayOfWeek string
    The day of week to apply the patch on. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
    maintenanceWindowDurationInMinutes number
    The size of the Maintenance Window in minutes.
    maintenanceWindowStartingHour number
    The Hour, in the Virtual Machine Time-Zone when the patching maintenance window should begin.
    day_of_week str
    The day of week to apply the patch on. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
    maintenance_window_duration_in_minutes int
    The size of the Maintenance Window in minutes.
    maintenance_window_starting_hour int
    The Hour, in the Virtual Machine Time-Zone when the patching maintenance window should begin.
    dayOfWeek String
    The day of week to apply the patch on. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
    maintenanceWindowDurationInMinutes Number
    The size of the Maintenance Window in minutes.
    maintenanceWindowStartingHour Number
    The Hour, in the Virtual Machine Time-Zone when the patching maintenance window should begin.

    VirtualMachineKeyVaultCredential, VirtualMachineKeyVaultCredentialArgs

    KeyVaultUrl string
    The Azure Key Vault url. Changing this forces a new resource to be created.
    Name string
    The credential name.
    ServicePrincipalName string
    The service principal name to access key vault. Changing this forces a new resource to be created.
    ServicePrincipalSecret string
    The service principal name secret to access key vault. Changing this forces a new resource to be created.
    KeyVaultUrl string
    The Azure Key Vault url. Changing this forces a new resource to be created.
    Name string
    The credential name.
    ServicePrincipalName string
    The service principal name to access key vault. Changing this forces a new resource to be created.
    ServicePrincipalSecret string
    The service principal name secret to access key vault. Changing this forces a new resource to be created.
    keyVaultUrl String
    The Azure Key Vault url. Changing this forces a new resource to be created.
    name String
    The credential name.
    servicePrincipalName String
    The service principal name to access key vault. Changing this forces a new resource to be created.
    servicePrincipalSecret String
    The service principal name secret to access key vault. Changing this forces a new resource to be created.
    keyVaultUrl string
    The Azure Key Vault url. Changing this forces a new resource to be created.
    name string
    The credential name.
    servicePrincipalName string
    The service principal name to access key vault. Changing this forces a new resource to be created.
    servicePrincipalSecret string
    The service principal name secret to access key vault. Changing this forces a new resource to be created.
    key_vault_url str
    The Azure Key Vault url. Changing this forces a new resource to be created.
    name str
    The credential name.
    service_principal_name str
    The service principal name to access key vault. Changing this forces a new resource to be created.
    service_principal_secret str
    The service principal name secret to access key vault. Changing this forces a new resource to be created.
    keyVaultUrl String
    The Azure Key Vault url. Changing this forces a new resource to be created.
    name String
    The credential name.
    servicePrincipalName String
    The service principal name to access key vault. Changing this forces a new resource to be created.
    servicePrincipalSecret String
    The service principal name secret to access key vault. Changing this forces a new resource to be created.

    VirtualMachineSqlInstance, VirtualMachineSqlInstanceArgs

    AdhocWorkloadsOptimizationEnabled bool
    Specifies if the SQL Server is optimized for adhoc workloads. Possible values are true and false. Defaults to false.
    Collation string
    Collation of the SQL Server. Defaults to SQL_Latin1_General_CP1_CI_AS. Changing this forces a new resource to be created.
    InstantFileInitializationEnabled bool
    Specifies if Instant File Initialization is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    LockPagesInMemoryEnabled bool
    Specifies if Lock Pages in Memory is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    MaxDop int
    Maximum Degree of Parallelism of the SQL Server. Possible values are between 0 and 32767. Defaults to 0.
    MaxServerMemoryMb int
    Maximum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 128 and 2147483647 Defaults to 2147483647.
    MinServerMemoryMb int

    Minimum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 0 and 2147483647 Defaults to 0.

    NOTE: max_server_memory_mb must be greater than or equal to min_server_memory_mb

    AdhocWorkloadsOptimizationEnabled bool
    Specifies if the SQL Server is optimized for adhoc workloads. Possible values are true and false. Defaults to false.
    Collation string
    Collation of the SQL Server. Defaults to SQL_Latin1_General_CP1_CI_AS. Changing this forces a new resource to be created.
    InstantFileInitializationEnabled bool
    Specifies if Instant File Initialization is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    LockPagesInMemoryEnabled bool
    Specifies if Lock Pages in Memory is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    MaxDop int
    Maximum Degree of Parallelism of the SQL Server. Possible values are between 0 and 32767. Defaults to 0.
    MaxServerMemoryMb int
    Maximum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 128 and 2147483647 Defaults to 2147483647.
    MinServerMemoryMb int

    Minimum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 0 and 2147483647 Defaults to 0.

    NOTE: max_server_memory_mb must be greater than or equal to min_server_memory_mb

    adhocWorkloadsOptimizationEnabled Boolean
    Specifies if the SQL Server is optimized for adhoc workloads. Possible values are true and false. Defaults to false.
    collation String
    Collation of the SQL Server. Defaults to SQL_Latin1_General_CP1_CI_AS. Changing this forces a new resource to be created.
    instantFileInitializationEnabled Boolean
    Specifies if Instant File Initialization is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    lockPagesInMemoryEnabled Boolean
    Specifies if Lock Pages in Memory is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    maxDop Integer
    Maximum Degree of Parallelism of the SQL Server. Possible values are between 0 and 32767. Defaults to 0.
    maxServerMemoryMb Integer
    Maximum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 128 and 2147483647 Defaults to 2147483647.
    minServerMemoryMb Integer

    Minimum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 0 and 2147483647 Defaults to 0.

    NOTE: max_server_memory_mb must be greater than or equal to min_server_memory_mb

    adhocWorkloadsOptimizationEnabled boolean
    Specifies if the SQL Server is optimized for adhoc workloads. Possible values are true and false. Defaults to false.
    collation string
    Collation of the SQL Server. Defaults to SQL_Latin1_General_CP1_CI_AS. Changing this forces a new resource to be created.
    instantFileInitializationEnabled boolean
    Specifies if Instant File Initialization is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    lockPagesInMemoryEnabled boolean
    Specifies if Lock Pages in Memory is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    maxDop number
    Maximum Degree of Parallelism of the SQL Server. Possible values are between 0 and 32767. Defaults to 0.
    maxServerMemoryMb number
    Maximum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 128 and 2147483647 Defaults to 2147483647.
    minServerMemoryMb number

    Minimum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 0 and 2147483647 Defaults to 0.

    NOTE: max_server_memory_mb must be greater than or equal to min_server_memory_mb

    adhoc_workloads_optimization_enabled bool
    Specifies if the SQL Server is optimized for adhoc workloads. Possible values are true and false. Defaults to false.
    collation str
    Collation of the SQL Server. Defaults to SQL_Latin1_General_CP1_CI_AS. Changing this forces a new resource to be created.
    instant_file_initialization_enabled bool
    Specifies if Instant File Initialization is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    lock_pages_in_memory_enabled bool
    Specifies if Lock Pages in Memory is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    max_dop int
    Maximum Degree of Parallelism of the SQL Server. Possible values are between 0 and 32767. Defaults to 0.
    max_server_memory_mb int
    Maximum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 128 and 2147483647 Defaults to 2147483647.
    min_server_memory_mb int

    Minimum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 0 and 2147483647 Defaults to 0.

    NOTE: max_server_memory_mb must be greater than or equal to min_server_memory_mb

    adhocWorkloadsOptimizationEnabled Boolean
    Specifies if the SQL Server is optimized for adhoc workloads. Possible values are true and false. Defaults to false.
    collation String
    Collation of the SQL Server. Defaults to SQL_Latin1_General_CP1_CI_AS. Changing this forces a new resource to be created.
    instantFileInitializationEnabled Boolean
    Specifies if Instant File Initialization is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    lockPagesInMemoryEnabled Boolean
    Specifies if Lock Pages in Memory is enabled for the SQL Server. Possible values are true and false. Defaults to false. Changing this forces a new resource to be created.
    maxDop Number
    Maximum Degree of Parallelism of the SQL Server. Possible values are between 0 and 32767. Defaults to 0.
    maxServerMemoryMb Number
    Maximum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 128 and 2147483647 Defaults to 2147483647.
    minServerMemoryMb Number

    Minimum amount memory that SQL Server Memory Manager can allocate to the SQL Server process. Possible values are between 0 and 2147483647 Defaults to 0.

    NOTE: max_server_memory_mb must be greater than or equal to min_server_memory_mb

    VirtualMachineStorageConfiguration, VirtualMachineStorageConfigurationArgs

    DiskType string
    The type of disk configuration to apply to the SQL Server. Valid values include NEW, EXTEND, or ADD.
    StorageWorkloadType string
    The type of storage workload. Valid values include GENERAL, OLTP, or DW.
    DataSettings VirtualMachineStorageConfigurationDataSettings
    A storage_settings block as defined below.
    LogSettings VirtualMachineStorageConfigurationLogSettings
    A storage_settings block as defined below.
    SystemDbOnDataDiskEnabled bool
    Specifies whether to set system databases (except tempDb) location to newly created data storage. Possible values are true and false. Defaults to false.
    TempDbSettings VirtualMachineStorageConfigurationTempDbSettings
    An temp_db_settings block as defined below.
    DiskType string
    The type of disk configuration to apply to the SQL Server. Valid values include NEW, EXTEND, or ADD.
    StorageWorkloadType string
    The type of storage workload. Valid values include GENERAL, OLTP, or DW.
    DataSettings VirtualMachineStorageConfigurationDataSettings
    A storage_settings block as defined below.
    LogSettings VirtualMachineStorageConfigurationLogSettings
    A storage_settings block as defined below.
    SystemDbOnDataDiskEnabled bool
    Specifies whether to set system databases (except tempDb) location to newly created data storage. Possible values are true and false. Defaults to false.
    TempDbSettings VirtualMachineStorageConfigurationTempDbSettings
    An temp_db_settings block as defined below.
    diskType String
    The type of disk configuration to apply to the SQL Server. Valid values include NEW, EXTEND, or ADD.
    storageWorkloadType String
    The type of storage workload. Valid values include GENERAL, OLTP, or DW.
    dataSettings VirtualMachineStorageConfigurationDataSettings
    A storage_settings block as defined below.
    logSettings VirtualMachineStorageConfigurationLogSettings
    A storage_settings block as defined below.
    systemDbOnDataDiskEnabled Boolean
    Specifies whether to set system databases (except tempDb) location to newly created data storage. Possible values are true and false. Defaults to false.
    tempDbSettings VirtualMachineStorageConfigurationTempDbSettings
    An temp_db_settings block as defined below.
    diskType string
    The type of disk configuration to apply to the SQL Server. Valid values include NEW, EXTEND, or ADD.
    storageWorkloadType string
    The type of storage workload. Valid values include GENERAL, OLTP, or DW.
    dataSettings VirtualMachineStorageConfigurationDataSettings
    A storage_settings block as defined below.
    logSettings VirtualMachineStorageConfigurationLogSettings
    A storage_settings block as defined below.
    systemDbOnDataDiskEnabled boolean
    Specifies whether to set system databases (except tempDb) location to newly created data storage. Possible values are true and false. Defaults to false.
    tempDbSettings VirtualMachineStorageConfigurationTempDbSettings
    An temp_db_settings block as defined below.
    disk_type str
    The type of disk configuration to apply to the SQL Server. Valid values include NEW, EXTEND, or ADD.
    storage_workload_type str
    The type of storage workload. Valid values include GENERAL, OLTP, or DW.
    data_settings VirtualMachineStorageConfigurationDataSettings
    A storage_settings block as defined below.
    log_settings VirtualMachineStorageConfigurationLogSettings
    A storage_settings block as defined below.
    system_db_on_data_disk_enabled bool
    Specifies whether to set system databases (except tempDb) location to newly created data storage. Possible values are true and false. Defaults to false.
    temp_db_settings VirtualMachineStorageConfigurationTempDbSettings
    An temp_db_settings block as defined below.
    diskType String
    The type of disk configuration to apply to the SQL Server. Valid values include NEW, EXTEND, or ADD.
    storageWorkloadType String
    The type of storage workload. Valid values include GENERAL, OLTP, or DW.
    dataSettings Property Map
    A storage_settings block as defined below.
    logSettings Property Map
    A storage_settings block as defined below.
    systemDbOnDataDiskEnabled Boolean
    Specifies whether to set system databases (except tempDb) location to newly created data storage. Possible values are true and false. Defaults to false.
    tempDbSettings Property Map
    An temp_db_settings block as defined below.

    VirtualMachineStorageConfigurationDataSettings, VirtualMachineStorageConfigurationDataSettingsArgs

    DefaultFilePath string
    Luns List<int>
    DefaultFilePath string
    Luns []int
    defaultFilePath String
    luns List<Integer>
    defaultFilePath string
    luns number[]
    default_file_path str
    luns Sequence[int]
    defaultFilePath String
    luns List<Number>

    VirtualMachineStorageConfigurationLogSettings, VirtualMachineStorageConfigurationLogSettingsArgs

    DefaultFilePath string
    Luns List<int>
    DefaultFilePath string
    Luns []int
    defaultFilePath String
    luns List<Integer>
    defaultFilePath string
    luns number[]
    default_file_path str
    luns Sequence[int]
    defaultFilePath String
    luns List<Number>

    VirtualMachineStorageConfigurationTempDbSettings, VirtualMachineStorageConfigurationTempDbSettingsArgs

    DefaultFilePath string
    The SQL Server default path
    Luns List<int>
    A list of Logical Unit Numbers for the disks.
    DataFileCount int
    The SQL Server default file count. This value defaults to 8
    DataFileGrowthInMb int
    The SQL Server default file size - This value defaults to 512
    DataFileSizeMb int
    The SQL Server default file size - This value defaults to 256
    LogFileGrowthMb int
    The SQL Server default file size - This value defaults to 512
    LogFileSizeMb int
    The SQL Server default file size - This value defaults to 256
    DefaultFilePath string
    The SQL Server default path
    Luns []int
    A list of Logical Unit Numbers for the disks.
    DataFileCount int
    The SQL Server default file count. This value defaults to 8
    DataFileGrowthInMb int
    The SQL Server default file size - This value defaults to 512
    DataFileSizeMb int
    The SQL Server default file size - This value defaults to 256
    LogFileGrowthMb int
    The SQL Server default file size - This value defaults to 512
    LogFileSizeMb int
    The SQL Server default file size - This value defaults to 256
    defaultFilePath String
    The SQL Server default path
    luns List<Integer>
    A list of Logical Unit Numbers for the disks.
    dataFileCount Integer
    The SQL Server default file count. This value defaults to 8
    dataFileGrowthInMb Integer
    The SQL Server default file size - This value defaults to 512
    dataFileSizeMb Integer
    The SQL Server default file size - This value defaults to 256
    logFileGrowthMb Integer
    The SQL Server default file size - This value defaults to 512
    logFileSizeMb Integer
    The SQL Server default file size - This value defaults to 256
    defaultFilePath string
    The SQL Server default path
    luns number[]
    A list of Logical Unit Numbers for the disks.
    dataFileCount number
    The SQL Server default file count. This value defaults to 8
    dataFileGrowthInMb number
    The SQL Server default file size - This value defaults to 512
    dataFileSizeMb number
    The SQL Server default file size - This value defaults to 256
    logFileGrowthMb number
    The SQL Server default file size - This value defaults to 512
    logFileSizeMb number
    The SQL Server default file size - This value defaults to 256
    default_file_path str
    The SQL Server default path
    luns Sequence[int]
    A list of Logical Unit Numbers for the disks.
    data_file_count int
    The SQL Server default file count. This value defaults to 8
    data_file_growth_in_mb int
    The SQL Server default file size - This value defaults to 512
    data_file_size_mb int
    The SQL Server default file size - This value defaults to 256
    log_file_growth_mb int
    The SQL Server default file size - This value defaults to 512
    log_file_size_mb int
    The SQL Server default file size - This value defaults to 256
    defaultFilePath String
    The SQL Server default path
    luns List<Number>
    A list of Logical Unit Numbers for the disks.
    dataFileCount Number
    The SQL Server default file count. This value defaults to 8
    dataFileGrowthInMb Number
    The SQL Server default file size - This value defaults to 512
    dataFileSizeMb Number
    The SQL Server default file size - This value defaults to 256
    logFileGrowthMb Number
    The SQL Server default file size - This value defaults to 512
    logFileSizeMb Number
    The SQL Server default file size - This value defaults to 256

    VirtualMachineWsfcDomainCredential, VirtualMachineWsfcDomainCredentialArgs

    ClusterBootstrapAccountPassword string
    The account password used for creating cluster.
    ClusterOperatorAccountPassword string
    The account password used for operating cluster.
    SqlServiceAccountPassword string
    The account password under which SQL service will run on all participating SQL virtual machines in the cluster.
    ClusterBootstrapAccountPassword string
    The account password used for creating cluster.
    ClusterOperatorAccountPassword string
    The account password used for operating cluster.
    SqlServiceAccountPassword string
    The account password under which SQL service will run on all participating SQL virtual machines in the cluster.
    clusterBootstrapAccountPassword String
    The account password used for creating cluster.
    clusterOperatorAccountPassword String
    The account password used for operating cluster.
    sqlServiceAccountPassword String
    The account password under which SQL service will run on all participating SQL virtual machines in the cluster.
    clusterBootstrapAccountPassword string
    The account password used for creating cluster.
    clusterOperatorAccountPassword string
    The account password used for operating cluster.
    sqlServiceAccountPassword string
    The account password under which SQL service will run on all participating SQL virtual machines in the cluster.
    cluster_bootstrap_account_password str
    The account password used for creating cluster.
    cluster_operator_account_password str
    The account password used for operating cluster.
    sql_service_account_password str
    The account password under which SQL service will run on all participating SQL virtual machines in the cluster.
    clusterBootstrapAccountPassword String
    The account password used for creating cluster.
    clusterOperatorAccountPassword String
    The account password used for operating cluster.
    sqlServiceAccountPassword String
    The account password under which SQL service will run on all participating SQL virtual machines in the cluster.

    Import

    Microsoft SQL Virtual Machines can be imported using the resource id, e.g.

    $ pulumi import azure:mssql/virtualMachine:VirtualMachine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/example1
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi