お久しぶりです、先端技術事業部 あきやまです。
所属が微妙に変わりました。

昨今、大変な状況ですが、頑張りましょう。
休日は引きこもって掃除とゲームをしています。

今回はUiPath Orchestratorのお話をします。

この記事を読んでいるという事は、
UiPath Studioで開発、UiPath Robotで運用を経験されている方が多いかと思います。

ただ、UiPath Orchestratorはサーバー型の管理ツールという事を知っていても、具体的にどう使えば良いか分からないですよね。

UiPath Orchestrator ガイドが公開されておりますが、内容も難しく、少し手を出しづらいかと思います。

そこで、無料評価版のUiPath Community Cloudを使用して、UiPath Orchestratorの基本的な使い方や、出来る事を紹介していこうかと思います。

目次

さて、早速始めたい所ですが、流れでは説明が難しい点について、何点か説明しておきますね。

環境の分割

Orchesratorは1ライセンス(1インスタンス)で1つのホスト環境が作成されます。
ホスト環境の中で論理的に環境を分割出来ます。
管理範囲や、各種パラメータの公開・適用範囲を限定する事が可能です。

分割には以下の種類があります。
・テナント
・フォルダ

 

分割により管理出来る範囲を図で表してみました。
* 但し、今回ご説明する無償版やOrchestrator Basicではテナントの追加は出来ません。

例えば、部門毎にテナントを作成し、更に部門内のチームやプロジェクト毎にフォルダを作成する事が考えられます。
ライブラリはホストレベル(全テナントで使用可能)、テナントレベル(特定のテナント内で使用可能)を設定できます。

後述しますが、ロボットグループを用いて、フォルダ内でも実行出来るプロセス(ソフトウェア)を制限する事が可能です。

管理権限の種類と範囲

Orchestratorを管理する権限には以下の種類があります。
・ホスト管理者:環境全体を管理する権限です。
・テナント管理者:1つのテナント環境全体を管理する権限です。
・ユーザー:許可されたフォルダの中で、許可された操作のみを行える権限です。複数のフォルダに対して許可する事が可能です。

 

各権限が管理する範囲を図で表してみました。
* ユーザーはさらに各操作に対して「閲覧のみ、作成も可能」など、細かく指定が可能です。

例えば、Orchestrator全体の管理をホスト管理者が実施し、各テナントを部門の管理者が行う事が考えられます。
更に部門内のチームやプロジェクトのリーダーを、各操作の実行権限を持つユーザーとして作成し、メンバーは参照権限のみを持つユーザーとして作成する事も出来ます。

補足ですが、ソフトウェアの開発者・運用者はOrchestratorを使用する必要はありません。
その為、最小権限であっても、あくまで管理を行うユーザーの作成のみで問題ないと考えています。

UiPath Orchestrator環境の作成

お待たせしました。
それでは、実際にOrchestrator環境を作成してみましょう。

1. Community Cloudを導入します。

UiPath無料評価版へアクセスして下さい。
Community CloudのTry itをクリックし、任意のアカウントを作成、又はログインします。

2. テナントページへ移動する。

サービスへ移動し、テナントをクリックします。
選択したテナントのページへ遷移します。

3. マシンを作成する。

マシンはOrchestratorに接続する端末の定義です。
端末1台につき、1マシンを作成します。

マシンページへ移動し、追加ボタンをクリックします。

標準マシンを選択します。

必要情報を入力して、プロビジョニングをクリックします。
名前は端末のシステム名と一致している必要があるので、ご注意下さい。(端末のRobot設定画面から取得すると簡単です)
接続する対象が”Studio”,”Attended Robot”の場合は、各ライセンスの数値を変更する必要はありません。

完了するとマシンが追加されます。

4. ロボットを作成する。

ロボットは接続環境の定義です。
接続する端末のアカウント単位で作成します。
例えば、1台の端末を3人が使用する場合、1マシンに対して3ロボットの作成が必要になります。

ロボットページへ移動し、追加ボタンをクリックします。

標準ロボットを選択します。

必要情報を入力して、作成をクリックします。
接続する(ライセンス)タイプが”NonProduction”、”UnAttended Robot”の場合は、ユーザー名だけでなく、ログインパスワードも必要です。(今回はStudioを選択してます)

作成するとロボットが追加されます。

補足
ライセンスモデルにより、ライセンスの消費タイミングが異なります。
(詳細はUiPath Orchestrator ガイドを参照下さい。)

・Named User(NU)
ロボット作成時点で1つ消費します。
ライセンス数を超えるロボットは作成出来ません。

・Concurrent User(CU)
・Concurrent Runtime(CR)
実際に使用される(以下の)タイミングで消費します。
複数ロボットを作成出来ますが、同時に使用する場合は同数のライセンスが必要です。

5. ロボットグループを作成する。

