チュートリアル: Azure PowerShell を使用して Windows VM に SQL、IIS、.NET スタックをインストールする

このチュートリアルでは、Azure PowerShell を使用して SQL、IIS、.NET スタックをインストールします。 このスタックは、1 つは IIS および .NET を、もう 1 つは SQL Server を使用して Windows Server 2016 を実行する 2 つの VM で構成されています。

  • VM の作成
  • VM に IIS と .NET Core SDK をインストールする
  • SQL Server を実行する VM を作成する
  • SQL Server 拡張機能をインストールする

Azure Cloud Shell を起動する

Azure Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。

Cloud Shell を開くには、コード ブロックの右上隅にある [使ってみる] を選択します。 https://shell.azure.com/powershell に移動して、別のブラウザー タブで Cloud Shell を起動することもできます。 [コピー] を選択してコードのブロックをコピーし、Cloud Shell に貼り付けてから、Enter キーを押して実行します。

IIS VM を作成する

この例では、PowerShell Cloud Shell の New-AzVM コマンドレットを使用して、Windows Server 2016 仮想マシンをすばやく作成し、IIS と .NET Framework をインストールします。 IIS と Azure SQL VM はリソース グループと仮想ネットワークを共有するため、それらの名前となる変数を作成します。

$vmName = "IISVM"
$vNetName = "myIISSQLvNet"
$resourceGroup = "myIISSQLGroup"
New-AzVm `
    -ResourceGroupName $resourceGroup `
    -Name $vmName `
    -Location "East US" `
    -VirtualNetworkName $vNetName `
    -SubnetName "myIISSubnet" `
    -SecurityGroupName "myNetworkSecurityGroup" `
	-AddressPrefix 192.168.0.0/16 `
    -PublicIpAddressName "myIISPublicIpAddress" `
    -OpenPorts 80,3389 

カスタム スクリプト拡張機能と Set-AzVMExtension コマンドレットを使用して、IIS および .NET framework をインストールします。

Set-AzVMExtension `
    -ResourceGroupName $resourceGroup `
    -ExtensionName IIS `
    -VMName $vmName `
    -Publisher Microsoft.Compute `
    -ExtensionType CustomScriptExtension `
    -TypeHandlerVersion 1.4 `
    -SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server,Web-Asp-Net45,NET-Framework-Features"}' `
    -Location EastUS

別のサブネットの作成

SQL VM に使用する 2 つ目のサブネットを作成します。 [Get-AzVirtualNetwork]{/powershell/module/az.network/get-azvirtualnetwork} を使用して vNet を取得します。

$vNet = Get-AzVirtualNetwork `
   -Name $vNetName `
   -ResourceGroupName $resourceGroup

Add-AzVirtualNetworkSubnetConfig を使用してサブネットの構成を作成します。

Add-AzVirtualNetworkSubnetConfig `
   -AddressPrefix 192.168.0.0/24 `
   -Name mySQLSubnet `
   -VirtualNetwork $vNet `
   -ServiceEndpoint Microsoft.Sql

Set-AzVirtualNetwork を使用し、新しいサブネット情報で vNet を更新します。

$vNet | Set-AzVirtualNetwork

Azure SQL 仮想マシン

SQL Server の構成済みの Azure Marketplace イメージを使用して Azure SQL VM を作成します。 まず VM を作成し、VM に SQL Server 拡張機能をインストールします。

New-AzVm `
    -ResourceGroupName $resourceGroup `
    -Name "mySQLVM" `
	-ImageName "MicrosoftSQLServer:SQL2016SP1-WS2016:Enterprise:latest" `
    -Location eastus `
    -VirtualNetworkName $vNetName `
    -SubnetName "mySQLSubnet" `
    -SecurityGroupName "myNetworkSecurityGroup" `
    -PublicIpAddressName "mySQLPublicIpAddress" `
    -OpenPorts 3389,1401 

Set-AzVMSqlServerExtension を使用して SQL Server 拡張機能を SQL VM に追加します。

Set-AzVMSqlServerExtension `
   -ResourceGroupName $resourceGroup  `
   -VMName mySQLVM `
   -Name "SQLExtension" `
   -Location "EastUS"

次のステップ

このチュートリアルでは、 を使用して SQL\IIS\.NET スタックをインストールAzure PowerShell。 以下の方法を学習しました。

  • VM の作成
  • VM に IIS と .NET Core SDK をインストールする
  • SQL Server を実行する VM を作成する
  • SQL Server 拡張機能をインストールする

TLS/SSL 証明書を使用して IIS Web サーバーをセキュリティで保護する方法については、次のチュートリアルに進んでください。