Поделиться через


Краткое руководство. Создание SQL Server на виртуальной машине Azure с помощью PowerShell

Область применения: SQL Server на виртуальной машине Azure

В этом кратком руководстве описано, как создать Windows SQL Server на виртуальной машине Azure с помощью Azure PowerShell.

Совет

Необходимые компоненты

Чтобы завершить работу с этим кратким руководством, вам потребуется следующее:

Примечание.

В этой статье предусмотрено использование модуля Azure Az PowerShell, который является рекомендуемым модулем PowerShell для взаимодействия с Azure. Чтобы начать работу с модулем Az PowerShell, ознакомьтесь со статьей Установка Azure PowerShell. Дополнительные сведения см. в статье Перенос Azure PowerShell с AzureRM на Az.

Подключение к Azure

  1. Откройте PowerShell и установите доступ к учетной записи Azure, выполнив команду Connect-AzAccount , и задайте контекст подписки с помощью Set-AzContext.

    Connect-AzAccount
    Set-AzContext -subscription <Subscription ID>
    
  2. При появлении окна для входа, введите свои учетные данные. Используйте тот же адрес электронной почты и пароль, который вы используете для входа на портал Azure.

Создание или изменение группы ресурсов

Определите переменные для уникального имени группы ресурсов и укажите расположение целевого региона Azure для всех ресурсов виртуальной машины. Затем создайте группу ресурсов с помощью New-AzResourceGroup . Для упрощения дальнейших действий в рамках этого руководства это имя будет использоваться в остальных командах в качестве основы для других имен ресурсов.

$ResourceGroupName = "sqlvm1"
$Location = "East US"
$ResourceGroupParams = @{
   Name = $ResourceGroupName
   Location = $Location
   Tag = @{Owner="SQLDocs-Samples"}
}
New-AzResourceGroup @ResourceGroupParams

Настройка параметров сети

  1. Используйте New-AzVirtualNetworkSubnetConfig, New-AzVirtualNetwork и New-AzPublicIpAddress для создания виртуальной сети, подсети и общедоступного IP-адреса. Эти ресурсы используются для того, чтобы установить сетевое подключение к виртуальной машине и подключить ее к Интернету.

    $SubnetName = $ResourceGroupName + "subnet"
    $VnetName = $ResourceGroupName + "vnet"
    $PipName = $ResourceGroupName + $(Get-Random)
    
    # Create a subnet configuration
    $SubnetConfig = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix 192.168.1.0/24
    
    # Create a virtual network
    $Vnet = New-AzVirtualNetwork -ResourceGroupName $ResourceGroupName -Location $Location `
       -Name $VnetName -AddressPrefix 192.168.0.0/16 -Subnet $SubnetConfig
    
    # Create a public IP address and specify a DNS name
    $Pip = New-AzPublicIpAddress -ResourceGroupName $ResourceGroupName -Location $Location `
       -AllocationMethod Static -IdleTimeoutInMinutes 4 -Name $PipName
    
  2. Используйте New-AzNetworkSecurityGroup , чтобы создать группу безопасности сети после настройки правил, чтобы разрешить подключения удаленного рабочего стола (RDP) и SQL Server с помощью New-AzNetworkSecurityRuleConfig.

    # Rule to allow remote desktop (RDP)
    $NsgRuleRDP = New-AzNetworkSecurityRuleConfig -Name "RDPRule" -Protocol Tcp `
       -Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * `
       -DestinationAddressPrefix * -DestinationPortRange 3389 -Access Allow
    
    #Rule to allow SQL Server connections on port 1433
    $NsgRuleSQL = New-AzNetworkSecurityRuleConfig -Name "MSSQLRule"  -Protocol Tcp `
       -Direction Inbound -Priority 1001 -SourceAddressPrefix * -SourcePortRange * `
       -DestinationAddressPrefix * -DestinationPortRange 1433 -Access Allow
    
    # Create the network security group
    $NsgName = $ResourceGroupName + "nsg"
    $Nsg = New-AzNetworkSecurityGroup -ResourceGroupName $ResourceGroupName `
       -Location $Location -Name $NsgName `
       -SecurityRules $NsgRuleRDP,$NsgRuleSQL
    
  3. Создайте сетевой интерфейс с помощью New-AzNetworkInterface.

    $InterfaceName = $ResourceGroupName + "int"
    $Interface = New-AzNetworkInterface -Name $InterfaceName `
       -ResourceGroupName $ResourceGroupName -Location $Location `
       -SubnetId $VNet.Subnets[0].Id -PublicIpAddressId $Pip.Id `
       -NetworkSecurityGroupId $Nsg.Id
    

Создание виртуальной машины SQL

  1. Определите учетные данные для входа на виртуальную машину. Используйте имя пользователя azureadmin. Перед выполнением команды убедитесь, что вы изменили <password>.

    # Define a credential object
     $userName = "azureadmin"
     $SecurePassword = ConvertTo-SecureString '<strong password>' `
        -AsPlainText -Force
     $Cred = New-Object System.Management.Automation.PSCredential ($userName, $securePassword)
    
  2. Создайте объект конфигурации виртуальной машины с помощью New-AzVMConfig и создайте виртуальную машину с помощью New-AzVM. Следующая команда создает виртуальную машину SQL Server 2022 Developer Edition в Windows Server 2022.

    # Create a virtual machine configuration
    $VMName = $ResourceGroupName + "VM"
    $VMConfig = New-AzVMConfig -VMName $VMName -VMSize Standard_DS13_V2 |
       Set-AzVMOperatingSystem -Windows -ComputerName $VMName -Credential $Cred -ProvisionVMAgent -EnableAutoUpdate |
       Set-AzVMSourceImage -PublisherName "MicrosoftSQLServer" -Offer "sql2022-ws2022" -Skus "sqldev-gen2" -Version "latest" |
       Add-AzVMNetworkInterface -Id $Interface.Id
    
    # Create the VM
    New-AzVM -ResourceGroupName $ResourceGroupName -Location $Location -VM $VMConfig
    

    Совет

    Создание виртуальной машины занимает несколько минут.

