7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Microsoft Azure TechAdvent Calendar 2018

Day 21

Logic Apps におけるバックアップ方法

Last updated at Posted at 2018-12-25

こんにちは。
今回は度々ご質問を頂くLogic Appsにおけるバックアップ方法についてまとめてみたいと思います。

Logic Appsとは!?という方がいれば、こちらをご確認下さい。

Azure Logic Apps ドキュメント
https://docs.microsoft.com/ja-jp/azure/logic-apps/

バックアップの用途としては主に2つのシナリオが考えられます。
各シナリオごとに説明していきます。

■1. 同じLogic Appsでバージョンが差異を管理する場合
■2. Logic Appsが削除された場合に備えて管理する場合

■1. 同じLogic Appsでバージョンが差異を管理する場合

同じLogic Appsにおいてアクションの変更などを行い、アップデートを日々行っており、いくつか前のバージョンに戻したいというシナリオです。
この場合には、Logic Appsの既定の機能であるVersionsという項目から、過去の設定を確認することが可能です。

image.png

Versions の項目を開くと更新されたタイミング、およびバージョンIDが表示されます。
ここから遡りたい地点のIDを選択します。
image.png

そうすると、過去の地点におけるスキーマ情報を簡単に確認することが可能です。
image.png

■2. Logic Appsが削除された場合に備えて管理する場合

こちらのシナリオは、Logic Appsそのものを削除するシナリオを考慮した場合です。例えば、誤って削除ボタンを教えてしまった、などの状況です。いくつかパターンがありますので、合ったパターンを選択頂ければと思います。

  • 複製する

同じLogic Appsが存在していればよいということであれば、Logic Appsの複製機能を用いて既存のLogic Appsを簡単にコピーすることが可能です。該当Logic AppsをAzure Portalから選択し、[Close]ボタンがありますので、こちらから実施することが可能です。
image.png

ただし、サブスクリプションやリソースグループが固定化されているため、注意が必要です。
image.png

  • Template としてバックアップする(Automation Script)

既定の機能やツールを用いて該当のLogic Appsをテンプレートとしてバックアップすることが可能です。例えば、Azure Portalから[Automation Script]を選択します。

image.png

この後、こちらを用いて同様のデプロイができるようになります。ただし該当のリソースグループ全体がテンプレート化されるため、注意が必要です。

image.png

  • Template としてバックアップする(LogicAppTemplateCreator)

上記と同様にテンプレートとしてLogic Appsを出力するツールが存在するため、こちらを利用してバックアップを行います。コマンドラインでの実行となりますが、該当Logic Appsをテンプレート化することが可能です。

手順としても非常にシンプルです。
まずは、該当のファイルをローカルにコピーします。そして、以下のようにPowerShellにてモジュールをロードし、準備は完了です。

Import-Module C:{pathToSolution}\LogicAppTemplateCreator\LogicAppTemplate\bin\Debug\LogicAppTemplate.dll

この後は、Get-LogicAppTemplateを実行することで、該当のJSONファイルを出力させることが出来ます。
例えば、以下のようにコマンドを実行すると該当のLogic Apps名、リソースグループ名、サブスクリプションIDの入力を求められ、その後、Out-Fileに指定したファイルにテンプレートが出力されます。

Get-LogicAppTemplate | Out-File C:\template.json

  • Visual Studioで管理する

Logic AppsはVisual Studioを用いることでも作成、管理することが可能です。
運用を手間を考えるとソースコントロール -> DevOpsからデプロイといった運用がベストプラクティスの1つとして上がってくるのではないかと思います。
もちろん、選択肢の1つとはなりますが、Visual Studio向けにアドインが用意されておりますので、ぜひご検討頂けると幸いです。

Visual Studio でロジック アプリを管理する
https://docs.microsoft.com/ja-jp/azure/logic-apps/manage-logic-apps-with-visual-studio

クイック スタート: Azure Logic Apps を使用してタスク、プロセス、ワークフローを作成および自動化する - Visual Studio
https://docs.microsoft.com/ja-jp/azure/logic-apps/quickstart-create-logic-apps-with-visual-studio

Azure Logic Apps Tools for Visual Studio 2017
https://marketplace.visualstudio.com/items?itemName=VinaySinghMSFT.AzureLogicAppsToolsforVisualStudio-18551

ちなみにすでに作成されたLogic Appに対しても接続、テンプレートとしてダウンロードすることも可能です。
image.png

image.png

7
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?