Azure Service Bus と Queue Storage でメッセージング処理を Managed Identity で実装する

Azure Service Bus Queue と Azure Storage Queue の 2 種類のメッセージング サービスを、.NET 8 コンソール アプリと Managed Identity (DefaultAzureCredential) でパスワードレス接続して送受信を比較します。

中級約 60 分Azure 実環境

ラボ概要

シナリオ: あなたはクラウド移行プロジェクトのソリューション エンジニアです。社内の複数システム間で非同期メッセージングを導入する検討を始めましたが、Azure には Service Bus と Queue Storage という 2 つのキュー サービスがあります。両者を実機で試して、機能差(配信保証、ロック期間、優先順位、デッドレター)とコスト差を体感し、適切なサービスを選定できるようになりましょう。

学習目標:

  • Azure Service Bus Namespace と Queue を Basic SKU で作成する
  • Azure Storage Account の Queue Service にキューを作成する
  • 両サービスの RBAC ロール (Azure Service Bus Data Owner / Storage Queue Data Contributor) が事前構築で付与済みであることを確認する
  • .NET 8 コンソール アプリを 2 本作成し、DefaultAzureCredential でパスワードレス接続する
  • メッセージの送信・受信・完了 (Complete) を実装し、両サービスの API 差異を理解する
  • Service Bus の Lock Duration、Storage Queue の Visibility Timeout の概念を実機で確認する
  • 両サービスの選定指針(機能 / 性能 / コスト)を整理する
前提知識: .NET / C# の基本構文、async/await の理解、Azure Portal と Cloud Shell の基本操作、Azure RBAC の概念。

完了条件: Service Bus Queue myqueue と Storage Queue myqueue の両方が作成され、Cloud Shell から起動した 2 つの .NET コンソール アプリが Managed Identity 経由でメッセージの送受信に成功していること。Cloud Shell ターミナルに Received message: Test message が両方のアプリで表示される状態。

ラボの構成

  1. 1Cloud Shell を初期化する
  2. 2環境変数とリソース情報を取得する
  3. 3Service Bus Queue を作成する
  4. 4Cloud Shell の実行 ID を確認する
  5. 5Service Bus Queue 用の .NET アプリを作成する
  6. 6Storage Queue を作成する
  7. 7Storage Queue 用の .NET アプリを作成する
  8. 8両サービスの差異を考察する (任意)

詳細な手順は、ラボ開始後に画面内のガイドとして表示されます。

手順のプレビュー(最初のステップ)

1. Cloud Shell を初期化する

  • 提供された資格情報で Azure Portal (https://portal.azure.com/) にサインインします
> 注: 「サインインの状態を維持しますか?」と表示されたら はい を選択します。
  • Azure Portal 上部の Cloud Shell アイコン (>_) をクリックします
  • 初回起動時はストレージ ダイアログが出ます
- Bash を選択します

- ストレージ アカウントは必要ありません (No storage account required) または既定設定のまま 適用 (Apply) をクリックします

  • プロンプトが返ってきたら、利用可能な .NET SDK バージョンを確認します
  dotnet --version

> 注: .NET 8 LTS (8.0.x) が表示されることを確認します。

残り 7 セクションの手順は、ラボを開始すると画面内に表示されます

構成図

構成図

参考リソース

このラボが対応する試験の模擬問題集

本番形式の問題で理解度を確認できます。各試験とも先頭 15 問は無料です。

AZ-104Azure Administrator練習テスト 2 回・全 160 問AZ-305Azure Solutions Architect練習テスト 2 回・全 160 問