お久しぶりです、先端技術事業部 あきやまです。
所属が微妙に変わりました。
昨今、大変な状況ですが、頑張りましょう。
休日は引きこもって掃除とゲームをしています。
今回は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を使用する必要はありません。
その為、最小権限であっても、あくまで管理を行うユーザーの作成のみで問題ないと考えています。
お待たせしました。
それでは、実際にOrchestrator環境を作成してみましょう。
UiPath無料評価版へアクセスして下さい。
Community CloudのTry itをクリックし、任意のアカウントを作成、又はログインします。

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

マシンはOrchestratorに接続する端末の定義です。
端末1台につき、1マシンを作成します。
マシンページへ移動し、追加ボタンをクリックします。

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

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

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

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

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

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

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

補足
ライセンスモデルにより、ライセンスの消費タイミングが異なります。
(詳細はUiPath Orchestrator ガイドを参照下さい。)
・Named User(NU)
ロボット作成時点で1つ消費します。
ライセンス数を超えるロボットは作成出来ません。
・Concurrent User(CU)
・Concurrent Runtime(CR)
実際に使用される(以下の)タイミングで消費します。
複数ロボットを作成出来ますが、同時に使用する場合は同数のライセンスが必要です。
ロボットグループは、ロボットの纏まりを定義する機能となります。
プロセス(自動化ソフトウェア)をインストール出来る対象はロボットグループで指定となります。
この定義により、同じフォルダ内でもプロセスをインストール出来るロボットを制限する事が可能です。
ロボットページのロボットグループタブをクリックし、追加ボタンをクリックします。

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

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

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

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

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

ここで接続に失敗する場合、接続する端末側でプロキシ設定が必要となる可能性があります。
StudioとOrchestratorを接続すると、パブリッシュ先にOrchestratorが追加されます。
パブリッシュ先以外は未接続時と同様です。
- 皆さんも簡単なワークフローで良いので、作成してみて下さい。
ソフトウェアをパブリッシュします。

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

パッケージ名称毎に管理されます。
複数のバージョンをパブリッシュしている場合、パッケージ毎のメニュー画面から管理しているバージョンを確認出来ます。
パブリッシュしただけでは、各ロボットでのインストールは出来ません。
次のプロセス登録が必要です。
パブリッシュしたパッケージを各端末でインストール出来るようにする為には、プロセスとして登録する必要があります。
バージョンを更新した場合も、プロセス登録を更新する必要があります。
例えば、開発者がパブリッシュしてパッケージが登録されても、管理者が承認しないと各端末でインストールを許可しない、といった管理が可能です。
プロセスページに移動し、追加をクリックします。

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

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

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

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

実行ログが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で業務を効率化していきましょう。
ありがとうございました。