Node-RED を Azure で使う方法
このブログエントリは Node-RED Advent Calendar 2016 への寄稿となります。
はじめに
「参加します!」って言ったときは、ノリだけでクリスマスイブだって意識全くなくて、ワクワクが足りない内容だったらごめんなさい。
と、ハードルをさげておいて。勉強会でもお話しした内容なのでご存知の方は既出となります。本家のマニュアルが英文のみなので、GUI 含めた解説があったらもっと入門が楽になるかなと思い立って書くことにしました。
Node-RED とは Node.js をつかった GUI からソースコードを生成するオープンソースのツールで、Input Output 処理をつなぐだけでコーディングをほとんど行わずに様々な処理を行うことができます。
Input Output という概念から IoT 用途での利用例が比較的多く、クラウドサービスとの親和性も高く、もちろん Azure でも利用可能なツールです。
このブログエントリでは Azure 上で利用する方法について説明していきます。事前に Azure を利用するための手続きを行ってください。動作確認程度の利用であれば、Dev Essential の特典がよいと思います。
Azure には Web Apps という PaaS のサービスがあるのですが、Node-RED で利用可能なポートが 443/80 以外のポートとなる(デフォルトでは 1880 )ため、IaaS のサービスを利用します。
Azure の IaaS で Node.js サービスを立てる
まず、Azure のポータルにログインします。
左上の新規をクリックします。
Compute → Ubuntu Server (今回は Ubuntu Server にしましたのでこれから先の手順はすべて Ubuntu Server を元にしています。Dev Essentialでは利用できませんが、Red Hat Enterprise Linux やお好きな Linux のディストリビューションをご利用いただいても、Node.js のインストール手順は異なりますが Windows Server をご利用いただいても設定可能です。)
左下の「作成」をクリックします。
仮想マシンの名前、VM ディスクの種類、ユーザー名などを指定します。
認証の種類は SSH 公開キーのほうがよりセキュアですが、今回は簡単に実装するためパスワードを選択しました。
パスワードは複雑なものを入力します。リソースグループはわかりやすいように、今回は新規作成しましたが、既存のものを選択してもよいです。
仮想マシンのサイズを選択します。パフォーマンスを気にしないのであれば、A1 や A1v2 を選択し、一番下の「選択」をクリックします。
オプション機能の構成画面で、特にこだわりが無ければデフォルトのまま「OK」をクリックします。
最後にオプションを確認して「OK」を、クリックします。
ここまでで仮想マシンの作成が終わりました。
右上の鈴のアイコンのところの通知が増えるのを待ちます。デプロイメントが成功しましたというメッセージがでていたら、デプロイ成功です。
Azure IaaS ネットワークの設定
リソースグループから先ほど作成したものを選択します。
最初に、ネットワーク設定を行うので、ネットワークセキュリティグループを選択します。
「受信セキュリティ規則」をクリックします。
Node-RED で使用する 1880 と Web サーバーで使用する 80 を追加します。
では、設定を開始します。
Node-RED のインストールと設定
構築したUbuntu Server の IP アドレスを確認します。先ほどのリソースグループの中でパブリック IP アドレスをクリックします。
展開される画面の右端に表示される IP アドレスを使用します。
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs build-essential
sudo npm install -g node-red
冒頭だけ画面キャプチャを載せておくと下記のような感じです。
インストールが完了したら動作確認を行います。
動作確認
node-red
ということで、手順を簡単に解説させていただきました。
より深い内容は、、、ほかの方のAdvent Calendar やユーザー会にぜひ遊びにいらしてくださいね。
本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。