【MicrosoftAzure】自習書シリーズをやってみる⑥(~IISのインストール~)
引き続き、「Azure 自習書シリーズ コマンドラインによる仮想マシンの構成と操作」 (以下、「自習書シリーズ」を利用した学習記。
Download Microsoft Azure 自習書一式 from Official Microsoft Download Center
前回まで、リソースグループおよびストレージアカウントおよび仮想ネットワーク、 ネットワークインターフェイスとパブリックIPアドレスの作成、仮想マシン作成まで行ったので、
今回は、MicrosoftAzure上の仮想マシン上にIISをインストールする。
IISのインストールについて
「自習書」シリーズの内容に準じ、ここでは、以下のステップを踏む。
①IISをインストールするカスタムスクリプトをローカル コンピューターで作成する。
②①のカスタムスクリプトを、Azure Blob ストレージにアップロードする。
③Set-AzureRmVMCustomScriptExtensionコマンドを実行して、対象の仮想マシンインスタンスで①のカスタムスクリプトを実行する
①IISをインストールするカスタムスクリプトをローカル コンピューターで作成する。
以下のIISをインストールするためのカスタムスクリプトをローカル コンピューターに作成する。 ここでは、「c:\Install-IIS.ps1」で保存する。
Install-WindowsFeature Web-Server –IncludeAllSubFeature
②カスタムスクリプトを、Azure Blob ストレージにアップロードする。
作成したカスタムスクリプトをAzure Blob ストレージにアップロードする。
# リソースグループ $rg = "AW-RG" # ストレージ $storageAccountName = "simalabmstorageacct" # カスタムスクリプト ファイルの情報 $container = "scripts" $scriptFile = "c:\Install-IIS.ps1" #ストレージキーの取得方法については、powershellのバージョンによって違うため注意。 #https://blogs.msdn.microsoft.com/windowsazurestorage/2016/08/29/azure-storage-powershell-v-1-7-hotfix-to-v1-4-breaking-changes/ #ストレージキーの取得 $strorageKey = (Get-AzureRmStorageAccountKey -Name $storageAccountName -ResourceGroupName $rg)[0].Value # スクリプトのアップロード $ctx = New-AzureStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $strorageKey New-AzureStorageContainer -Name $container -Permission Off -Context $ctx Set-AzureStorageBlobContent -File $scriptFile -Container $container -Context $ctx
※下記サイトのとおり、ストレージキーの取得方法については、powershellのバージョンによって違うため注意する。
実行後、該当のストレージアカウントのscriptsコンテナに「Install-IIS.ps1」がアップロードされる。
③Set-AzureRmVMCustomScriptExtensionコマンドを実行して、対象の仮想マシンインスタンスで①のカスタムスクリプトを実行する
アップロードしたカスタムスクリプトをSet-AzureRmVMCustomScriptExtension コマンドを実行して、 対象の仮想マシンインスタンスで実行する。
# リソースグループ $rg = "AW-RG" # 仮想マシンの情報 $vmName = "Web01" # ストレージ $storageAccountName = "simalabmstorageacct" # カスタムスクリプト ファイルの情報 $container = "scripts" $scriptFile = "Install-IIS.ps1" #ストレージキーの取得方法については、powershellのバージョンによって違うため注意。 #https://blogs.msdn.microsoft.com/windowsazurestorage/2016/08/29/azure-storage-powershell-v-1-7-hotfix-to-v1-4-breaking-changes/ # ストレージ キーを取得 $key = (Get-AzureRmStorageAccountKey -Name $storageAccountName -ResourceGroupName $rg)[0].Value # カスタムスクリプトの実行 Set-AzureRmVMCustomScriptExtension -ContainerName $container ` -FileName $scriptFile -Name $vmName -ResourceGroupName $rg ` -VMName $vmName -Location $location -Run $scriptFile ` -StorageAccountKey $key -StorageAccountName $StorageAccountName
10分ぐらいたつと、処理が完了する。出力例は下記の通り。
RequestId IsSuccessStatusCode StatusCode ReasonPhrase --------- ------------------- ---------- ------------ True OK OK
接続確認する。
下記の通り、IISをインストールした仮想マシン(ここではWeb01-IP)のIPアドレスに 接続する。なお、付与されたパブリックアドレスは下記のとおり確認できる。
PS C:\WINDOWS\system32> Get-AzureRmPublicIpAddress -ResourceGroupName $rg | select Name,IpAddress Name IpAddress ---- --------- SQL01-IP 40.74.124.167 Web01-IP 40.74.95.7
ここでは、http://40.74.95.7/にアクセスし、IISのトップページにアクセスできることを確認する。
また、DNSベースでもアクセスし、IISのトップページにアクセスできることを確認する。