目次
Virtual Machine(VM)とは?
Virtual Machine(VM)とはAzureの提供する仮想マシンサービスです。
VMを利用する事で、アプリケーションを実行する為のWebサーバーや、データベースを作成する為のDBサーバーなどの構築が可能です。
仮想マシンとは、1つの物理的なマシン(コンピューターの実態)で複数のコンピューターを動かす技術(仮想化)によって作成された仮想的なコンピューターです。
AzureやAWSなどのクラウドベンダーは物理マシンを多数保持し、それぞれの物理マシンで仮想化を行う事で、大量の仮想マシンを生み出し、ユーザーへ提供しています。
クラウドベンダーが提供する仮想マシンを利用する事で、自社でハードウェアを保持する必要が無くなり、コストの削減や、マシンの拡張を容易にするなどのメリットがあります。
また、VMはIaaS(Infrastructure as a Service)であり、カスタマイズ性が高いというメリットがあります。
ユースケース
主な利用ケースはクラウド上でのサーバーの作成が挙げられます。VMを利用し、WebサーバーやDBサーバーを作成する事が出来ます。
より実務的な視点見ると、クラウド上でオンプレミスと同等のサーバーを構築し、クラウド移行を実施するというケースでよく利用されます。
メリット/デメリット
● メリット:IaaSサービスの為サーバーを構築する際のカスタマイズ性が高い。
● デメリット:カスタマイズ性が高い分、サーバー構築に時間が掛かる上、OSやミドルウェアの管理が必要となる。
以上の様に、VMはサーバーを構築する際などに利用される仮想マシンサービスで、サーバーを作成する際のカスタマイズ性が高いサービスという事が分かりました。
続いて利用方法を見ていきましょう。
利用手順
※当ページでは2022年11月現在のVMについて解説します。クラウドサービスは頻繁にアップデートが施されるため、仕様が若干変わる可能性があります。
ログイン
まずは、Azure公式ページからAzureにログインしましょう。
Azureアカウントを保持している方はSign inを、保持していない方はFree accountよりアカウントを作成しましょう。
VMの新規作成
サインインすると、以下のようなポータル画面が表示されます。こちらで、Virtual Machineを選択しましょう。
Virtual Machieを選択すると、VMの管理画面に遷移します。既にVMを立ち上げている場合、こちらに作成済みのVMが表示されます。
左上の”作成”をクリックし、Azure 仮想マシンを新規作成します。
基本設定タブ
基本タブではVMの作成先やスペック、アクセス方法などの基本情報を設定します。
プロジェクトの詳細
- サブスクリプション(課金や権限を管理する単位):ご自身のサブスクリプションを選択します。
- リソースグループ(サブスクリプション内のリソースを束ねる単位):利用ケースに合わせて既存のリソースグループもしくは新規作成を選択します。ここでは新規作成で”vm-test-rg”と命名します。※リージョンが異なっても同じリソースグループにてまとめる事が可能です。
インスタンスの詳細
- 仮想マシン名:仮想マシンの名前を付けます。何の為に作成されたリソースか分かりやすい名前を付与しましょう。ここでは、”test-vm”とします。
- 地域:(Asia Pacific) Japan Eastを選択します。
- 可用性オプション:選択肢は、冗長性なし(99%)・可用性ゾーン・仮想マシンスケールセット・可用性セットです。今回は可用性ゾーンを選択し、VMを配置する可用性ゾーンを選択します。以下が選択肢の説明です。
- 冗長性なし:可用性を高める為の追加オプションを付与しません。
- 可用性ゾーン:VMを配置する可用性ゾーンを選択する事が可能となります。
- 仮想マシンスケールセット:VMの代わりにVM Scale Setを作成します。
- 可用性セット:障害ドメイン(同一の電源を共有しているマシンの集合)、更新ドメイン(同一時間にOSアップデートが実施される集合)の設定を行います。ドメインの数を増やし、VMを複数ドメインに分散させる事で、同一のタイミングで停止するリスクを軽減させる事が出来ます。
- 可用性ゾーン:可用性オプションを選択するとこちらの選択肢が出現します。VMを配置する可用性ゾーンを選択します。今回はゾーン1を選択します。
- セキュリティの種類:セキュリティ要件に合わせた設定が可能です。ここでは”Standard”を選択します。以下が各選択肢の説明です。
- Standard:VMのデフォルトのセキュリティレベルとなります。
- トラステッド起動の仮想マシン:VM起動時のマルウェアへの感染リスクを軽減します。
- 機密の仮想マシン:機密性の高いVMを利用します。厳しいセキュリティ要件を満たす必要がある際に選択します。
- イメージ:VMに利用するOSを指定します。今回は”Windows Server 2019 Datacenter – Gen2″を利用します。
- VMアーキテクチャ:CPUのアーキテクチャを指定します。
- Azure Spot割引で実行する:いつ利用停止されるか分からないVMを利用する事で低価格での利用ができるオプションです。今回はチェックを入れません。
- サイズ:VMの処理能力を指定します。要件に合わせてvcpuとメモリの容量を決定します。今回は”Standard_D2s_v3 – 2 vcpu 数、8GiBのメモリ($94.17/月)”を選択します。※作成後、リサイズが可能です(リブートされます)。
管理者アカウント
- 認証の種類:仮想マシンに接続する際の認証方法を選択します。今回はパスワードを選択し、ログインの際に利用するユーザー名とパスワードを設定します。※ユーザー名とパスワードは後程VMへの接続で利用する為、メモを取っておいてください。
- SSH公開キー:秘密鍵と公開鍵を利用した認証方法で、セキュアな接続が可能です。
- パスワード:ユーザー名とパスワードを利用した認証方法です。
受信ポートの規制
- パブリック受信ポート:インターネットからのアクセスを許可するポートを選択します。
- なし:インターネットから仮想マシンへのアクセスを不可能にします。
- 選択したポートを許可する:インターネットからアクセスを受け付けるポートを指定します。
- 受信ポートを選択:アクセスを受け付けるポートを指定します。今回はRDPを利用して接続を確認するので、RDPを選択します。※Linuxの場合SSH接続、WindowsOSの場合RDP接続を選択します。
ライセンス
- 既存の Windows Server ライセンスを使用しますか?:既にWindowsのライセンスを持っている企業はライセンスを使用できるケースがあります。今回はライセンスは利用しないのでチェックは入れません。
ディスク
ディスクタブでは、OSディスク(OSにデフォルトで付与されているディスク)とデータディスク(OSディスク以外に追加で付与するディスク)について設定が可能です。また、ディスクはVM構築後に追加する事も可能です。
VM disk encryption
- ホストでの暗号化:VMのキャッシュ、一時ディスク、付随ディスクを暗号化する設定です。今回はチェックを入れません。
OS disk
- OSディスクの種類:OSディスクの種類を選択できます。ここではStandard SSDを選択します。以下が選択肢の説明です。
- Premium SSD:高パフォーマンスなSSDです。本番サーバーに利用する事が多いです。
- Standard SSD:PremiumSSDより低コスト・低パフォーマンスなSSDです。開発環境などに利用する事が多いです。
- Standard HDD:HDDです。バックアップなどに利用されます。
※SSD:高速な読み書きが可能なディスク HDD:大容量データを扱う事に適したディスク
- VMと共に削除:チェックするとVMが削除された際にDiskも削除するように設定されます。
- Key management:ディスクデータの暗号化に関する設定です。今回はプラットフォームマネージドキーを選択します。以下が選択肢の説明です。
- プラットフォームマネージドキー:Azure Storage Accountで暗号化します。
- カスタマーマネージドキー:ユーザー自前の暗号化キーを利用します。
- プラットフォームマネージドキーとカスタマーマネージドキー:プラットフォームマネージドキーとカスタマーマネージドキーの両方を用いて暗号化します。
- Ultra Diskの互換性を有効にする:高パフォーマンスのディスクストレージを利用する為の設定です。今回はチェックを入れません。
データディスク
この項目は、外部接続するデータディスクを追加するための設定です。こちらは別VMへ接続変更も可能です。今回はこちらは特に変更を加えません。
詳細
- マネージドディスクを使用:Azure側にディスク管理を委託したい場合こちらをチェックします。今回はチェックは入れません。
- エフェメラルOSディスク:OSディスクは通常Azure Storage Accountに作成されますが、こちらにチェックを入れるとVMにOSディスクが作成されます。読み書きが高速化されます。今回はチェックを入れません。
ネットワーク
ネットワークタブでは、作成するVMのIPアドレスやポート、配置に関して設定を行います。
ネットワークインターフェイス
- 仮想ネットワーク:接続する仮想ネットワークを指定します。作成済みの仮想ネットワークの選択もしくは新規作成を行います。今回は”vm-test-rg-vnet”という仮想ネットワークを作成します。
- サブネット:接続するサブネットを指定します。
- パブリックIP:仮想ネットワークの外からVMと通信する際に利用するIPアドレスを指定します。
- NICネットワークセキュリティグループ:仮想マシンへの通信に関するセキュリティの設定です。カスタムしたい場合は詳細を選択します。今回はBasicを選択します。
- パブリック受信ポート:基本タブで指定したインターネットのアクセスを許可するポートに関する設定です。
- 受信ポートを選択:基本タブで指定したインターネットのアクセスを許可するポートに関する設定です。
- VMが削除されたときにパブリックIPとNICを削除する:チェックすると、VMが削除された際にパブリックIPとNICが自動で削除されます。今回はチェックを入れます。
- 高速ネットワークを有効にする:特定のインスタンスタイプで利用可能なオプションで、仮想マシン間で非常に高速な通信の確立が可能となります。今回はチェックは入れません。
負荷分散
- この仮想マシンを既存の負荷分散ソリューションの後ろに配置しますか?:ロードバランサーの後ろにVMを設置する場合にチェックを入れます。今回はチェックを入れません。
管理
管理タブでは、セキュリティや監視の設定を行います。
Microsoft Defender for Cloud
ID
- システム割り当てマネージドIDの有効化:マネージドIDを利用した認証を有効にしたい場合チェックを入れます。今回はチェックを入れません。
※マネージドID:リソースに付与されるAzure AD上のIDです。今回はチェックを入れません。
Azure AD
- Azure ADでログインする:Azure ADを利用した認証を有効にしたい場合チェックを入れます。今回はチェックを入れません。
※Auzre ADを利用し、VMにログインし、MFAを利用して他リソースのアクセス
自動シャットダウン
- 自動シャットダウンを有効にする:仮想マシンを指定した時間にシャットダウンする設定をします。削除忘れの防止になります。今回はチェックを入れます。
- シャットダウン時刻:“自動シャットダウンを有効にする”をチェックすると出現します。シャットダウンを実行する時刻を決定します。今回は2:00とします。
- タイムゾーン:“自動シャットダウンを有効にする”をチェックすると出現します。タイムゾーンを指定します。”(UTC+9:00)大阪、札幌、東京”を選択します。
- シャットダウン前の通知:チェックを入れると、シャットダウンされる前に通知が送付されます。今回はチェックを入れます。
- 電子メール:通知を送信する宛先を入力します。
バックアップ
- バックアアップの有効化:バックアップを有効にする場合チェックを入れます。今回はバックアップを作成しない為、チェックは入れません。
Site Recovery
- ディザスターリカバリーを有効にする:災害発生時もシステムを稼働させたい場合チェックを入れます。今回はチェックは入れません。
ゲストOSの更新プログラム
- ホットパッチを有効にする:チェックを入れると、OSの更新プログラムを実行する際に再起動しなくなります。今回はチェックを入れません。
- パッチオーケストレーションオプション:更新プログラムなどのパッチを手動で行うか、自動で実施するかを設定できます。自動にして常に最新の状態にする事が望ましいですが、可用性などの非機能要件と照らし合わせて設定する事が必要です。今回は”OSによる自動処理(Windoesの自動更新)”を選択します。
Monitoring
Monitoringタブでは、アラートや監視に関する項目の設定を行います。
Alerts
- Enable recommended alert rules:推奨されるアラートルールを適用します。推奨されるアラートルールは以下のようになります。CPUやディスクの使用状況に応じたアラートが必要な場合はチェックを入れます。
Diagnostics
- Boot diagnostics:VMを起動する際のエラーを診断する機能です。今回はDisableとします。以下が選択肢の説明となります。
- Enable with managed storage account:Azureが管理するストレージアカウントにログを保存する形式で有効化します。有効化する場合はこちらが推奨されています(パフォーマンスの観点)。
- Enable with custom storage account:ユーザー独自で管理するストレージアカウントにログを保存する形式で有効化します。
- Disable:診断を無効とします。
- Enable OS guest diagnostics:VMのログを収集する事が可能となります。今回はチェックを入れません。
詳細
詳細タブでは、仮想マシンのその他のオプションを設定します。
拡張機能
- 拡張機能:VMにウィルス対策などの機能を追加する際に利用します。今回は拡張機能は追加しません。
VMアプリケーション
- VMアプリケーション:VM作成直後にインストールしたいアプリケーションがあればここで定義が出来ます。
- 例:ChromeをVMにインストールしたい場合など
カスタムデータ
- カスタムデータとcloud-init:VMが作成される際に実行する処理を定義する事が出来ます。
- 例:ミドルウェアをインストールする処理を記載 → WebサーバーとしてVMを立ち上げる事が可能となる。
ユーザーデータ
- ユーザーデータ:カスタムデータの新しいバージョンのようなものです。カスタムデータと同様、VMが作成される際に実行する処理を定義する事が出来ます。VM作成時に実行する処理は無い為今回はスキップします。
ホスト
- ホストグループ:Azureが保持する物理サーバーを占有したい場合にこちらを設定します。今回は占有する必要が無い為、設定は行いません。
容量予約
- 容量予約グループ:特定のリージョン・サイズのVMを事前に確保できる機能です。ごくまれにAzureの基盤の問題によりVMがデプロイできない事があります。そういった状況を回避する為に利用する事が可能です。今回は設定不要です。
タグ
タグタブでは、リソースを識別する為のキー/バリューのペア(タグ)を設定する事が可能です。
今回はタグは設定しません。
確認および作成
確認および作成タブでは、ここまでに定義した設定を確認する事が出来ます。問題が無ければ作成ボタンを押しましょう。
※Automainのテンプレートをダウンロードするを押下すると、設定をJSON形式としてダウンロード出来ます。テンプレ―トとして再利用する事が可能となります。
以下のように”デプロイが完了しました”と表示されたらVMの作成が正常に完了です。
“リソースに移動”を押して作成したVMの管理画面に遷移します。
仮想マシンの接続
ここから仮想マシンの接続方法について説明します。
受信ポートの規制にてRDPでの接続を許可したので、RDPを利用して接続します。
左上の”接続”を押下し、RDPを選択しましょう。
RDPを選択すると、接続のRDPタブに遷移します。”RDPファイルのダウンロード”を押下します。すると、RDPファイルがダウンロードされます(rdpファイル)。ダウンロード完了後、rdpファイルを開きましょう。
ファイルを開くと”このリモート接続の発行元を識別できません。接続しますか?”という警告が表示されますが、問題無いので”接続”を選択します。
すると、”資格情報を入力してください”というポップアップが出現します。”別のアカウントを使用する”を選択し、”管理者アカウント”の項目で設定したユーザー名とパスワードを入力します。
※PCの設定の問題でユーザー名の後ろに@gmail.comなどのドメイン名が付いてしまう場合は”.\”を先頭に付与しましょう。
初回接続では、他のPCからVMの検索を可能にするか?という旨の確認が表示されます。自身のPC以外からの接続を拒否する為に”No”を選択します。
これでVMへの接続が完了です。(初回アクセス時はServer Managerが開かれています)
関連記事