MS_AzurePaaS - NetDevInfraWGinOSSConsortium/NetDevInfraWiki GitHub Wiki
- 戻る(Azure)
- AzureのPaaS
- Azure App Service
- Azure Kubernetes Service (AKS)
Azureの PaaS(ないしは CaaS、FaaS)。
補足(PaaS / CaaS / FaaS の関係): 本ページの節構成そのものが
「どこまでを Azure に任せるか」の段階を表している。← 自由度が高い 運用が楽 → IaaS ─── CaaS ─── PaaS ─── FaaS ─── SaaS (VM) (AKS/ACI) (App Service) (Functions)
形態 何を渡すか 何が残るか IaaS 何もしない(VM を借りる) OS の面倒を全部見る CaaS コンテナ イメージ オーケストレータの運用(AKS の場合) PaaS アプリのコード/成果物 ランタイム バージョンの追随 FaaS 関数 1 つ分のコード ほぼ無し(ただし制約が強い) 選択の指針はAzureの高可用性設計の
責任分界の表、および
クラウド アプリケーション アーキテクチャ ガイドの
「コンピューティング サービスの選択」を参照。実務上の判断としては、
状況 選択 既存アプリをそのまま動かしたい VM(Azureの仮想マシン) Web アプリを素直にホストしたい App Service コンテナ化済み、単純な構成 Container Apps / ACI Kubernetes の機能が要る AKS イベント駆動・実行時間が短い Functions という順に検討し、上から順に楽な方を選ぶのが定石である
(「AKS から検討する」と大抵オーバースペックになる)。
Azure Functions on Docker
補足(最新化:この分類に加わった選択肢): 本ページ執筆後に
重要な選択肢が追加されている。
サービス 位置付け Azure Container Apps CaaS と PaaS の中間。Kubernetes(KEDA / Dapr / Envoy)を隠蔽し、AKS の運用なしにコンテナを動かせる。現在、コンテナ ワークロードの第一候補 Azure Static Web Apps 静的サイト + Functions のバックエンド。SPA 向け Azure Spring Apps Spring Boot 専用の PaaS 特に Container Apps は、
本ページの「CaaS」欄にある ACI と AKS の
中間の使いどころを埋めるもので、
- ACI:単発のコンテナ実行(オーケストレーションなし)
- Container Apps:スケール・リビジョン管理あり、K8s の運用なし
- AKS:Kubernetes をフルに使う
という整理になる。
一方、Azure Red Hat OpenShift や
Cloud Foundry といった「Open PaaS」の位置付けは相対的に下がり、
「特定の製品エコシステムに合わせる必要がある場合」の選択肢になっている。
- (記載なし)
移行メモ: 原典の NoSQL の項は箇条書きの記号のみで
内容が記載されていなかったため、その旨を明記した。
補足(Azure の主なデータストア): 未記載部分を補っておく。
選択の考え方は
クラウド アプリケーション アーキテクチャ ガイドの
「データ ストアの選択」を参照。
種別 サービス RDBMS Azure SQL Database、SQL Managed Instance、Database for PostgreSQL / MySQL ドキュメント / キー値 Azure Cosmos DB(マルチモデル。グラフ・列指向にも対応) キー値(キャッシュ) Azure Cache for Redis テーブル(キー値) Azure Table Storage BLOB / ファイル Azure Blob Storage、Azure Files(Azureのストレージ) 分析 Azure Synapse Analytics、Microsoft Fabric 検索 Azure AI Search(旧 Azure Cognitive Search) なお、Azureの冗長化で述べたとおり、
データ層の冗長性はサービス レベル(SKU)の選択で決まるため、
アプリ層と同じ冗長度を選んでいるか確認が要る。
- Open PaaS(.NET開発基盤部会 Wiki)
- Azure App Service、Virtual Machines、
Service Fabric、Cloud Services の比較 | Microsoft Docs
https://docs.microsoft.com/ja-jp/azure/app-service/choose-web-site-cloud-service-vm - AKS / Azure Web App for Containers | 日経クロステック(xTECH)
https://xtech.nikkei.com/it/atclncf/service/00038/081700002/ - SPA から AD B2C で認証し、API Management 経由で Azure Functions を使う - Qiita
https://qiita.com/TsuyoshiUshio@github/items/75e8f2f3fc1d6f758971
- App Service や Web App for Containers による色んな
リリース方法(Blue-Green デプロイやカナリアリリース)
https://tech-lab.sios.jp/archives/22822 - App Service や Web App for Containers でのカスタムドメインの SSL
https://tech-lab.sios.jp/archives/23123 - クラウドネイティブってなに?
〜 Azure のアプリ開発実行基盤いろは 〜
https://tech-lab.sios.jp/archives/25654
Tags: 移行, クラウド, Azure, .NET開発, OWIN, ASP.NET, ASP.NET MVC, ASP.NET Web API