ラボ 08 - 仮想マシンを管理する
ラボ概要
このラボでは、仮想マシンを作成し、仮想マシン スケール セットと比較します。 1 つの仮想マシンを作成、構成、サイズ変更する方法について説明します。 仮想マシン スケール セットを作成し、自動スケールを構成する方法について説明します。
このラボでは Azure サブスクリプションが必要です。 お使いのサブスクリプションの種類により、このラボの機能が使用できるかどうかに影響する可能性があります。 リージョンを変更できますが、手順は米国東部を使って作成されています。
推定時間:50 分
ラボのシナリオ
あなたの組織では、Azure 仮想マシンのデプロイと構成を検討したいと考えています。 まず、手動スケーリングを使用して Azure 仮想マシンを実装します。 次に、仮想マシン スケール セットを実装し、自動スケールについて調べます。
対話型ラボ シミュレーション
このトピックで役に立つ対話型ラボ シミュレーションがあります。 シミュレーションを使うと、同様のシナリオを自分のペースでクリックして進めることができます。 対話型シミュレーションとこのラボには違いがありますが、主要な概念の多くは同じです。 Azure サブスクリプションは必要ありません。
-
ポータルで仮想マシンを作成してください。 仮想マシンを作成し、Web サーバーロールを接続してインストールしてください。
-
テンプレートを使用して仮想マシンをデプロイしてください。 クイック スタート ギャラリーを調べて、仮想マシン テンプレートを見つけてください。 テンプレートをデプロイし、そのデプロイを確認します。
-
PowerShell で仮想マシンを作成してください。 Azure PowerShell を使用して仮想マシンをデプロイしてください。 Azure Advisor の推奨事項を確認してください。
-
CLI を使用して仮想マシンを作成してください。 CLI を使用して仮想マシンをデプロイしてください。 Azure Advisor の推奨事項を確認してください。
職務スキル
- タスク 1: Azure portal を使用してゾーン回復性がある Azure 仮想マシンをデプロイする。
- タスク 2: 仮想マシンのコンピューティングとストレージ スケーリングを管理する。
- タスク 3: Azure Virtual Machine Scale Sets を作成して構成する。
- タスク 4: Azure Virtual Machine Scale Sets をスケーリングする。
- タスク 5:Azure PowerShell を使用して仮想マシンを作成する (オプション 1)。
- タスク 6:CLI を使用して仮想マシンを作成する (オプション 2)。
Azure Virtual Machines アーキテクチャの図
タスク 1:Azure portal を使用してゾーン回復性がある Azure 仮想マシンをデプロイする
このタスクでは、Azure portal を使用して、2 つの Azure 仮想マシンを異なる可用性ゾーンにデプロイします。 可用性ゾーンは、仮想マシンの最高レベルのアップタイム SLA を 99.99% で提供します。 この SLA を実現するには、少なくとも 2 つの仮想マシンを異なる可用性ゾーンにデプロイする必要があります。
-
Azure portal -
https://portal.azure.com
にサインインしてください。 -
[仮想マシン] ブレードで
Virtual machines
を検索して選択し、[+ 作成] をクリックした後、ドロップダウンの [Azure 仮想マシン] を選択します。 他の選択肢に注意してください。 -
[基本] タブの [可用性ゾーン] ドロップダウン メニューで、[ゾーン 2] の横にチェックマークを入力してください。 これにより、ゾーン 1 とゾーン 2 の両方が選択されます。
注:これにより、選択したリージョンに 2 つの仮想マシンが、各ゾーンに 1 つずつデプロイされます。 少なくとも 2 つのゾーンに分散した少なくとも 2 つの VM があるため、99.99% のアップタイムの SLA を実現できます。 必要な VM が 1 つだけのシナリオでは、VM を別のゾーンにデプロイすることがベスト プラクティスです。
-
[基本] タブで、引き続き構成を完了させます。
設定 値 サブスクリプション “Azure サブスクリプションの名前” リソース グループ az104-rg8 (必要に応じて、[新規作成] を選択してください) 仮想マシン名 az104-vm1
とaz104-vm2
(両方の可用性ゾーンを選択した後、[VM 名] フィールドの下にある [名前の編集] を選択してください)。リージョン 米国東部 可用性のオプション 可用性ゾーン 可用性ゾーン ゾーン 1、2 (仮想マシン スケール セットの使用に関する注意事項をお読みください) セキュリティの種類 Standard Image Windows Server 2019 Datacenter - x64 Gen2 Azure Spot インスタンス unchecked サイズ Standard D2s v3 Username (ユーザー名) localadmin
Password (パスワード) セキュリティで保護されたパスワードを指定する パブリック受信ポート なし 既存の Windows Server ライセンスを使用しますか? Unchecked -
ページの下部の [次へ: ディスク] を選択して、次の設定を指定してください (他は既定値のままにします)。
設定 値 OS ディスクの種類 Premium SSD VM と共に削除 チェック済み (既定値) Ultra Disk の互換性を有効にする Unchecked -
ページの下部の [次へ: ネットワーク] 既定値を使用しますが、ロード バランサーは提供しないでください。
設定 Value VM が削除されたときにパブリック IP を削除する オン 負荷分散のオプション なし -
ページの下部の [次へ: 管理] を選択し、次の設定を指定してください (他は既定値のままにします)。
設定 値 パッチ オーケストレーション オプション Azure 調整済み -
ページの下部の [次へ: 監視] を選択し、次の設定を指定してください (他は既定値のままにします)。
設定 値 ブート診断 無効にする -
ページの下部の [次へ: 詳細] を選択し、既定値を使用して、[確認と作成] を選択してください。
-
検証後に、[作成] を選択してください。
注: 仮想マシンが NIC、ディスク、パブリック IP (構成されている場合) が個別に作成され、管理対象リソースをデプロイしていることに注目してください。
-
デプロイが完了するまで待ってから、[リソースに移動] を選択してください。
注: 通知メッセージを監視してください。
タスク 2:仮想マシンのコンピューティングとストレージのスケーリングを管理する
このタスクでは、仮想マシンのサイズを別の SKU に調整することで、仮想マシンをスケーリングします。 Azure では、VM サイズの選択に柔軟性があるため、より多くの (またはより少ない) コンピューティングとメモリの割り当てが必要とされる場合、VM を一定期間調整することができます。 この概念はディスクに拡張され、ディスクのパフォーマンスを変更したり、割り当てられる容量を増やしたりすることができます。
-
az104-vm1 仮想マシンの** [可用性とスケール] ブレードで、[サイズ]** を選択してください。
-
仮想マシンのサイズを DS1_v2 に設定し、[サイズ変更] を選択してください。 ダイアログが表示されたら、変更を確認してください。
注:Standard DS1_v2 がない場合は、別のサイズを選択します。 サイズ変更は、垂直方向のスケーリング (拡大または縮小) とも呼ばれます。
-
[設定] 領域で [ディスク] を選択してください。
-
[データ ディスク] で [新しいディスクを作成し接続する] を選択してください。 設定を構成してください (他は既定値のままにします)。
設定 値 ディスク名 vm1-disk1
ストレージの種類 Standard HDD サイズ (GiB) 32
-
[Apply] をクリックします。
-
ディスクが作成されたら、[デタッチ] を選択し (必要に応じて右にスクロールしてデタッチ アイコンを表示してください)、[適用] を選択してください。
注:デタッチすると、ディスクは VM から削除されますが、後で使用できるようにストレージ内に保持されます。
-
Disks
を検索して選択します。 ディスクの一覧から vm1-disk1 オブジェクトを選択してください。注: [概要] ブレードには、ディスクのパフォーマンスと使用状況に関する情報も表示されます。
-
[設定] ブレードで、[サイズとパフォーマンス] を選択してください。
-
ストレージの種類を Standard SSD に設定し、[保存] を選択してください。
-
az104-vm1 仮想マシンに戻り、[ディスク] を選択してください。
-
[データ ディスク] セクションで、[既存ディスクのアタッチ] を選択します。
-
[ディスク名] ドロップダウンで、[VM1-DISK1] を選択します。
-
ディスクが Standard SSD になっていることを確認してください。
-
[適用] を選択して変更を保存します。
注: これで、仮想マシンを作成し、SKU とデータ ディスク サイズをスケーリングしました。 次のタスクでは、Virtual Machine Scale Sets を使用してスケーリング プロセスを自動化します。
Azure Virtual Machine Scale Sets のアーキテクチャ図
タスク 3:Azure Virtual Machine Scale Sets を作成して構成する
このタスクでは、可用性ゾーン間で Azure 仮想マシン スケール セットをデプロイします。 VM Scale Sets を使用すると、スケール セットを水平方向にスケーリング、スケールイン、またはスケールアウトできるようにするメトリックまたは条件を構成できるため、自動化の管理上のオーバーヘッドが削減されます。
-
Azure portal で
Virtual machine scale sets
を検索して選択し、[Virtual Machine Scale Sets] ブレードで、[作成] を選択してください。 -
[仮想マシン スケール セットの作成] ブレードの [基本] タブで、次の設定を指定し (他の設定は既定値のままにします)、[次へ: スポット] を選択してください。
設定 値 サブスクリプション “Azure サブスクリプションの名前” リソース グループ az104-rg8 仮想マシン スケール セットの名前 vmss1
リージョン (US)East US 可用性ゾーン ゾーン 1、2、3 オーケストレーション モード Uniform セキュリティの種類 Standard Image Windows Server 2019 Datacenter - x64 Gen2 Azure Spot 割引で実行する Unchecked サイズ Standard D2s_v3 Username (ユーザー名) localadmin
Password (パスワード) セキュリティで保護されたパスワードを指定する Windows Server ライセンスを既にお持ちの場合 Unchecked 注: Windows 仮想マシンの可用性ゾーンへのデプロイをサポートする Azure リージョンのリストについては、Azure の Availability Zones の概要に関するページを参照してください。
-
[スポット] タブで、既定値をそのまま使用し、[次へ:Disks >](次へ: ディスク >) をクリックします。
-
[ディスク] タブで、既定値をそのまま使用し、[次へ:ネットワーク >] を選択します。
-
[ネットワーク] ページで、[仮想ネットワーク] テキストボックスの下にある [仮想ネットワークの作成] リンクを選択し、次の設定で新しい仮想ネットワークを作成してください (他の仮想ネットワークは既定値のままにします)。 終わったら、 [OK] を選択します。
設定 値 名前 vmss-vnet
アドレス範囲 10.82.0.0/20
(そこにあるものを変更してください)サブネット名 subnet0
サブネット範囲 10.82.0.0/24
-
[ネットワーク] タブで、ネットワーク インターフェイス エントリの右側にある [ネットワーク インターフェイスの編集] アイコンを選択してください。
-
[NIC ネットワーク セキュリティ グループ] セクションで、[詳細] を選択し、[ネットワーク セキュリティ グループの構成] ドロップダウン リストで [新規作成] を選択してください。
-
[ネットワーク セキュリティ グループの作成] ブレードで、次の設定を指定します (他の設定は既定値のままにします)。
設定 値 名前 vmss1-nsg -
[受信規則の追加] をクリックし、次の設定を使用して受信セキュリティ規則を追加します (他の設定は既定値のままにします)。
設定 値 source [任意] ソース ポート範囲 * 宛先 [任意] サービス HTTP アクション 許可 Priority 1010 名前 allow-http
-
[追加] をクリックし、[ネットワーク セキュリティ グループの作成] ブレードに戻って、[OK] をクリックします。
-
[ネットワーク インターフェイスの編集] ブレードの [パブリック IP アドレス] セクションで、[有効] を選択し、[OK] を選択してください。
-
[ネットワーク] タブの [負荷分散] セクションで、次を指定してください (他は既定値のままにします)。
設定 値 負荷分散のオプション Azure Load Balancer ロード バランサーを選択する ロード バランサーを作成する -
[ロード バランサーの作成] ページで、ロード バランサー名を指定し、既定値を使用します。 完了したら、[作成] をクリックして [次へ :Management >](次へ: 管理 >) をクリックします。
設定 値 ロード バランサー名 vmss-lb
注: 1 分間一時停止し、実行した内容を確認してください。 この時点で、ディスクとネットワークを使用して仮想マシン スケール セットを構成しました。 ネットワーク構成で、ネットワーク セキュリティ グループを作成し、HTTP を許可しました。 パブリック IP を持つロード バランサーも作成しました。
-
[管理] タブで、次の設定を指定してください (他は既定値のままにします)。
設定 値 ブート診断 無効にする -
ページの下部の [次へ: 正常性] を選択してください。
-
[正常性] タブで、変更を加えずに既定の設定を確認して [次へ:詳細 >] をクリックします。
-
[詳細] タブで、[確認と作成] を選択してください。
-
[確認と作成] タブで、検証に合格したことを確認し、[作成] を選択してください。
注:仮想マシン スケール セットのデプロイが完了するのを待ちます。 これには約 5 分かかります。 待っている間に、ドキュメントを確認してください。
タスク 4:Azure Virtual Machine Scale Sets をスケーリングする
このタスクでは、カスタム スケール ルールを使用して仮想マシン スケール セットをスケーリングします。
-
[リソースに移動] を選択するか、vmss1 スケール セットを検索して選択してください。
-
左側のメニューから [可用性とスケーリング] を選択した後、[スケーリング] を選択します。
ご存知でしたか? 手動スケーリングまたはカスタム自動スケーリングを使用できます。 VM インスタンスの数が少ないスケール セットでは、インスタンス数の増減 (手動スケール) が最適な場合があります。 VM インスタンスの数が多いスケール セットでは、メトリック (カスタム自動スケーリング) に基づくスケーリングの方が適切な場合があります。
スケールアウト ルール
-
[カスタム自動スケーリング] を選択します。 次に、[スケール モード] を [メトリックに基づくスケール] に変更します。 その後、[ルールの追加] を選択します。
-
VM インスタンスの数を自動的に増やすルールを作成しましょう。 このルールでは、10 分間の平均 CPU 負荷が 70% を超えるとスケールアウトされます。 ルールがトリガーされると、VM インスタンスの数が 20% 増加します。
設定 値 メトリックのソース 現在のリソース (vmss1) メトリック名前空間 仮想マシンのホスト メトリックの名前 CPU の割合 (他の選択肢を確認してください) 演算子 より大きい スケール アクションをトリガーするメトリックのしきい値 70 期間 (分) “10” 統計時間単位 Average 操作 パーセントを増やす量 (他の選択肢を確認してください) クールダウン (分) 5 Percentage 20 -
変更を必ず保存してください。
スケールイン ルール
-
夜間や週末には需要が減少する場合があるため、スケールイン ルールを作成することが重要です。
-
スケール セット内の VM インスタンスの数を減らすルールを作成しましょう。 10 分間の平均 CPU 負荷が 30% を下回ると、インスタンスの数が減少します。 ルールがトリガーされると、VM インスタンスの数が 20% 減ります。
-
[ルールの追加] を選択し、設定を調整してから、[追加] を選択してください。
設定 Value Operator より小さい しきい値 30 操作 パーセントを減らす量 (他の選択肢を確認してください) Percentage 20 -
変更を必ず保存してください。
インスタンスの制限を設定する
-
自動スケーリング規則が適用される場合、インスタンスの制限により、インスタンスの最大数を超えてスケールアウトしたり、インスタンスの最小数を超えてスケールインしたりすることがなくなります。
-
インスタンスの制限は、ルールの後の [スケーリング] ページに表示されます。
設定 Value 最小値 2 最大 “10” 既定値 2 -
変更を必ず保存してください
-
vmss1 ページで、 [インスタンス] を選択してください。 ここでは、仮想マシン インスタンスの数を監視します。
注: Azure PowerShell を使った仮想マシンの作成に関心がある方は、タスク 5 を試してください。 CLI を使用した仮想マシンの作成に関心がある方は、タスク 6 を試してください。
タスク 5: Azure PowerShell (Option 1) を使用して仮想マシンを作成する
-
アイコン (右上) を使用して Cloud Shell セッションを起動してください。 または、
https://shell.azure.com
に直接移動してください。 -
必ず PowerShell を選択してください。 必要に応じて、シェル ストレージを構成します。
-
次のコマンドを入力して、仮想ネットワークを作成してください。 ダイアログが表示されたら、VM のユーザー名とパスワードを入力してください。 待機中に、仮想マシンの作成に関連付けられているすべてのパラメーターについて、New-AzVM コマンド リファレンスをチェックアウトしてください。
New-AzVm ` -ResourceGroupName 'az104-rg8' ` -Name 'myPSVM' ` -Location 'East US' ` -Image 'Win2019Datacenter' ` -Zone '1' ` -Size 'Standard_D2s_v3' ` -Credential (Get-Credential)
-
コマンドが完了したら、Get-AzVM を使用してリソース グループ内の仮想マシンを一覧表示してください。
Get-AzVM ` -ResourceGroupName 'az104-rg8' ` -Status
-
新しい仮想マシンが一覧表示され、[状態] が [実行中] になっていることを確認してください。
-
Stop-AzVM を使用して仮想マシンの割り当てを解除してください。 確認するには、「Yes」と入力してください。
Stop-AzVM ` -ResourceGroupName 'az104-rg8' ` -Name 'myPSVM'
-
Get-AzVM を -Status パラメーターとともに使用して、マシンの割り当てが解除されていることを確認してください。
ご存知でしたか? Azure を使用して仮想マシンを停止すると、状態が割り当て解除になります。 これは、静的でないパブリック IP が解放され、VM のコンピューティング コストの支払いを停止することを意味します。
タスク 6:CLI を使用して仮想マシンを作成する (オプション 2)
-
アイコン (右上) を使用して Cloud Shell セッションを起動してください。 または、
https://shell.azure.com
に直接移動してください。 -
必ず [Bash] を選択してください。 必要に応じて、シェル ストレージを構成します。
-
次のコマンドを入力して、仮想ネットワークを作成してください。 ダイアログが表示されたら、VM のユーザー名とパスワードを入力してください。 待機中に、仮想マシンの作成に関連付けられているすべてのパラメーターについて、az vm create コマンド リファレンスをチェックアウトしてください。
az vm create --name myCLIVM --resource-group az104-rg8 --image Ubuntu2204 --admin-username localadmin --generate-ssh-keys
-
コマンドが完了したら、az vm show を使用してマシンが作成されたことを確認してください。
az vm show --name myCLIVM --resource-group az104-rg8 --show-details
-
powerState が VM Running であることを確認してください。
-
az vm deallocate を使用して仮想マシンの割り当てを解除してください。 確認するには、「Yes」と入力してください。
az vm deallocate --resource-group az104-rg8 --name myCLIVM
-
az vm show を使用して、powerState が VM deallocated であることを確認してください。
ご存知でしたか? Azure を使用して仮想マシンを停止すると、状態が割り当て解除になります。 これは、静的でないパブリック IP が解放され、VM のコンピューティング コストの支払いを停止することを意味します。
リソースのクリーンアップ
自分のサブスクリプションで作業している場合は、お手数ですが、ラボ リソースを削除してください。 これにより、リソースが確実に解放されるため、コストが最小限に抑えられます。 ラボ リソースを削除する最も簡単な方法は、ラボ リソース グループを削除することです。
- Azure portal で、リソース グループを選び、[リソース グループの削除]、[リソース グループ名を入力してください] の順に選び、[削除] をクリックします。
- Azure PowerShell を使用する場合は、「
Remove-AzResourceGroup -Name resourceGroupName
」と入力します。 - CLI を使用する場合は、「
az group delete --name resourceGroupName
」と入力します。
Copilot を使用して学習を拡張する
Copilot は、Azure スクリプト ツールの使用方法を学習するのに役立ちます。 Copilot は、ラボでは対象外の、またはさらに詳しい情報が必要な領域でも役立ちます。 Edge ブラウザーを開き、Copilot (右上) を選択するか、copilot.microsoft.com に移動します。 これらのプロンプトを試すには数分かかります。
- Linux 仮想マシンを作成するための手順と Azure CLI コマンドを教えてください。
- 仮想マシンをスケーリングしてパフォーマンスを向上できる方法を概説してください。
- Azure Storage のライフサイクル管理ポリシーと、それらによってコストを最適化できる方法について説明してください。
自習トレーニングでさらに学習する
- Azure で Windows 仮想マシンを作成する。 Azure portal を使用して Windows 仮想マシンを作成します。 リモート デスクトップを使用して実行中の Windows 仮想マシンに接続する
- Virtual Machine Scale Sets を使用してスケーラブルなアプリケーションを構築する。 Virtual Machine Scale Sets のコストを最小限に抑えながら、負荷の変化に合わせてアプリケーションを自動的に調整できるようにします。
- Azure Bastion を使用して Azure portal から仮想マシンに接続する。 Azure Bastion をデプロイして Azure portal 内で直接 Azure 仮想マシンに安全に接続して既存のジャンプボックス ソリューションを効果的に置き換え、診断ログを使用してリモート セッションを監視し、ユーザー セッションを切断してリモート セッションを管理します。
要点
以上でラボは完了です。 このラボの要点は次のとおりです。
- Azure 仮想マシンは、オンデマンドでスケーラブルなコンピューティング リソースです。
- Azure 仮想マシンには、垂直方向と水平方向の両方のスケーリング オプションが用意されています。
- Azure 仮想マシンの構成には、オペレーティング システム、サイズ、ストレージ、ネットワーク設定の選択が含まれます。
- Azure Virtual Machine Scale Sets では、負荷分散が行われる VM のグループを作成して管理することができます。
- 仮想マシン スケール セット内の仮想マシンは、同じイメージと構成から作成されます。
- 仮想マシン スケール セットでは、VM インスタンスの数は、需要または定義されたスケジュールに応じて自動的に増減できます。