次の方法で共有


クイックスタート: Azure portal を使用して Azure Cache for Redis のイベントを Web エンドポイントにルーティングする

Azure Event Grid は、クラウドのイベント処理サービスです。 このクイックスタートでは、Azure portal から Azure Cache for Redis インスタンスを作成してそのイベントをサブスクライブし、イベントをトリガーして結果を表示します。 通常は、イベント データを処理し、アクションを実行するエンドポイントにイベントを送信します。 ただし単純化するために、このクイックスタートではメッセージを収集して表示する Web アプリにイベントを送信します。

Azure アカウントをお持ちでない場合は、開始する前に無料アカウントを作成してください。

最後に、イベント データが Web アプリに送信されたことを確認します。

Azure Event Grid ビューアーで JSON 形式のスケーリングを表示する。

Azure Cache for Redis キャッシュ インスタンスを作成する

  1. Azure portal で、Azure Cache for Redis を検索して選択します。

  2. Azure Cache for Redis ページで作成>Azure Cache for Redis を選択します。

  3. [新しい Redis Cache] ページの [基本] タブで、次の設定を構成します。

    • [サブスクリプション] : 使用するサブスクリプションを選択します。
    • リソース グループ: リソース グループを選択するか、[ 新規作成 ] を選択して新しいリソース グループ名を入力します。 すべてのアプリ リソースを同じリソース グループに配置すると、それらを簡単に管理または削除できます。
    • 名前: リージョン内で一意のキャッシュ名を入力します。 名前は次の必要があります。
      • 1 ~ 63 文字の文字列を指定します。
      • 数字、文字、ハイフンのみを含みます。
      • 先頭と末尾に数字または文字を使用します。
      • 連続するハイフンを含まない。
    • リージョン: キャッシュを使用する他のサービスの近くにある Azure リージョン を選択します。
    • キャッシュ SKU: 使用可能なサイズ、パフォーマンス、およびキャッシュの機能を決定する SKU を選択します。
    • キャッシュ サイズ: キャッシュ サイズを選択します。 詳細については、Azure Cache for Redis の概要に関するページを参照してください。

    [新しい Redis Cache] ページの [基本] タブを示すスクリーンショット。

  4. [ネットワーク] タブ 選択するか、[ 次へ: ネットワーク] を選択します。

  5. [ネットワーク] タブで、キャッシュに使う接続方法を選びます。 セキュリティにはプライベート エンドポイント をお勧めします。 [プライベート エンドポイント] を選択した場合は、[プライベート エンドポイントの追加] を選択し、プライベート エンドポイントを作成します。

  6. [ 詳細設定 ] タブを選択するか、[ 次へ: 詳細設定] を選択します。

  7. [ 詳細設定 ] ウィンドウで、次のオプションを構成します。

    • Microsoft Entra 認証またはアクセス キー認証を選択します。 Microsoft Entra 認証 は既定で有効になっています。
    • TLS 以外のポートを 有効に するかどうかを選択します。
    • Premium キャッシュの場合は、 可用性ゾーンを構成または無効にすることができます。 キャッシュの作成後に可用性ゾーンを無効にすることはできません。 Standard キャッシュの場合、可用性ゾーンは自動的に割り当てられます。 可用性ゾーンは Basic SKU では使用できません。
    • Premium キャッシュの場合は、 レプリカ数クラスタリングシャード数システム割り当てマネージド IDおよびデータ永続化の設定を構成します。

    次の図は、Standard SKU の [詳細設定 ] タブを示しています。

    Standard SKU キャッシュの [詳細] ウィンドウを示すスクリーンショット。

    重要

    可能であれば、マネージド ID と共に Microsoft Entra ID を使用して、キャッシュに対する要求を承認します。 Microsoft Entra ID とマネージド ID を使用した承認により、セキュリティが向上し、共有アクセス キーの承認よりも簡単に使用できます。 キャッシュでのマネージド ID の使用について詳しくは、キャッシュ認証への Microsoft Entra ID の使用に関する記事をご覧ください。

  8. 必要に応じて、[ タグ ] タブを選択するか、[ 次へ: タグ] を選択し、タグ名と値を入力してキャッシュ リソースを分類します。

  9. [ 確認と作成] を選択し、検証に合格したら [ 作成] を選択します。