Регистрация через поставщика ресурсов виртуальной машины SQL

Чтобы получить интеграцию с порталом и функции виртуальной машины SQL, необходимо зарегистрировать в расширении агента IaaS SQL.

Для этого сначала зарегистрируйте подписку в поставщике ресурсов с помощью Register-AzResourceProvider:

# Register the SQL IaaS Agent extension to your subscription
Register-AzResourceProvider -ProviderNamespace Microsoft.SqlVirtualMachine

Затем зарегистрируйте виртуальную машину SQL Server с расширением агента IaaS SQL с помощью New-AzSqlVM:

$License = 'PAYG'

# Register SQL Server VM with the extension
New-AzSqlVM -Name $VMName -ResourceGroupName $ResourceGroupName -Location $Location `
-LicenseType $License

Подключение к виртуальной машине с помощью удаленного рабочего стола

  1. Используйте Get-AzPublicIpAddress , чтобы получить общедоступный IP-адрес для новой виртуальной машины.

    Get-AzPublicIpAddress -ResourceGroupName $ResourceGroupName | Select IpAddress
    
  2. После этого передайте возвращенный IP-адрес в качестве параметра командной строки для mstsc, чтобы запустить сеанс удаленного рабочего стола на новой виртуальной машине.

    mstsc /v:<publicIpAddress>
    
  3. При появлении запроса учетных данных выберите ввод учетных данных для другой учетной записи. Введите имя пользователя после обратной косой черты (например, \azureadmin) и пароль, заданные ранее в рамках этого краткого руководства.

Подключение к SQL Server

  1. После входа в сеанс удаленного рабочего стола в меню "Пуск" запустите SQL Server Management Studio 2017.

  2. В диалоговом окне Подключение к серверу оставьте значения по умолчанию. Имя сервера указано в качестве имени виртуальной машины. В параметрах проверки подлинности установлено значение Проверка подлинности Windows. Нажмите Подключиться.

Теперь вы подключены к серверу SQL Server локально. Если вы хотите подключиться удаленно, необходимо настроить подключение на портале Azure или вручную.

Очистка ресурсов

Если не требуется, чтобы виртуальная машина работала постоянно, можно избежать ненужных затрат, останавливая ее, когда она не используется. С помощью следующей команды можно остановить виртуальную машину, оставив ее доступной для использования в будущем.

Stop-AzVM -Name $VMName -ResourceGroupName $ResourceGroupName

С помощью команды Remove-AzResourceGroup вы можете удалить все ресурсы, связанные с виртуальной машиной, без возможности восстановления. Это также приведет к окончательному удалению самой виртуальной машины, поэтому используйте указанную команду с осторожностью.

Следующие шаги

В этом кратком руководстве вы создали виртуальную машину SQL Server 2022 с помощью Azure PowerShell. Чтобы узнать больше о том, как перенести данные на новый сервер SQL Server, ознакомьтесь со следующей статьей.