ロボットグループは、ロボットの纏まりを定義する機能となります。
プロセス(自動化ソフトウェア)をインストール出来る対象はロボットグループで指定となります。
この定義により、同じフォルダ内でもプロセスをインストール出来るロボットを制限する事が可能です。

ロボットページのロボットグループタブをクリックし、追加ボタンをクリックします。

必要情報を入力して、作成をクリックします。
グループの括りが分かりやすい名前にしましょう。

グループに含むロボットを選択して、更新をクリックします。
(今回は1つだけですが、もちろん複数選択できます)

完了するとロボットグループが追加されます。

6. 端末をUiPath Orchesratorに接続します。

端末へ接続情報を入力して、Orchestratorと接続を行います。
接続する事で、プロセスのインストールやログをOrchectratorへ集約が出来るようになります。

Orchestratorのマシンページから、マシンキーをコピーしておきます。

接続対象の端末にて、Robotの設定画面を開きます。
必要情報を入力して接続をクリックします。
URLは「https://{ホスト名}/{テナント名}/」となります。(テナントページのURLを参考にするとわかりやすと思います)
マシンキーにコピーした情報をペースとします。

ここで接続に失敗する場合、接続する端末側でプロキシ設定が必要となる可能性があります。

7. Studioからパブリッシュする

StudioとOrchestratorを接続すると、パブリッシュ先にOrchestratorが追加されます。
パブリッシュ先以外は未接続時と同様です。

  • 皆さんも簡単なワークフローで良いので、作成してみて下さい。

ソフトウェアをパブリッシュします。

パブリッシュに成功すると、Orchestratorのパッケージページに追加されます。

パッケージ名称毎に管理されます。
複数のバージョンをパブリッシュしている場合、パッケージ毎のメニュー画面から管理しているバージョンを確認出来ます。

パブリッシュしただけでは、各ロボットでのインストールは出来ません。
次のプロセス登録が必要です。

8. UiPath Orchestratorでプロセスを登録する

パブリッシュしたパッケージを各端末でインストール出来るようにする為には、プロセスとして登録する必要があります。
バージョンを更新した場合も、プロセス登録を更新する必要があります。

例えば、開発者がパブリッシュしてパッケージが登録されても、管理者が承認しないと各端末でインストールを許可しない、といった管理が可能です。

プロセスページに移動し、追加をクリックします。

必要情報を入力し、作成をクリックします。
パッケージのバージョンを選択します。(更新バージョンをパブリッシュしても、ここで選択しないとインストール出来ません)
ここで選択したロボットグループが、このプロセスをインストールできます。

作成すると、プロセスが追加されます。

9. Robotからインストールする

プロセスを登録すると、端末よりインストールが可能です。
インストール出来る対象バージョンは、プロセス登録時に選択したバージョンとなります。

Robotを起動し、対象のプロセスをインストールします。

インストールが完了すると実行出来るようになります。

10. UiPath Orchestratorでログを確認する。

実行ログがOrchestratorで確認出来るようになります。
ログレベルや、プロセス単位での絞込も可能です。

Orchestratorのログページへ移動します。
実行ログが表示されます。

お疲れ様でした、一先ずここまでとなります。

補足ですが、説明しきれなかった機能で、特に使用する事が多い物を簡単に紹介しておきます。

・トリガー

 

UnAttended Robot、NonProdcution Robotのロボットに対して、自動起動を定義する機能です。
プロセスに対して、スケジュール等の条件を設定します。
Orchestrator未接続の時に、Windowsタスクスケジューラーで自動起動設定するイメージと同様です。

・アセット

Orchestrator上でKey-Valueのセットを作成し、UiPath Studioの「アセットを取得」[資格情報を取得] アクティビティで取得します。
様々な型のValueだけでなく、Credential型(UserName/Password情報)を取得する事が出来ます。
Orchestrator未接続の時に、Windows資格情報を取得するイメージと同様です。

また、同じKeyでもロボット単位で異なるValue(ただし同じ型)を設定する事も可能です。

如何でしたでしょうか。

ざっくりとでも理解を頂けていたら幸いです。

今回は接続端末やパッケージが1つしか用意していませんが、複数の管理を行う場合も基本的な操作、手順は同じです。

Community CloudはStudioが2台、Attended Robotが2台、UnAttended Robotが1台のライセンスが準備されていますので、
評価用としての使用になりますが、複数台の端末管理を試す事が出来ます。

やはり、実際に使用してみるのが一番です。
是非、色々と試してみてください。

冒頭でお話した通り、微妙に所属が変わりました。
実はRPAチームから抜ける事となりまして、RPAの記事はこれが最後になるかもしれません。

しかし、RPAは幅広い業務に利用できるので、これからもどんどん使って行こうと思っています。

皆さん、これからもRPAで業務を効率化していきましょう。

ありがとうございました。