Azureで「アプリを動かす」方法は1つではありません。仮想マシン・コンテナー・関数、そしてWebアプリ用のサービス。どれを選ぶかで、自分で管理する範囲も、かかる料金の形も変わります。
試験では「こういう要件です。どれを使いますか?」という形で問われます。暗記より、選び分けの基準を持つことが近道です。
- 選び分けの軸は「自分でどこまで管理したいか」。仮想マシン → コンテナー → 関数 の順に、管理する範囲が小さくなります。
- OSを自分で設定したいなら仮想マシン。既存のアプリをそのまま移す(リフト&シフト)にも向きます。
- 使ったときだけ払いたいなら関数(Azure Functions)。
- まぎらわしい3つ——Scale Sets=数を増やす/可用性セット=同時に落ちないよう分ける/可用性ゾーン=物理的に離す。

3つの計算方式:仮想マシン・コンテナー・関数
まず全体像です。Azureでアプリを動かす方法は、大きく3つに分かれます。
| 方式 | ひとことで | 自分で管理する範囲 |
|---|---|---|
| 仮想マシン | クラウド上のサーバー1台を借りる | OSより上をすべて |
| コンテナー | アプリと必要なものを箱に詰めて動かす | アプリと箱の中身 |
| 関数 | コードだけを置いて、呼ばれたら動く | コードだけ |
下に行くほどラクになる代わりに、自由度が減ります。この一直線の関係が頭に入っていれば、要件を読んだときに迷いません。
Azure Virtual Machines:OSごと自分で管理する
Azure Virtual Machines(仮想マシン、VM)は、クラウド上に作るサーバーです。IaaSの代表で、OSに直接ログインして、好きなソフトをインストールできます。
向いているのは次のような場面です。
- 社内で動かしていたアプリを、できるだけ改修せずにクラウドへ移したい(リフト&シフト)
- OSのバージョンや設定を、自分たちで細かく決めたい
- 特殊なソフトウェアをインストールする必要がある
仮想マシンを作るときに、一緒に要るもの
「VMを1台作る」と言っても、実際にはVM単体では動きません。次のものがセットで必要になります。
| 必要なもの | 役割 |
|---|---|
| 仮想ネットワークとサブネット | VMを置くネットワーク。どこにもつながっていないと通信できません |
| ネットワークインターフェイス(NIC) | VMをネットワークにつなぐ口 |
| ディスク(OSディスク/データディスク) | OSとデータの保存先 |
| パブリックIPアドレス(必要な場合) | インターネットから直接アクセスするときに使います |
試験では「VMを作成するときに一緒に作成されるものはどれか」という形で問われることがあります。「ネットワークとディスクが要る」と覚えておいてください。
Virtual Machine Scale Sets:台数を自動で増減させる
Azure Virtual Machine Scale Setsは、同じ構成のVMをひとまとまりで扱い、需要に応じて台数を自動的に増減させるしくみです。
アクセスが増えたら台数を増やし、落ち着いたら減らす。これがスケールアウト/スケールインで、クラウドらしい使い方の代表例です。公式もVMの高可用性の手段として、まずScale Setsを勧めています。
可用性セット:同時に落ちないよう配置を分ける
可用性セットは、名前が似ていますが役割がまったく違います。公式の説明はこうです。
「可用性セットは、関連するVMが同時にダウンする相互関係がある障害の可能性を減らすVMの論理グループです。可用性セットは、複数の障害ドメインにVMを分散させ、信頼性を向上させます。」
ここで2つの言葉が出てきます。
- 障害ドメイン:電源やネットワークを共有するハードウェアのまとまり。分けておけば、片方が壊れてももう片方は生きています
- 更新ドメイン:まとめて再起動される可能性があるグループ。分けておけば、メンテナンスで全台が同時に止まりません
公式によると、各可用性セットには最大3つの障害ドメインと20個の更新ドメインを含めることができ、これらは作成後に変更できません。また「可用性セットを使用するための追加コストは発生しません」と明記されています。
公式は「可用性セットは高可用性を提供しますが、可用性ゾーンと同じレベルの回復性を提供しません」と明記しています。可用性セットは同じデータセンター内での分散なので、データセンターごと止まる障害には対応できません。信頼性を最優先するなら可用性ゾーンです。
Azure Virtual Desktop:デスクトップをクラウドに置く
Azure Virtual Desktop(AVD)は、WindowsのデスクトップやアプリをAzure上で動かし、手元の端末から使えるようにするサービスです。
使いどころは「在宅勤務でも社内と同じ環境を使いたい」「私物端末にデータを残したくない」といった場面です。サーバーアプリの実行基盤ではなく、利用者のデスクトップを配るものという点を押さえてください。
コンテナー:アプリを箱に詰めて動かす
コンテナーは、アプリと動かすのに必要なものをひとまとめにした「箱」です。OSまるごとを持ち運ぶ仮想マシンより軽く、起動が速いのが特徴です。Azureには2つの代表的なサービスがあります。
| サービス | 向いている場面 |
|---|---|
| Azure Container Instances | コンテナーを手軽に1つ動かしたいとき。設定が少なく、すぐ試せます |
| Azure Kubernetes Service | コンテナーをたくさん、まとめて運用したいとき。自動復旧やスケールを任せられます |
Azure Functions:使ったときだけ動く
Azure Functionsは、コードだけを置いておき、何かのきっかけで呼ばれたときに実行されるしくみです。サーバーレスの代表例で、動いた分だけ課金されます。
「毎晩1回ファイルを整形する」「ファイルがアップロードされたら通知を送る」といった短い処理に向きます。逆に常に動き続ける必要がある処理には向きません。
Webアプリはどこで動かす?
Webサイトやアプリを動かす方法は、上の3つ全部が候補になります。ここで登場するのがAzure App Serviceです。
App ServiceはPaaSで、OSやミドルウェアの面倒はAzureが見てくれます。利用者はアプリを置くだけ。「Webアプリを動かしたいが、サーバーの管理はしたくない」ならこれが第一候補になります。
【比較】結局どれを選ぶか
| 要件に出てくる言葉 | 選ぶもの |
|---|---|
| OSに入って設定したい/既存アプリをそのまま移したい | Azure Virtual Machines |
| 同じ構成のVMを需要に応じて自動で増減したい | Virtual Machine Scale Sets |
| VMが同時に停止しないようにしたい(同じデータセンター内) | 可用性セット |
| データセンターの障害にも耐えたい | 可用性ゾーン |
| デスクトップ環境を利用者に配りたい | Azure Virtual Desktop |
| コンテナーを手軽に1つ動かしたい | Azure Container Instances |
| コンテナーを大量に運用したい | Azure Kubernetes Service |
| 短い処理を、使ったときだけ動かしたい | Azure Functions |
| Webアプリを、サーバー管理なしで動かしたい | Azure App Service |
試験ではこう問われる
| 問われ方 | 判断のしかた |
|---|---|
| Scale Sets と 可用性セットの区別 | 数を増やすのか、同時に落ちないよう分けるのか |
| 可用性セットで台数は増えるか | 増えない |
| 可用性セットに追加料金はかかるか | かからない(VMの料金だけ) |
| 可用性セットと可用性ゾーン、どちらが強いか | 可用性ゾーン(公式が明記) |
| 「改修せずに移したい」 | 仮想マシン |
| 「使っていないときは課金されたくない」 | Azure Functions |
| 「サーバー管理なしでWebアプリを動かしたい」 | Azure App Service |
確認クイズ
読んだ直後に3問だけ。選ぶとその場で正誤と解説が出ます。
社内で長年使ってきた業務アプリを、できるだけ改修せずにAzureへ移したい。OSの設定もこれまでどおり自分たちで行う必要があります。適した選択肢はどれですか。
1つ選んでください
仮想マシンまわりのしくみについて、次の各文が正しいかどうかを判定してください。
各文について「はい」か「いいえ」を選んでください(文ごとに1点)
1. Virtual Machine Scale Sets を使うと、同じ構成の仮想マシンを需要に応じて自動的に増減できる。
2. 可用性セットを使うと、仮想マシンの台数が自動的に増える。
3. 可用性セットの利用には、追加の料金がかからない。
「1日1回、深夜に届いたファイルを整形して別の場所へ保存する」という短い処理を動かしたい。使っていない時間に料金を払いたくないという要件があります。適したものはどれですか。
1つ選んでください
まとめ
- 選び分けの軸は「自分でどこまで管理したいか」
- 仮想マシン=OSごと管理。改修せずに移すならこれ。ネットワークとディスクがセットで要る
- Virtual Machine Scale Sets=台数を自動で増減/可用性セット=同時に落ちないよう分散(追加料金なし・最大3障害ドメイン/20更新ドメイン)
- 可用性ゾーンのほうが可用性セットより信頼性は高い(公式の明記)
- コンテナー=Container Instances(手軽に1つ)/Kubernetes Service(大量運用)
- Azure Functions=使ったときだけ動いて、使ったときだけ課金
- Azure App Service=サーバー管理なしでWebアプリを動かす
※本記事は、Microsoft公式のAZ-900学習ガイド(2026年7月20日現在のスキル)および Microsoft Learn の各サービス公式ドキュメントの記載(2026年8月6日確認)にもとづき、エンジニアKが作成しています。引用は公式の日本語表記のままです。仕様は変更されることがあります。最新情報は必ずMicrosoft公式サイトでご確認ください。本サイトはMicrosoft Corporationの公式サイトではありません。Microsoft、Azure、Microsoft Entra ID等は同社の商標です。

