Azure Logic Apps とは
Azure Logic Apps はクラウド プラットフォームであり、コードをほとんど、またはまったく使用せずに、自動化されたワークフローを作成して実行できます。 ビジュアル デザイナーを使用し、事前構築済みの操作から選択することで、アプリ、データ、サービス、システムを統合および管理するワークフローをすばやく構築できます。
Azure Logic Apps を使用すると、クラウド、オンプレミス、ハイブリッド環境で、レガシ、最新、最先端システムをより簡単に接続できます。 コードをほとんど、またはまったく使用しないツールを使用して、エンタープライズおよび企業間 (B2B) シナリオをサポートするスケーラビリティの高い統合ソリューションを迅速に開発できます。
この一覧に例として挙げたのは、Azure Logic Apps を使用して自動化できるタスク、ビジネス プロセス、ワークロードのうちのごく一部です。
Office 365 を使用して、特定のイベント (新しいファイルのアップロードなど) が発生したときの電子メール通知をスケジュールして送信する。
オンプレミス システムとクラウド サービスの垣根を越えて顧客注文をルーティングし、処理する。
アップロードされたファイルを SFTP サーバーまたは FTP サーバーから Azure Storage に移動する。
ツイートを監視したり、そのセンチメントを分析したり、確認が必要な項目についてアラートやタスクを作成したりする。
次の部分的なエンタープライズ ワークフローの例では、条件とスイッチを使用して次のアクションを決定します。 たとえば、注文システムがあり、受信した注文をワークフローで処理しているとします。 あなたは、一定のコストを超える注文を手動で確認したいと考えています。 このワークフローの前には、受注のコストを決定するステップが既にあります。 そこで、たとえば、そのコスト値に基づいて次の初期条件を作成します。
ヒント
詳細について、Azure Copilot に次のように質問することができます。
- Azure Logic Apps を使うとどのような問題を解決できますか?
- Azure Logic Apps にはどのような利点がありますか?
Azure Copilot を見つけるには、Azure portal のツール バーで、[Copilot] を選択します。
最初のロジック アプリ ワークフローを作成する準備ができたら、「はじめに」を参照してください。
学習を続けるには、次のビデオをご覧ください。
詳細については、Azure Web サイトの Azure Logic Apps とその他の Azure Integration Services に関するページを参照してください。
キーワード
次の表では、Azure Logic Apps の主要な用語と概念を簡単な定義を示します。
期間 | 説明 |
---|---|
ロジック アプリ | ワークフローを開発するときに作成する Azure リソース。 基本的には、次の種類のロジック アプリ リソースを作成できます。 - グローバルなマルチテナントの Azure Logic Apps でホストおよび実行される、1 つのワークフローをサポートする従量課金ロジック アプリ リソース - シングルテナントの Azure Logic Apps でホストおよび実行される、複数のワークフローをサポートする Standard ロジック アプリ リソース ロジック アプリ リソースの種類と、それぞれのコンピューティング リソースと課金モデルの詳細について説明します。 |
Workflow | タスク、ビジネス プロセス、またはワークロードを定義する一連の操作。 各ワークフローは常に 1 つのトリガー操作で始まり、その後に 1 つ以上のアクションの操作を追加する必要があります。 |
トリガー | ワークフローで後続の操作を実行する前に満たすべき条件を指定する、そのワークフローの最初の操作。 たとえば、受信トレイにメールが届いた、ストレージ アカウントで新しいファイルを検出した、といったトリガー イベントが考えられます。 |
操作 | ワークフローでトリガーの後に続く後続の各操作。 |
組み込みコネクタ | このコネクタまたは操作の種類は Azure Logic Apps ランタイムに "組み込まれている" ため、Azure でホストおよび実行される Microsoft 管理のコネクタと比較して、操作がネイティブかつ直接実行され、パフォーマンスが向上します。 組み込みの操作を使用すると、ワークフローのスケジュールや構造の制御、独自のコードの実行、データの管理と操作、エンドポイントへの要求の送信または受信、ワークフロー内のその他のタスクを実行することができます。 たとえば、繰り返しトリガーを使用すると、ほぼどのようなワークフローでもスケジュールに従って開始できます。 また、要求トリガーを使用すると、呼び出すまでワークフローを待機させることもできます。 このような操作では、通常、ワークフローから接続を作成する必要はありません。 ほとんどの組み込み操作は、サービスやシステムに関連付けられていませんが、一部の組み込み操作は、Azure Functions、Azure Blob Storage、Azure App Service などの特定のサービスで使用できます。 これらの組み込み操作を使用できるかどうかは、従量課金または Standard ロジック アプリ ワークフローのどちらで作業しているかによって異なります。 詳細と例については、Azure Logic Apps の組み込みコネクタに関するページを参照してください。 |
マネージド コネクタ | このコネクタまたは操作の種類は、Microsoft が Azure で公開、管理、ホスト、実行しており、特定のアプリ、データ、サービス、またはシステムへのアクセスに使用できるサービスまたはシステムの REST API 向けの、事前構築済みのプロキシまたはラッパーです。 ほとんどのマネージド コネクタは、その使用前に、ワークフローから接続を作成し、ID の認証を行う必要があります。 たとえば、トリガーを使用してワークフローを開始することや、Office 365、Salesforce、ファイル サーバーなどのサービスと連携するアクションを実行することができます。 詳細については、Azure Logic Apps のマネージド コネクタに関するページを参照してください。 |
統合アカウント | この Azure リソースは、ワークフローで使用する B2B 成果物を定義して格納する場合に作成します。 統合アカウントを作成してロジック アプリにリンクすると、ワークフローにこれらの B2B の成果物を使用できるようになります。 また、ワークフローから Electronic Data Interchange (EDI) と Enterprise Application Integration (EAI) の標準に準拠したメッセージを交換することもできます。 たとえば、取引先、契約、スキーマ、マップ、その他の B2B 成果物を定義できます。 これらの成果物を使用し、AS2、EDIFACT、X12、RosettaNet などのプロトコルを使用してメッセージを交換するワークフローを作成できます。 |
Azure Logic Apps を使用する理由
Azure Logic Apps 統合プラットフォームでは、1,000 個を超える組み込みコネクタが提供されるので、アプリ、データ、サービス、システムをより簡単かつ迅速に接続し、統合できます。 リソースへのアクセス方法の理解に費やす労力を少なくし、ソリューションのビジネス ロジックや機能の設計と実装に集中できます。
任意のサービス エンドポイントと通信し、独自のコードを実行し、ワークフロー構造を制御し、データを操作し、よく使用されるサービスに高いパフォーマンスで接続するには、組み込みのコネクタ操作を使用できます。 これらの操作は、Azure Logic Apps ランタイムでネイティブに実行され、パフォーマンスが向上します。
Azure、Microsoft、その他の外部 Web アプリやサービス、オンプレミス システムなどのサービス内のリソースにアクセスして操作するには、Microsoft が管理する (Azure でホストされる) コネクタ操作を使用できます。 たとえば、拡大し続けている Azure エコシステム内の 10,000 個を超えるコネクタから選択します。次のようなものがあります。
Azure サービス (Blob Storage、Service Bus など)
Office 365 サービス (Outlook、Excel、SharePoint など)
データベース サーバー (SQL、Oracle など)
エンタープライズ システム (SAP、IBM MQ など)
ファイル共有 (FTP、SFTP など)
詳しくは、次のドキュメントをご覧ください。
Azure Logic Apps でワークフローを構築するとき、通常はコードを記述する必要はありません。 ただし、何らかのコードを記述する必要がある場合は、JavaScript または C# のインライン コード アクションを使って、JavaScript コード スニペットまたは C# スクリプトをワークフローに追加して実行できます。 Azure Functions を使ってコードの追加と実行を行うこともできます。 ワークフローで、他の Azure サービス、カスタム アプリ、または他のソリューションのイベントを操作する必要がある場合は、Azure Event Grid または Azure Event Hubs を使ってイベントを監視、ルーティング、発行できます。
Azure Logic Apps は Microsoft Azure によって完全に管理されているので、これらのサービスを使用して構築されたソリューションのホスティング、スケーリング、管理、監視、メンテナンスについて心配する必要はありません。 これらの機能を使用して、"サーバーレス" のアプリやソリューション を作成すると、ビジネス ロジックと機能に集中できます。 これらのサービスは、ニーズに合わせて自動的にスケーリングします。また、統合を迅速化するほか、コードをほとんどまたはまったく使用せずに堅牢なクラウド アプリを構築するのに役立ちます。
Azure Logic Apps を他の Azure サービスや Microsoft 製品と組み合わせることによって、機敏性を高め、中核となるビジネスに集中できるようになった他社の事例については、これらのお客様事例をご覧ください。
Azure Logic Apps と Functions、WebJobs、Power Automate の違い
これらのサービスはいずれも、異種システムを接続し、統合するのに役立ちます。 どのサービスにもそれぞれ長所とメリットが存在するため、十分な機能を備えたスケーラブルな統合システムを短期間で構築するためには、各サービスの機能を組み合わせるのが一番です。 詳しくは、Azure Logic Apps、Azure Functions、Azure WebJobs、Microsoft Power Automate の選択に関する記事をご覧ください。
Azure Logic Apps と Azure Automation Runbooks の違い
Azure Automation Runbooks は、仮想マシンの再起動などの簡単な修復のための軽量でコスト効率の高いソリューションを提供します。 これに対し、Azure Logic Apps は、複数のサービス、システム、アプリ、データ間のワークフローやオーケストレーションに最適です。 カスタム コードを実行するワークロードや、ループ、分岐、条件などの制御構造を使用する複雑なロジックが必要なワークロードが含まれます。
Azure Logic Apps を使用するとどれくらい迅速にソリューションを拡張できるか?
現在のシステムとサービスを使用して小規模から始め、自分のペースで段階的に拡大していくことができます。 準備ができたら、Azure Logic Apps によって提供される次の機能とベネフィットを使用して、より成熟した統合シナリオを実装し、スケールアップすることができます。
使いやすいツールでワークフローを視覚的に作成、編集
Azure Logic Apps のビジュアル デザイン ツールを使用して、時間を節約し、複雑なプロセスを簡素化します。 Azure portal または Visual Studio Code で Azure Logic Apps ワークフロー デザイナーを使用して、ワークフローを最初から最後まで作成します。 トリガーを使用してワークフローを開始し、コネクタ ギャラリーから任意の数のアクションを追加するだけです。
さまざまな環境でさまざまなシステムを接続
パターンやプロセスによっては、説明は簡単でもコードで実装するのは困難なこともあります。 Azure Logic Apps は、クラウド、オンプレミス、ハイブリッド環境の異種システムをシームレスに接続するのに役立ちます。 たとえば、クラウド マーケティング ソリューションをオンプレミスの課金システムに接続したり、Azure Service Bus を使用して、複数の API やシステムのメッセージングを一元化したりできます。 Azure Logic Apps は、これらのシナリオに対応する再利用可能かつ再構成可能なソリューションを提供するための、高速で信頼性の高い一貫した方法を提供します。
さまざまな環境を作成してデプロイする
シナリオ、ソリューションの要件、必要な機能に基づいて、従量課金または Standard のロジック アプリ ワークフローのどちらを作成するかを選択します。 この選択に基づいて、ワークフローはマルチテナント Azure Logic Apps、シングルテナント Azure Logic Apps、または App Service Environment (v3) のいずれかで実行されます。 シングルテナントの Azure Logic Apps を使用すると、ワークフローで Azure 仮想ネットワークによって保護されたリソースに簡単にアクセスできます。 Azure Arc 対応 Logic Apps を使用してシングル テナント ベースのワークフローを作成する場合は、コンテナーでワークフローを実行することもできます。 詳細については、Azure Logic Apps でのシングルテナントとマルチテナントの比較に関するページと「Arc 対応 Logic Apps とは」を参照してください。
次の表は、従量課金ロジック アプリ ワークフローと Standard ロジック アプリ ワークフローの違いを簡単にまとめたものです。 ロジック アプリ ワークフローをデプロイ、ホスト、実行する際のマルチテナント環境、シングルテナント環境、App Service Environment v3 (ASEv3) の違いも分かります。
ホスティング オプション | メリット | リソースの共有と使用 | 価格と課金モデル | 制限の管理 |
---|---|---|---|---|
従量課金プラン ホスト環境: マルチテナント Azure Logic Apps |
- 最も簡単に開始できる - 従量課金制 - フル マネージド |
1 つのロジック アプリ リソースで使用できるワークフローは "1 つのみ" です。 "複数の Microsoft Entra テナントにわたる" すべてのロジック アプリでは、同じ処理 (コンピューティング)、ストレージ、ネットワークなどが共有されます。 冗長性のために、データはペア リージョンにレプリケートされます。 高可用性を実現するために、geo 冗長ストレージ (GRS) が有効になっています。 |
従量課金プラン (従量課金制) | Azure Logic Apps でこれらの制限の既定値が管理されますが、特定の制限に対してオプションが存在する場合は、これらの値の一部を変更できます。 |
Standard (ワークフロー サービス プラン) ホスト環境: シングルテナントの Azure Logic Apps 注: シナリオでコンテナーが必要な場合は、Azure Arc 対応 Logic Apps を使用してシングルテナント ベースのロジック アプリを作成します。 詳細については、「Azure Arc 対応 Logic Apps とは」を参照してください。 |
- シングルテナント ランタイム上でホストされた組み込みコネクタが増えるほど、スループットが向上し、大規模なコスト削減になります - ランタイムとパフォーマンスの設定に関する制御と微調整機能の強化 - 仮想ネットワークとプライベート エンドポイントに対する統合サポート。 - 独自の組み込みコネクタの作成。 |
1 つのロジック アプリに複数の "ステートフル" と "ステートレス" のワークフローを含めることができます。 "1 つのロジック アプリとテナント" のワークフローでは、同じ処理 (コンピューティング)、ストレージ、ネットワークなどが共有されます。 データは、ロジック アプリのデプロイ先と同じ Azure リージョン内に残ります。 |
Standard (選択した価格レベルのホスティング プランに基づきます) 外部ストレージを使用する "ステートフル" ワークフローを実行する場合は、Azure Logic Apps ランタイムによって、Azure Storage 価格に従うストレージ トランザクションが行われます。 |
シナリオのニーズに応じて、多くの制限の既定値を変更できます。 重要: 一部の制限には、ハード上限があります。 Visual Studio Code では、ロジック アプリのプロジェクト構成ファイル内の既定の制限値に対して行った変更は、デザイナー エクスペリエンスには表示されません。 詳細については、シングルテナントの Azure Logic Apps におけるロジック アプリのアプリと環境設定の編集に関するページを参照してください。 |
Standard (App Service Environment v3) ホスト環境: App Service Environment v3 (ASEv3) - Windows プランのみ |
シングル テナントと同じ機能に "加え"、以下のメリットがあります。 - ロジック アプリを完全に分離します。 - シングルテナント Azure Logic Apps の場合よりも多くのロジック アプリを作成して実行します。 - 作成して実行するロジック アプリの数に関係なく、ASE App Service プランに対してのみ支払います。 - 自動スケールを有効にしたり、より多くの仮想マシン インスタンスや別の App Service プランを使用して手動でスケーリングできます。 - 選択した ASEv3 からネットワーク設定を継承します。 たとえば、内部 ASE にデプロイすると、ワークフローは ASE に関連付けられた仮想ネットワーク内のリソースにアクセスし、内部アクセス ポイントを持つことができます。 注: 内部 ASE の外部からアクセスする場合は、ASE がアクションの入力と出力にアクセスできないという、ワークフローの履歴を実行します。 |
1 つのロジック アプリに、複数の "ステートフル" と "ステートレス" のワークフローを含めることができます。 "1 つのロジック アプリとテナント" のワークフローでは、同じ処理 (コンピューティング)、ストレージ、ネットワークなどが共有されます。 データはロジック アプリをデプロイしたのと同じリージョンに残ります。 |
App Service プラン | シナリオのニーズに応じて、多くの制限の既定値を変更できます。 重要: 一部の制限には、ハード上限があります。 Visual Studio Code では、ロジック アプリのプロジェクト構成ファイル内の既定の制限値に対して行った変更は、デザイナー エクスペリエンスには表示されません。 詳細については、シングルテナントの Azure Logic Apps におけるロジック アプリのアプリと環境設定の編集に関するページを参照してください。 |
エンタープライズ統合と B2B のシナリオに最上級のサポートを実現
企業や組織は、業界標準であっても異なるメッセージ プロトコルや形式 (EDIFACT、AS2、X12、RosettaNet など) を使用して、電子的に相互に通信しています。 Azure Logic Apps でサポートされているエンタープライズ統合機能を使用すると、パーティーで使用されるメッセージ形式を、自分の組織のシステムが解釈して処理できる形式に変換するワークフローを作成できます。 Azure Logic Apps はこのようなやり取りを円滑に処理し、暗号化とデジタル署名を使ってその安全を確保します。 Azure Logic Apps には、B2B 統合シナリオ向けに BizTalk Server の機能が含まれています。 企業間 (B2B) の成果物を定義するには、これらのアーティファクトを格納する "統合アカウント" を作成します。 このアカウントをロジック アプリ リソースにリンクすると、ワークフローでこれらの B2B の成果物を使用し、電子データ交換 (EDI) および Enterprise Application Integration (EAI) 標準に準拠するメッセージを交換できます。
詳しくは、次のドキュメントをご覧ください。
Microsoft BizTalk Server、Azure Service Bus、Azure Functions、Azure API Management などを統合して構築する。
EDIFACT、AS2、X12、RosettaNet の各プロトコルを使用してメッセージを交換する。
たとえば、Microsoft BizTalk Server を使用している場合は、ワークフローで BizTalk Server コネクタを使用して、BizTalk Server と通信できます。 その後、統合アカウント コネクタを使用して、ワークフローで BizTalk のような操作を実行または拡張できます。 逆に、BizTalk Server で Microsoft BizTalk Server Adapter for Azure Logic Apps を使用して、ワークフローと通信することもできます。 BizTalk Server で BizTalk Server Adapter を設定して使用する方法をご覧ください。
1 回の作成で何度も再利用
複数の環境やリージョンへのデプロイを設定して自動化できるように、Azure Resource Manager テンプレートとしてロジック アプリ ワークフローを作成します。
組み込みの拡張機能
必要なコードの実行に利用できる適切なコネクタがない場合は、JavaScript または C# スクリプトのインライン コード アクションを使って、コード スニペットを作成し、ワークフローから実行できます。Azure Functions を使用できます。 ワークフローから呼び出すことができる API やカスタム コネクタを作成することもできます。
Azure 仮想ネットワーク内のリソースへの直接アクセス
Azure Logic Apps (Standard) を使うと、ロジック アプリ ワークフローは Azure 仮想ネットワーク内にあるセキュリティで保護されたリソース (仮想マシン、他のサービス、システムなど) にアクセスできます。 Azure Logic Apps (Standard) は Azure Logic Apps のシングルテナント インスタンスであり、専用リソースを使って、グローバルなマルチテナント Azure Logic Apps とは別に実行されます。
独自の専用インスタンスでロジック アプリ ワークフローをホストおよび実行することで、他の Azure テナントがアプリのパフォーマンスに与える可能性がある影響 ("うるさい隣人" エフェクトとも呼ばれます) を低減できます。
Azure Logic Apps (Standard) には、次の利点があります。
自分専用の静的 IP アドレス。これらの IP アドレスは、マルチテナント Azure Logic Apps でロジック アプリが共有する静的 IP アドレスとは区別されています。 また、送信先システムとの通信のために、単一の予測可能な静的パブリック アウトバウンド IP アドレスを自分で設定することもできます。 このようにすると、それらの送信先システムで追加のファイアウォールを設定する必要がなくなります。
実行継続時間、ストレージのリテンション期間、スループット、HTTP の要求と応答のタイムアウト、メッセージのサイズ、カスタム コネクタの要求の上限が引き上げられました。 詳細については、Azure Logic Apps の制限と構成に関する記事をご覧ください。
ロジック アプリが機能するしくみ
ロジック アプリ ワークフローは、常に単一のトリガーで開始されます。 トリガーは、条件が満たされたとき、たとえば特定のイベントが発生したときや特定の条件をデータが満たしたときに起動します。 多くのトリガーには、ワークフローの実行頻度を制御するスケジューリング機能が含まれています。 トリガーの起動後、1 つまたは複数のアクションによって各種操作 (ワークフロー内を通過するデータを加工、処理、変換する操作や、ワークフローを次のステップに進める操作) が実行されます。
Azure Logic Apps では、"at-least-once" メッセージ配信セマンティックが実装され、使用されます。 サービスがメッセージを複数回配信することがまれにありますが、メッセージは失われません。 業務上、重複するメッセージを処理しない、または処理できない場合は、データの整合性とシステムの安定性を維持しながら、同一または重複するメッセージを受け入れる機能であるべき等を実装する必要があります。 これにより、同じ操作を繰り返しても、最初の実行後に結果が変更されることはありません。
次のセクションでは、ワークフローが受信した注文を処理する注文システムに含まれる、エンタープライズ ワークフローの例のロジックについて説明します。 ワークフローには、受信した注文のコストを決定する手順が既に含まれます。 目標は、一定のコストを超える注文を手動で確認することであるため、たとえば、そのコスト値に基づいて次の初期条件を作成します。
注文が一定額を下回る場合、条件は false です。 そこで、ワークフローによって注文が処理されます。
条件が true であれば、手動レビューのためにワークフローからメールが送信されます。 スイッチで次の手順が決定されます。
レビュー担当者が承認した場合、ワークフローによる注文の処理は続行されます。
レビュー担当者がエスカレーションを行った場合、注文に関する詳細情報を取得するために、ワークフローからエスカレーションのメールが送信されます。
エスカレーション要件が満たされている場合、応答条件は true です。 そのため、注文は処理されます。
応答条件が false の場合、問題に関するメールが送信されます。
Azure portal または Visual Studio Code で Azure Logic Apps ワークフロー デザイナーを使用して、ワークフローを視覚的に作成できます。 各ワークフローには、JavaScript Object Notation (JSON) 形式を使用した、基になる定義も含まれています。 必要に応じて、この JSON 定義を変更してワークフローを編集できます。 Azure Logic Apps では、一部の作成タスクと管理タスクについて、Azure PowerShell と Azure CLI コマンドがサポートされます。 Azure Logic Apps では、デプロイの自動化を目的として、Azure Resource Manager テンプレートがサポートされます。
価格オプション
ロジック アプリ リソースの種類 (マルチテナント、シングルテナント、App Service Environment (ASE v3)) によって、それぞれ価格モデルは異なります。 たとえば、マルチテナントの従量課金ロジック アプリ ワークフローは従量課金モデルに従い、シングルテナントの Standard ロジック アプリ ワークフローは Standard 価格モデルに従います。 Azure Logic Apps の価格と使用状況測定の詳細をご覧ください。
はじめに
Azure Logic Apps の利用を開始するには、Azure サブスクリプションが必要です。 サブスクリプションをお持ちでない場合には、無料の Azure アカウントにサインアップしてください。
準備ができたら、次の Azure Logic Apps のクイックスタート ガイドの 1 つ以上を試してみてください。
Azure Logic Apps の他のクイックスタート ガイドもお勧めです。