2017.06.01

AzureFunctionsと連携する

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

こんにちは、小野田です。
今回はMicrosoftAzureのサーバーレス機能のAzureFunctionsとSkyOnDemandの連携についてご紹介します。

flow.png

AzureFunctionsの概要はこちらを参照してください。

アカウントの開設、AzureFunctionsの作成、SkyOnDemandからAzureFunctionsの実行を順を追ってご説明いたします。


MicrosoftAzureアカウントの開設

以下のサイトよりMicrosoftAzureアカウントを作成します。
https://azure.microsoft.com/ja-jp/free/

ここで開設したアカウントを使用してSkyOnDemandと連携するAzureFunctionsを作成します。


AzureFunctionsの作成

WebブラウザでMicrosoftAzureにログインし、画面上部にある「CloudShell」メニューを押下します。
画面下部にCLI画面が表示されBashを使用することができます。

cloudshell.gif

この「CloudShell」を使って種々の設定をおこないます。

リソースグループの作成

$ az group create --name functions-japaneast --location japaneast

AppServiceプランの作成

$ az appservice plan create --name terraskyplan --resource-group functions-japaneast

ストレージアカウントの作成
(ストレージアカウントの名称'--name'はグローバルユニークとする必要があります)

$ az storage account create --name terraskystorage20170601 --resource-group functions-japaneast --sku Standard_GRS

AzureFunctionsの作成
(AzureFunctionsの名称'--name'はグローバルユニークとする必要があります)

$ az functionapp create --name terraskyfunctions20170601 --resource-group functions-japaneast --storage-account terraskystorage20170601 --plan terraskyplan

関数の作成
作成したAzureFunctionsに関数を追加します。
関数の追加はお手軽にサンプルをそのまま使用するため、コンソール画面で作成します。

add-function.gif

SkyOnDemandからの連携を作成するため関数のURLを取得します。

get-url.gif


SkyOnDemandの設定

SkyOnDemandにログインして先ほど作成したAzureFunctionsと連携するための処理を作成します。

まずはグローバルリソース「REST接続設定」を作成します。

グローバルリソース.png

次にAzureFunctionsと連携するスクリプトです。

RESTアダプタの「GET実行」を使用してAzureFunctionsの関数を実行するスクリプトを作成します。

script.png

RESTアダプタには先ほど作成したグローバルリソースを指定します。

AzureFunctionsの関数のURLから「パス」と「クエリパラメータ」を分割してそれぞれ設定します。

REST-GET.png

これでAzureFunctionsと連携するスクリプトができました。


最後に

今回はサンプルを実行するだけの簡単な連携処理のご紹介となりましたが、SkyOnDemandを使うことでAzureFunctionsに構築したマイクロサービスと簡単に連携できることがわかりました。

サーバレスアーキテクチャーのサービスは、今回ご紹介したMicrosoftAzureの他にも各クラウドベンダーからも提供されています。
サーバ等のインフラ管理から開放されるサーバーレスアーキテクチャーは今後利用されるケースが増えることになるでしょう。

これらの機能を組み合わせた連携をご検討の際には弊社までご相談ください。

最後に話は変わりますが、TerraSkyDay2017のセッション登録が開始となりました。
皆様、是非お越しくださいますようお願いいたします。

https://www.terraskyday.com/

1 件

関連する記事