[日本語訳] The Ultimate Guide to Running Healthy Apps in the Cloud

本記事は 2020 年 5 月に投稿されましたThe Ultimate Guide to Running Healthy Apps in the Cloud の日本語抄訳です。2022 年 5 月 12 日時点の内容に合わせて一部加筆修正を行っています。 現代のデータセンターは非常に複雑で、多くの可動部分があります。VM の再起動や移動、システムのアップグレード、ファイルサーバーのスケールアップやスケールダウン。これらの事象はクラウド環境では予想されることです。しかしながら、ベストプラクティスに従うことで、クラウドアプリケーションをこれらの事象に対応することができます。本稿では、アプリケーションをクラウドに対応させるために取るべき 13 の重要なステップを紹介します。これらのステップを踏むことで、データセンターで発生した事象がアプリケーションに与える影響を少なくし、アプリケーションがより...

Read more

Queue トリガーの visibilityTimeout

Azure Functions の Queue トリガーを利用しています。host.json に visibilityTimeout を設定しているのですが、Queue トリガーの再試行時にvisibilityTimeout の値通りの時間で動作しません。 回答Queue トリガーでは、処理対象のメッセージを不可視状態にしてメッセージ ロックに近い機構を実現しています。場合によってメッセージが再度可視状態になるタイミングが異なります。そのため、Queue トリガーの再試行時の動作に寄って再試行時の実行間隔が異なります。 下記 Azure Functions が利用する内部の SDK のソースコードを基に解説します。 不可視状態への変更Queue トリガーでは、処理対象のメッセージを不可視状態にすることで他のクライアントから同一のメッセージが取得できないように制御しています。これは元来 Qu...

Read more

Event Hubs に格納されたイベントの中身を確認する方法

Event Hubs に格納されたイベントの中身を確認する方法を教えてください。 回答まず、Event Hubs 自体には、イベントを中身を確認する機能はございません。基本的には、以下のように別のサービスにイベントを出力したり、別のサービスが Event Hubs のデータを取得して閲覧できるようにしたり、お客様自身で受信用のアプリケーションをご用意いただく必要がございます。 Stream Analytics ジョブを使用して、イベントデータをプレビューする お客様にてイベント受信のアプリケーションを構築する Event Hubs のキャプチャ機能を用いて、Azure Storage / Azure Data Lake Storage に格納されたファイルを読み取る コミュニティが所有するオープンソースの Service Bus Explorer の Event Hubs Li...

Read more

App Service 認証の概要と仕組みについて

本記事では App Service 認証の概要とその仕組み、よくある質問についてご説明いたします。 App Service 認証とは、App Service 上にデプロイした Web アプリケーションでコードの実装無しで簡単に ユーザーの認証機能 (シングルサインオン(以下、SSO)) を実現する方法です。さらに、App Service 認証を有効にすると、Azure AD などの Identity Provider(以下、IdP) からアクセス元ユーザーのアクセストークン/ID トークンが取得できるので、それをもとにアプリケーション内でユーザーごとに操作を管理することも出来ます。 なお、App Service 認証で実現できる SSO で連携対象とする IdP は事前に用意されたもの中から選択する形となるため、連携していない IdP と連携を希望する場合は Web アプリケーシ...

Read more

App Service を構成する主要な要素とそれぞれの役割

App Service サポート担当の中島です。 今回は App Service をご利用いただいているお客様、またはご利用を検討いただいているお客様へ向け、 App Service のアーキテクチャについて解説いたします。 1. App Service を構成する主要な要素ここでは、 App Service を構成する要素のうち、とりわけお客様のアプリに関連する要素について解説いたします。 スケールユニットApp Service のサーバーはマイクロソフトのデータセンター内に配置されておりますが、そのデータセンター内に “スケールユニット” と呼ばれる単位のサーバー群が複数存在しており、各データセンターには複数のスケールユニットが存在しています。 それぞれのスケールユニット内には、複数の App Service Plan が存在し、それらとともに App Service を構成するいくつ...