新しいキャッシュのデプロイには数分かかります。 デプロイの進行状況は、ポータルの Azure Cache for Redis ページで監視できます。 キャッシュの状態が [実行中] と表示されたら、キャッシュを使用する準備が整います。

メッセージ エンドポイントの作成

キャッシュ インスタンスのイベントをサブスクライブする前に、イベント メッセージのエンドポイントを作成しましょう。 通常、エンドポイントは、イベント データに基づくアクションを実行します。 このクイックスタートを簡素化するために、イベント メッセージを表示する構築済みの Web アプリをデプロしします。 デプロイされたソリューションには、App Service プラン、App Service Web アプリ、および GitHub からのソース コードが含まれています。

  1. GitHub の README で [Deploy to Azure](Azure へのデプロイ) を選択して、ソリューションをサブスクリプションにデプロイします。

    [Azure へのデプロイ] ボタン。

  2. [カスタム デプロイ] ページで、次の手順を実行します。

    1. [リソース グループ] で、キャッシュ インスタンスの作成時に作成したリソース グループを選択します。 チュートリアルの完了後は、リソース グループを削除して容易にクリーンアップすることができます。
    2. [サイト名] に、Web アプリの名前を入力します。
    3. Web アプリのホストに使用する App Service プランの名前を [ホスティング プラン名] に入力します。
    4. [上記の使用条件に同意する] のチェック ボックスをオンにします。
    5. [購入] を選択します。
    設定 提案された値 説明
    サブスクリプション ドロップダウンで、ご自身のサブスクリプションを選択します。 この Web アプリを作成するサブスクリプション。
    リソース グループ ドロップ ダウンでリソース グループを選択するか、 [新規作成] を選択し、新しいリソース グループの名前を入力します。 すべてのアプリ リソースを 1 つのリソース グループに配置することで、それらをまとめて簡単に管理または削除できます。
    サイト名 Web アプリの名前を入力します。 この値を空にすることはできません。
    ホスティング プラン名 Web アプリをホストするために使用する App Service プランの名前を入力します。 この値を空にすることはできません。
  3. ポータルでアラート (ベルのアイコン) を選択し、 [リソース グループに移動] を選択します。

    Azure portal デプロイ通知。

  4. [リソース グループ] ページのリソースの一覧で、作成した Web アプリを選択します。 この一覧には、App Service プランとキャッシュ インスタンスも表示されます。

  5. Web アプリの [App Service] ページで、Web サイトに移動するための URL を選択します。 この URL は、https://<your-site-name>.azurewebsites.net 形式になっている必要があります。

  6. サイトは表示されますが、イベントはまだ送信されていないことを確認します。

    空の Event Grid ビューアー サイト。

Event Grid リソース プロバイダーを登録する

これまでに Event Grid を使用したことがない場合は、Event Grid リソース プロバイダーを登録する必要があります。 Event Grid を使用したことがある場合は、次のセクションに進んでください。

Azure portal で、次の手順を実行します。

  1. 左側のメニューで [サブスクリプション] を選択します。

  2. サブスクリプションの一覧から Event Grid に使用するサブスクリプションを選択します。

  3. [サブスクリプション] ページで、左側のメニューの [設定] の下の [リソース プロバイダー] を選択します。

  4. Microsoft.EventGrid を検索し、[状態][未登録] であることを確認します。

  5. プロバイダーの一覧で [Microsoft.EventGrid] を選択します。

  6. コマンド バーの [登録] を選択します。

    Microsoft.EventGrid プロバイダーを Azure サブスクリプションに登録するイメージ。

  7. 最新の情報に更新して、Microsoft.EventGrid の状態が [登録済み] に変更されたことを確認します。

    Microsoft.EventGrid プロバイダーを Azure サブスクリプションに正常に登録されたことを示すイメージ。

Azure Cache for Redis インスタンスをサブスクライブする

