1
0

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 1 year has passed since last update.

WorkatoAdvent Calendar 2022

Day 14

Workato:On-prem Agentで様々なリソースを利用してみる

Last updated at Posted at 2022-12-14

はじめに

前回は、LinuxへのOn-prem Agentのインストールについて説明しました。

今回は、On-prem Agentを利用して様々なリソースを利用してみます。

WorkatoからOn-prem Agentを踏み台としたHTTPアクセスをしてみる

WorkatoとOn-prem Agentを組み合わせることで、On-prem Agentがインストールされた環境(サーバ)を踏み台として、HTTPアクセスが行えるようになります。また、プライベートネットワーク内のHTTPアクセスも可能ですが、On-prem Agentから外部(インターネット)へのアクセスが可能な場合は、On-prem Agentを踏み台としてインターネット上に対してHTTPアクセスすることが可能です。

手順

【1】コネクション作成

HTTPコネクタのコネクションを次の通り追加します。
image.png

項目
Connection name 任意の名称
Connection type 接続先のOn-prem Agentのグループ名
Authentication type 接続先アプリに応じたものを選択
Base URL 空欄、または接続先に応じたものを入力
Use custom TLS/SSL certification settings クライアント証明書が必要な場合のみYesとして設定を行う

【2】レシピ作成

HTTPコネクタを追加したレシピを作成します。
image.png

コネクションは、「【1】コネクション作成」で追加したコネクションを選択ます。
image.png

設定は、接続先アプリケーションに応じた設定を行います。
今回は、 ifconfig.io へOn-prem Agent経由でアクセスし、接続元のIPアドレスを取得してみます。

ifconfig.io を利用する場合の設定は次の通りとなります。

image.png

【3】レシピ実行

作成したレシピ実行をすると、次のような結果となります。
hostというキーの値が、On-prem Agentがインストールされた環境のIPアドレス、あるいはOn-prem Agentがインストールされた環境の上位にあるNAT(ルータ)のアドレスが出力されていることで、HTTPコネクタのリクエストがOn-prem Agent経由で行われたことが分かります。
image.png

関連情報

Workatoからオンプレ上のファイルを操作してみる

WorkatoとOn-prem Agentを組み合わせることで、On-prem Agentがインストールされた環境(サーバ)からアクセス可能なファイルシステム上にあるファイルやフォルダへのアクセスが可能となります。

また、ローカルファイルシステムに限らず、NFSやWindowsファイル共有(CIFS)などのネットワークファイルシステム上にあるファイルへのアクセスも可能ですので、On-prem Agentがインストールされた環境でそれらのネットワークファイルシステムをマウントしておくことで、1台のOn-prem Agentで(複数台にOn-prem Agentをインストールする必要なく)複数台のサーバ上にあるファイルやフォルダへアクセスすることが可能です。

手順

【1】ファイルの準備

On-prem Agentがインストールされた環境(サーバ)上にファイルを準備します。

$ mkdir -p /home/ubuntu
$ echo "Hello, world!" > /home/ubuntu/hello.txt

【2】config.ymlの変更

config.yml に対して、以下の内容を追加します。

※config.ymlは、デフォルトでは次の場所にあります。

  • Linux: /opt/workato-agent/conf/config.yml
  • Windows: C:\Program Files\Workato Agent <Instance name>
files:
  helloworld:
     base: "/home/ubuntu/data"

なお、Windowsの場合は次のようにパスを指定します。(\\\ として表現します)

files:
  helloworld:
     base: "C:\\Users\\example\\data"

以上の設定が完了したら、On-prem Agentを再起動します。

【3】レシピ作成

Workatoでは、On-prem filesコネクタを使用することで、レシピからOn-prem Agent上のファイルへアクセスが可能です。
image.png

On-prem filesコネクタで提供される機能は、以下を参照ください。

今回は、On-prem Agent上のファイルをダウンロードしてみます。

1.コネクション作成

最初に、コネクションを作成します。Baseには上記手順で config.yml に追加したフォルダ(ディレクトリ)のパスを指定します。

image.png

2.Download fileアクションの選択

On-prem filesコネクタをレシピ上へ追加し、「Download file」アクションを選択します。
image.png

ダウンロードしたいファイルをドロップダウンメニューから選択するか、ファイルのパスを入力します。

image.png

3.ダウンロードしたファイル内容を変数にセット

Variables by Workatoコネクタ(あるいはお使いのアプリケーションに対応するコネクタ)を追加し、ダウンロードしたファイルの内容(File contents)をセットします。

image.png

以上の内容をもとに、レシピを作成すると、次の通りとなります。

image.png

【4】レシピ実行

作成したレシピ実行をすると、次のような結果となります。

「【1】ファイルの準備」で作成した hello.txt の内容がダウンロードされ、Variables by Workatoの結果に反映されている(変数の値にセットされている)ことが確認できます。

image.png

関連情報

Workatoからオンプレ上のコマンドを実行してみる

WorkatoとOn-prem Agentを組み合わせることで、On-prem Agentがインストールされた環境(サーバ)上のコマンドを実行することが可能です。

例えば、Workatoからオンプレ上のRPAを実行して後続の作業を進める、オンプレ上のコマンドを定期的に実行する、オンプレ上のコマンドを介してレガシーシステムと連携する等、コマンド実行を通して様々な連携が可能となります。また、レガシーシステムのようなWeb APIを持たないシステムとの連携にも有効です。

image.png

【1】コネクション作成

On-prem command-line scriptsコネクタのコネクションを次の通り追加します。
image.png

項目
Connection name 任意の名称
On-prem group 接続先のOn-prem Agentのグループ名
Concurrency limit 同時実行数の上限(省略可能)
Timeout タイムアウト(省略可能)
Scripts Script name: スクリプト名(任意の名称)
Script body: 実行内容

【2】レシピ作成

On-prem command-line scriptsコネクタを追加したレシピを作成します。
image.png

コネクションは、「【1】コネクション作成」で追加したコネクションを選択ます。
image.png

ステップ上で実行するCommand-line scriptを選択します(「【1】コネクション作成」で設定したScriptsより選択可能)。また、Timeout limitを適宜調整します。
image.png

【3】レシピ実行

作成したレシピ実行をすると、次のような結果となり、指定されたコマンドが実行されたことが分かります。
image.png

関連情報

On-prem command-line scriptsコネクタではInput parametersの指定や実行可能なコマンドをホワイトリストで管理する等、より詳細な設定も行えます。詳しくは、以下の内容をご参照ください。

最後に

On-prem Agentを利用することで、オンプレ上の様々なリソースをWorkatoから利用できることや、オンプレを踏み台としたHTTPアクセスが行えることがご理解いただけたものと思います。ここでは書ききれていませんが、オンプレ上のDBサーバやアプリケーションへのアクセスも可能です。オプション機能ではありますが、Workatoから試していただくことは可能ですので、宜しければ是非お試しください。

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?