Read more

[日本語訳] Inside the Azure App Service Architecture

はじめに本記事は、MSDN マガジン の2017 年 2 月に投稿されました Azure App Service の基本的なアーキテクチャを公開している Inside the Azure App Service Architecture の日本語抄訳としてご案内いたします。 Azure App Service の基本的なアーキテクチャの解説をしておりますが、2017 年の記事であるため内容が変更されている場合がございます。 Azure App Service アーキテクチャの内部Azure App Service は優れた Platform as a Service (PaaS) で開発者が Web、モバイルそして API アプリケーションを構築するためにアプリケーションプラットフォームを提供しております。シンプルなマーケティングやデジタル展開するアプリケーションから、拡張性がある e-コ...

Read more

Azure Functions での「Azure Functions Runtime に到達できません」のよくある原因と対応策

Azure Functions を利用しており、「Azure Functions Runtime に到達できません」とエラーが表示されます。対応を教えてください。 回答Azure Functions が何かしらの理由で正常に起動ができていないことを表します。多くの原因はストレージ アカウントとの接続ができないことに起因し、原因は Application Insights ログに記録されていない場合が多いです。よくあるシナリオに分けて解説します。 Azure Functions Runtime に到達できませんについては、こちらにご案内もありますが、本稿ではより具体的なトラブルシューティング方法と追加のシナリオをご案内します。 Azure Functions が規定で利用するストレージ アカウントAzure Functions ではその動作のためにストレージ アカウントを利用しますが、それ...

Read more

ストレージアカウント → Event Grid → Service Bus → Functions の経路で可能な限りプライベートでイベントを配信する設定手順

お世話になっております。PaaS Dev サポート担当の李です。本日はストレージアカウントから Event Grid 経由で Service Bus にイベントを配信し、Service Bus に届いたイベントをトリガーに Functions を動作する一連の手順を、パブリックインターネットを経由せずに可能な限りプライベートアクセスで行うための設定方法をご紹介いたします。尚、Service Bus と Functions それぞれに Network Security Group(NSG) がついている場合どのようなポートを許可すれば良いかに関してもご紹介いたします。 全体の構成図今回の構成を図で簡単に表現しますと上記の構成になります。Service Busの代わりに、お客様のご要件に合わせてEvent Hubs若しくはキューストレージをご利用頂くことも可能ですが、今回の記事ではServic...

Read more

2025 年 3 月 31 日以降、Azure App Service は Disaster Recovery Mode にならなくなります

2023 年 3 月 31 日に Action recommended: Implement disaster recovery strategies for your Azure App Service web apps by 31 March 2025 が更新情報として公開されました。こちらの変更は下記の App Service アプリを別のリージョンに移動する でも確認することができます。 本記事では、Disaster Recovery Mode がどのようなものであるかを説明し、取りうる対応について説明します。 Disaster Recovery Mode2025 年 3 月 31 日までは障害によって Azure リージョン全体がオフラインになると、そのリージョンでホストされているすべての App Service アプリ (マルチテナントの App Service プランに限...

Read more

PHP 8.X で Nginx の設定をカスタマイズする方法

お世話になっております。App Service サポート担当の吉井です。 PHP 7.X までは、App Service on Linux の PHP イメージ内で Apache がウェブ サーバーとして採用されておりましたが、8.X からは Nginx が使用されるようになりました。アプリの要件やトラブルシューティングで Nginx の設定を調整したい場合があるかと思いますので、Nginx 設定値を調整する方法をご紹介します。 今回は例として、Nginx の設定ファイルより、レスポンスにカスタムの HTTP ヘッダーを追加します。 手順1. 既定の設定値を編集まずは、ベースとなる Nginx の設定ファイルが必要なので、既定の /etc/nginx/sites-available/default を取得します。 ポータル上で該当の Web App を開き、左メニューの SSH を選択しま...

Read more