この手順では、トピックをサブスクライブすることによって、追跡するイベントとそれらのイベントの送信先を Event Grid に伝えます。

  1. ポータルで、先ほど作成したキャッシュ インスタンスに移動します。

  2. [Azure Cache for Redis] ページの左側のメニューで [イベント] を選択します。

  3. [webhook] を選択します。 エンドポイントの Web hook を使用して、ビューアー アプリにイベントを送信します。

    Azure portal の [イベント] ページ。

  4. [イベント サブスクリプションの作成] ページで、次の値を入力します。

    設定 提案された値 説明
    名前 イベント サブスクリプションの名前を入力します。 値の長さは 3 から 64 文字にする必要があります。 使用できるのは、英字、数字、ダッシュのみです。
    イベントの種類 宛先にプッシュするイベントの種類をドロップ ダウンから選択します。 このクイックスタートでは、キャッシュ インスタンスをスケーリングします。 パッチ適用、スケーリング、インポート、エクスポートを選択できます。
    エンドポイントの種類 [webhook] を選択します。 イベントを受信するイベント ハンドラー。
    エンドポイント [エンドポイントの選択] を選択し、Web アプリの URL を入力して、ホーム ページの URL に api/updates を追加し (例: https://cache.azurewebsites.net/api/updates)、 [選択の確認] を選択します。 これは先ほど作成した Web アプリの URL です。
  5. 次に、 [イベント サブスクリプションの作成] ページの [作成] を選択して、イベント サブスクリプションを作成します。

  6. Web アプリをもう一度表示し、その Web アプリにサブスクリプションの検証イベントが送信されたことに注目します。 目のアイコンを選択してイベント データを展開します。 Event Grid は検証イベントを送信するので、エンドポイントはイベント データを受信することを確認できます。 Web アプリには、サブスクリプションを検証するコードが含まれています。

    Azure Event Grid ビューアー。

エンドポイントへのイベントの送信

では、イベントをトリガーして、Event Grid がメッセージをエンドポイントに配信するようすを見てみましょう。 Azure Cache for Redis インスタンスをスケーリングします。

  1. Azure portal で、Azure Cache for Redis インスタンスに移動し、左側のメニューの [スケール] を選択します。

  2. [スケール] ページから希望の価格レベルを選択し、 [選択] を選択します。

    別の価格レベルにスケーリングできますが、次のような制約があります。

    • 上位の価格レベルから下位の価格レベルにスケーリングすることはできません。
      • Premium キャッシュから Standard または Basic キャッシュにスケールすることはできません。
      • Standard キャッシュから Basic キャッシュにスケールすることはできません。
    • Basic キャッシュから Standard キャッシュにスケールすることはできますが、同時にサイズを変更することはできません。 サイズを変更する必要がある場合、後続のスケーリング操作でサイズを変更できます。
    • Basic キャッシュから直接 Premium キャッシュにスケールすることはできません。 まず、1 回のスケーリング操作で Basic から Standard にスケーリングし、その後の操作で Standard から Premium にスケーリングします。
    • C0 (250 MB) サイズにそれより大きなサイズからスケールダウンすることはできません。

    キャッシュを新しい価格レベルにスケーリングするとき、左側の [Azure Cache for Redis] で状態が [拡大中] と表示されます。 スケーリングが完了すると、状態が [拡大中] から [実行中] に変わります。

  3. 以上でイベントがトリガーされ、そのメッセージが、Event Grid によってサブスクライブ時に構成したエンドポイントに送信されました。 メッセージは JSON 形式であり、1 つまたは複数のイベントの配列が含まれています。 次の例の JSON メッセージには、1 つのイベントの配列が含まれています。 Web アプリを表示して、ScalingCompleted イベントが受信されたことを確認します。

    Azure Event Grid ビューアーで JSON 形式のスケーリングを表示する。

リソースをクリーンアップする

引き続きこのイベントを使用する場合は、このクイックスタートで作成したリソースをクリーンアップしないでください。 それ以外の場合は、このクイックスタートで作成したリソースを削除してください。

リソース グループを選択し、 [リソース グループの削除] を選択します。

次のステップ

カスタム トピックを作成し、イベントをサブスクライブする方法がわかったら、Event Grid でできることについて、さらに情報を収集しましょう。