【OpenRPA】「OpenFlow」と「NodeRED」をローカルインストールしてみる
OpenRPAの記事、ほとんど私しか書いてないですね・・・。
ちまちま記事増やしていきます。
はじめに
以前、開発者ご本人からこんなコメントをもらいました。
@skadefro
Have you seen the new feature of running openflow-nodered locally?
なるほど。OpenFlow-NodeREDをローカルで動かす新機能ですか。
以前に書いた記事では、Dockerを使ってコマンドどーん!で立ち上げたのですが、今回の方法はOpenFlowとNode-REDをサービスとして起動します。
また、「OpenFlowとNode-REDは、それぞれ違うサーバーで動かそう!」といったことができます。
さっそくやってみましょう。
必要なもの
Windowsにインストールする前提です。
以下をあらかじめインストールしておく必要があります。
- Node.js
- MongoDB
- RabbitMQ
ダウンロード後、インストーラーに従ってインストールします。
RabbitMQ補足その1
RabbitMQは、Erlangを前提とするためあらかじめインストールしておいてください。
https://www.erlang.org/downloads
RabbitMQ補足その2
RabbitMQの管理画面を有効化する必要があります。
私はこれをやらなかったせいでOpenFlowからシナリオを実行できませんでした。
RabbitMQのインストール完了後、コマンドプロンプトから以下のコマンドを入力します。
"C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.8\sbin\rabbitmq-plugins.bat" enable rabbitmq_management
※ パスはインストールしたバージョンその他環境に応じて変えて下さい。
コマンド実行後、http://localhost:15672/ にアクセスし、以下のような画面が表示されることを確認します。
OpenFlowをローカルインストール
OpenRPAのドキュメント (2.2.1. Quickstart Running OpenFlow using NPM )を参考にやっていきます。
buildtoolsのインストール
コマンドプロンプトから以下を実行します。
C:\> npm install --global windows-build-tools
※ マニュアルでは npm install --global windows-built -tools となっています。
スペルミスっぽいので、上記のコマンドを実行してください。
openflowのインストール
コマンドプロンプトから以下のコマンドを実行します。
C:\> npm i openiap -g
+ [email protected]
added 781 packages from 697 contributors in 116.3s
C:\> openflow-cli --init
Creating openflow.env
C:\> openflow-cli --install openflow
{"message":"Serviceopenflow installed","level":"info"}
初回アクセス
ブラウザから、http://localhost.openrpa.dk にアクセスしてみましょう。
こんな画面が表示されていれば、インストールは成功です。
ユーザーの作成
OpenFlowのユーザーを作ります。
SIGN INボタンの下に英語が書かれていますが、「新しいユーザー名を入力すると、自動的のそのユーザーが作られるよ」とのことです。
自分のメールアドレスと、任意のパスワードを入力して「SIGN IN」を押すと・・・
Node-REDをローカルインストール
余談ですが、Node-REDのインストールでかなりハマってました。
マニュアル見てもNode-REDのインストール手順書いてなかったんですよね。
上記のOpenFlowのインストールをやればNode-REDも使えると思っていたので、Node-REDの画面にアクセスすらできなくてかなり悩んでました。
OpenFlowのReadmeを見て、もしかしてコレか!?と試したところでうまくいったので、以下の通りインストールします。
Node-REDのインストール
コマンドプロンプトから以下のコマンドを実行します。
C:\> npm i openflow-nodered -g
+ [email protected]
added 543 packages from 506 contributors in 92.33s
C:\> openflow-nodered-cli --init
Creating noderedlocal.env
Creating noderedremote.env
PS C:\WINDOWS\system32> openflow-nodered-cli --install noderedlocal
username? [OpenFlowで作ったユーザー名]
password? [OpenFlowで作ったユーザーのパスワード]
{"message":"signed in as [ユーザ名] with id xxxxxxxxxxxxxxxxxxxxxxxx","level":"info"}
{"message":"websocket.close","level":"verbose"}
{"message":"NodeJS version v12.10.0 Config C:\\WINDOWS\\system32\\noderedlocal.env","level":"info"}
{"message":"Installing servicenoderedlocal","level":"info"}
{"message":"Servicenoderedlocal installed","level":"info"}
{"message":"Quit","level":"info"}
サービス登録の時に、OpenFlowのユーザー名とパスワードを聞かれるので入力してください。
初回アクセス
ブラウザから、http://localhost.openrpa.dk:1880 にアクセスしてみましょう。
こんな画面が出ればインストール成功です。
ログイン
[Sing in with SAML]ボタンを押します。
すでにOpenFlowにログインしているのであれば、SAML認証によってそのままログインできます。
未ログインであればOpenFlowのログイン画面が表示されるので、OpenFlowに作ったユーザーでログインします。
ログインするとこんな画面が表示されます。
これでローカルインストール完了です。
補足:サービスの起動停止
コマンドでやる場合は
openflow-cli --stop openflow
openflow-cli --start openflow
openflow-nodered-cli --start noderedlocal
openflow-nodered-cli --stop noderedlocal
Windowsのサービスとして登録されているので、サービスの画面からでも起動・停止できます。
補足:設定ファイルについて
サービス登録のコマンドを叩くと、以下の設定ファイルが自動的に作成されます。
- OpenFlowの設定ファイル
C:\Windows\System32\openflow.env
- NodeREDの設定ファイル(ローカル接続)
C:\Windows\System32\noderedlocal.env
- NodeREDの設定ファイル(デモ環境 app.openiap.io 接続)
C:\Windows\System32\noderedremote.env
各設定値の内容まで理解できていないのですが、1つわかっていることだけ。
最初に「OpenFlowとNode-REDは、それぞれ違うサーバーで動かそう!」と書きましたが、Node-REDの設定で、どこのOpenFlowに接続するかを定義すればよさそうです。
saml_federation_metadata=http://localhost.openrpa.dk/issue/FederationMetadata/2007-06/FederationMetadata.xml
saml_issuer=uri:localhost.openrpa.dk
api_ws_url=ws://localhost.openrpa.dk
domain=localhost.openrpa.dk
jwt=
4か所のlocalhost.openrpa.dk を、接続したいOpenFlowのURLに書き換えます。
また、openflow-nodered-cli --install noderedlocal
を実行すると、そのログイン情報としてjwt
が設定されるため、jwt
を空白に設定した上で再度openflow-nodered-cli --install noderedlocal
コマンドを実行します。
おわりに
OpenFlowとNode-REDに関するチュートリアルは、以下の記事をご覧ください。
【OpenRPA/OpenFlow】Node-REDを使ってRestAPI経由でシナリオ実行する
Author And Source
この問題について(【OpenRPA】「OpenFlow」と「NodeRED」をローカルインストールしてみる), 我々は、より多くの情報をここで見つけました https://qiita.com/yoshiyuki-iwata/items/c1b09f4e06ed954515e4著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .