Microsoft Azureの勉強記録 〜App Serviceの前に知っておきたい基礎知識編〜
はじめに
前回の記事「Microsoft Azureの勉強記録 〜Azure全体像編〜」では、Azureというクラウドサービスの概要についてまとめました。
今回は、実際に「Azure App Service」に触れる前段として、書籍『改訂2版 全体像と用語がよくわかる! Microsoft Azure入門ガイド』(山田裕進著)を参考にしながら、Azureを使う上で押さえておきたい前提知識を整理していきます。
私自身、AWSの利用経験はあるのですが、Azureは今回が初になります。
AWSとの違いにも触れつつ、クラウド初心者の方や、Azureを初めて触る方にも参考になればと思います。
Azureの主要サービスカテゴリ
Azureは数百種類を超えるサービスを提供していますが、大まかに以下のようなカテゴリに分けられます。
カテゴリ | 主なサービス例 | 概要 |
---|---|---|
コンピューティング | App Service、VM、Functions | アプリを実行するための計算リソース |
ストレージ | Blob Storage、Disk Storage | データやファイルの保存 |
データベース | Azure SQL、Cosmos DB | 構造化・非構造化データの管理 |
ネットワーク | VNet、Load Balancer、CDN | 通信・接続・負荷分散 |
アイデンティティ | Azure AD、RBAC | アクセス管理と認証・認可 |
App Serviceは「コンピューティング」に該当しますが、実際に利用するには「ストレージ」や「アイデンティティ」など、複数のサービスとの連携が必要となります。
Azureのリソース構成の基本「サブスクリプション」「リソースグループ」「リソース」
Azureでサービスを構築・運用する上で、最初につまずきやすいのが「リソース管理の階層構造」です。
「サブスクリプション→リソースグループ→リソース」という3段階の概念を理解することで、構成や請求、運用の整理・効率化がしやすくなります。
サブスクリプション・リソースグループ・リソースの関係は以下の図のようになっています。
Azure Resource Manager とは から引用
- サブスクリプション…「課金」や「権限」の大元
- リソースグループ…環境ごとのまとまり(例:本番、開発)
- リソース…App ServiceやStorageなどの個別サービス
サブスクリプション
Azureの課金・契約単位です。
利用料金はこの単位で発生し、1つのサブスクリプションの中に複数のリソースグループやリソースを作成できます。
複数のプロジェクトや部署ごとにサブスクリプションを分けて、請求や管理を独立させることが可能です。
リソースグループ
リソースのグルーピング単位です。
リソースグループ内のすべてのリソースに対して一括操作(削除・アクセス制御など)ができます。
原則、リソースは1つのグループにしか属せません。(移動は可能)
リソース
Webアプリやデータベース、ストレージなど、実際にAzureで使うサービスそのものが「リソース」です。
Azureの管理ポータル上で「作成」や「構成」を行う対象そのものを指します。
リソース名 | サービスの種類 | 主な用途 |
---|---|---|
Web App | App Service | Webサイト/APIのホスティング |
Azure SQL | データベース | RDB(SQL Server互換) |
Storage | ストレージアカウント | 画像やログなどの保存 |
Key Vault | セキュリティ | シークレットや証明書の安全な保管 |
Azureリージョンと可用性の考え方
Azureのデータセンターは全世界に分散しており、利用者はその中からリージョンを選んでリソースを配置します。
例えば以下のようなリージョンがあります。
リージョン名 | 実際の場所 |
---|---|
Japan East | 東日本(東京近辺) |
Japan West | 西日本(大阪近辺) |
East US | 米国東部(バージニア) |
Azureは、可用性ゾーン(Availability Zones)や可用性セット(Availability Sets)を活用することで、冗長構成や耐障害性を実現できます。
例:Japan East+可用性ゾーン
App ServiceはP1v2以上のプランであれば可用性ゾーン対応が可能です。
アプリの高可用性が求められる場合、ゾーンにまたがって構成することで障害耐性を向上させることが可能です。
AzureとAWSの用語・概念の比較
Azureを学び始めたとき、AWS経験者として「これは何に相当するんだろう?」と思う場面が多々ありました。
代表的な用語の対応表を以下にまとめます。
概念・役割 | AWS用語 | Azure用語 |
---|---|---|
仮想マシン | EC2 | Virtual Machines |
サーバーレス | Lambda | Azure Functions |
PaaS | Elastic Beanstalk | App Service |
オブジェクト保存 | S3 | Blob Storage |
IAM | IAM | Azure Active Directory(Azure AD)・RBAC |
Azureでは、同じ名前のサービスでも挙動が違うことがあるため、注意が必要です。
AzureポータルとCLI・PowerShell
Azureではリソースの操作に複数の手段があります。
操作方法 | 特徴 |
---|---|
Azureポータル | GUI操作。視覚的で直感的。初学者におすすめ |
Azure CLI | スクリプト向け。Linuxユーザーには馴染みやすい |
Azure PowerShell | Windowsユーザーや自動化スクリプトで便利 |
ARMテンプレート / Bicep | インフラ構成のコード化(IaC)。再現性のある構築が可能 |
App Serviceの作成も、Azureポータルで簡単に行えますが、構築作業が多くなるとCLIやIaCに移行した方が管理が楽になります。
最後に
今回はApp Serviceを利用する前に押さえておきたい全体的な基礎知識を整理しました。
これらはすべてのAzureサービスの土台となる概念であり、理解しておくことでApp Serviceの導入や運用をスムーズに行えるようになります。
次回は、いよいよ本題である App Serviceにフォーカスし、その仕組みやメリット、実際の使い方について掘り下げていこうと思います。
これからAzureを使ってWebアプリケーションを運用していきたい方にとって、より実践的な内容になると思うので、ご覧いただけると嬉しいです!
Discussion