はじめに
この記事ではUiPath Orchestratorの利用が初めての方を対象として、主にUiPath Automation Cloud内のOrchestratorについて、一般的な初期設定の流れを紹介します。
2023年7月時点の情報および製品バージョン 2023.4 を元に作成しており、今後リリースされる新しいバージョンによって仕様が異なる可能性があります。
1. Orchestratorを利用すると何ができるの?
UiPath Robotは、人間の代わりにコンピューターで作業をしてくれるソフトウェアです。Robotは人間からの指示通りに作業しますが、Robotにどんな作業をしてほしいかは、UiPath Studioで開発するワークフロー(xamlファイル)にまとめます。
Orchestratorがない運用
Studioで開発したワークフロー(xamlファイル)を含むオートメーションプロジェクトをパッケージ化し、Robotマシンにパッケージ(nupkgファイル)を手動で配布して実行します。
StudioをインストールしたStudioマシンには、デバッグ実行できるよう、必ずRobotもセットでインストールされています。
パッケージのコピー
ボス: あ、忘れてた。今日はアイコさんがお休みだから、ユウくん代わりにいつもの作業をロボットで実行しといてくれる?
ユウ: お任せください!ロボット、いつもの作業やっといて!
ユウ: あれ?ロボットが思った通りに動かない。
ボス: えーー!とりあえずワークフローを開発したウイさんに調べてもらおう。
~3時間経過~
ウイ: ワークフローのこの箇所でエラーになってるぞ。でもこの箇所は、ちょうど1か月ぐらい前に改善したからエラーにならないはずなんだけどなあ。
ユウ: 1か月前?私のロボットが実行しているパッケージは、1年ぐらい前にアイコさんから分けてもらったパッケージですよ。
ウイ: そうか!修正前の古いパッケージのまま使ってたからエラーになっちまったんだ。こんな時にOrchestratorがあればなあ。
ボス: Orchestratorがあれば.........何ができるんだっけ?
ユウ: ダダダダーン♪
ウイ: 惜しい!それはオーケストラだよ。音楽は関係しませんが、Orchestratorも似たようなイメージです。
Orchestratorがある運用
RobotをOrchestratorに接続すると、次のような便利なことができるようになります。
-
Robotのライセンス管理
RobotやStudioを利用するには、ライセンスが必要です。
RobotをOrchestratorに接続するだけで、Orchestratorからライセンスを取得できるようになります。
Robotやマシンが取得するライセンスの種類は、Orchestratorで事前に設定しておきます。 -
オートメーションの管理
Studioで開発したオートメーションプロジェクトのパッケージを、Orchestratorにアップロードして各Robotに共有できます。
誰のRobotがどの作業内容を実行できるか管理できます。
オートメーションプロジェクトの機能追加やバグ修正し、同じパッケージの新しいバージョンをリリース後には、Robotが実行するパッケージバージョンもOrchestratorで指定できます。
また各Robotによる実行結果をOrchestratorで確認できます。
-
無人オートメーションの実行
RobotをOrchestratorに接続すると、Orchestratorから遠隔でRobotにどの作業を実施するか指示を出せます。
Orchestratorでトリガーを設定すると、指定時刻や特定のきっかけが発生した際に、自動でRobotに指示を出すこともできます。 -
Orchestratorリソースの活用
Orchestratorにはその他にも様々な機能があります。-
アセット機能
パスワードや頻繁に更新するデータ等、ワークフローに直接埋め込みたくないデータをOrchestratorで管理し、Robotから参照させることができます。 -
キュー機能
トリガー機能とセットで利用し、Orchestratorへ処理データが登録されると、空いているRobot端末で自動でデータ処理を開始します。処理に時間のかかるデータが複数ある場合には、複数Robotで分散して処理できるメリットもあります。 -
Webhook機能
Orchestratorで発生した様々なイベントを、サードパーティーのWebhookサービスに通知することができます。 -
Orchestrator APIの利用
OrchestratorのWeb画面で操作できる内容は、API経由でも実行できます。サードパーティー製品を利用して、Orchestrator API経由でRobotに指示を出すことができます。 -
Orchestratorフィードの利用
Robotが作業をする際には様々なライブラリを必要としますが、オフライン環境では各Robotマシンへのライブラリ配布に手間がかかります。Orchestratorにライブラリをアップロードすると、Orchestratorに接続するRobotマシンはそのライブラリを利用できるようになります。 -
Robotの自動更新
Robotのバージョンアップを、Orchestratorから管理できます。
-
-
他UiPath製品との連携
Orchestratorを利用することで、Action CenterやApps、Insights、Integration Service、Test Suiteなど他のUiPath製品と連携できます。
2. Orchestratorはどうやって利用開始できるの?
大きく分けると、クラウド版とオンプレミス版の2つがあります。この記事では、クラウド版Orchestratorについて初期設定をご説明します。
クラウド版Orchestrator
インターネットに接続するだけで利用できる クラウド(SaaS)版のOrchestratorです。インフラストラクチャーをユーザーに用意していただく必要がなく、簡単に利用開始できます。Orchestratorのインストール、メンテナンス、アップグレードはUiPathが担当します。
Automation Cloud( https://cloud.uipath.com/ )に登録することでAutomation Cloudの一部として利用開始できます。
オンプレミス版Orchestrator
ユーザーが用意する環境にOrchestratorをインストールして利用することもできます。データはユーザーの管理下に留まります。お好きなタイミングでOrchestratorをアップグレードできます。
WindowsサーバーにOrchestratorをスタンドアロンでインストールする形が一般的ですが、LinuxサーバーにOrchestratorを含むUiPathプラットフォーム全体(Automation Suite)をインストールすることも可能になりました。
https://docs.uipath.com/ja/overview/other/latest/overview/orchestrator-differences
3. Automation Cloud 内の Orchestrator初期設定
この記事では簡単に用意できるAutomation Cloud 内の Orchestratorについて、初期設定の流れを紹介します。
1つのライセンス契約につき、1つのAutomation Cloudの組織が用意されます。
まだAutomation Cloudの組織がない場合には、以下URLより新しい組織を用意しておきます。
既にAutomation Cloudの組織がある場合には、既存の組織の管理者に招待してもらいます。
https://cloud.uipath.com/
3-1. 設定前に
Orchestratorの階層構造
Automation Cloud 内の Orchestratorは、以下のような階層構造で管理します。
テナント間ではOrchestratorデータが分離されます。たとえば複数のグループ会社で1つのライセンス契約を締結された際に、会社ごとにテナントを分ける運用が考えられます。
同じテナント内のフォルダー間では、パッケージやマシン設定などのデータが共有されます。実行できるオートメーションプロセス(Robotの作業内容)等はフォルダーごとに管理されます。たとえば部署ごとにフォルダーを分ける運用が考えられます。
Automation Cloudの組織からユーザーを削除すると、その後同じ名前やメールアドレスでユーザーを再登録しても、内部では新しいIDが発行されて別ユーザーとして管理されます。
Automation Cloudの組織からユーザー削除した際に、Orchestratorテナント内に同名の古いユーザーが残っても利用できないので、Orchestratorテナントからも古いユーザーは削除してください。
Orchestrator URLのお気に入り登録
Webブラウザのお気に入り(ブックマーク)にOrchestratorのURLを登録することで、次回以降のアクセスが簡単になります。
Automation Cloud内のOrchestratorをご利用の場合は、https://cloud.uipath.com
やhttps://cloud.uipath.com/<組織名>
をお気に入りに登録します。
ログイン画面にアクセス時の長いURLをお気に入り登録して利用すると、正常にログインできなかったり、余分な画面遷移が発生することがあります。
オンプレミス版Orchestratorをご利用の場合は、ログイン画面にアクセスすると「https://<Orchestrator URL>/identity/?returnUrl=xxxxxx」等のように表示されます。
「https://<Orchestrator URL>/」部分のみをお気に入りに登録します。
日本語での表示
Automation Cloudのデフォルト表示言語は英語ですが、プロファイル設定画面の「Language」から日本語に変更できます。
プロファイル設定画面に遷移するには、Automation Cloudにログイン後、ページ上部の丸いアイコン > 「Preferences」ボタンをクリックします。
Robotの準備
Robotにも、オンプレミス版とクラウド版があります。
- オンプレミス版
- Studio Desktop。Windows OSのマシンにのみインストールできます。
- Robot/ロボット。Windows OS、Mac OS、Linux OSのマシンにインストールできます。
- クラウド(SaaS)版
- Studio Web。クロスプラットフォームのプロジェクトのみ開発できます。
- Cloud ロボット。仮想マシンとサーバーレスの2種類があります。
この記事では、Windows OSマシンにオンプレミス版Robotをインストールする手順でご紹介します。
Windows OSマシンにインストールするStudioおよびRobotは、どちらも同じ「UiPathStudio.msi」というインストーラーからインストールします。
「UiPathStudio.msi」実行時にRobotは必ずインストールされますが、Studioを一緒にインストールするかどうかは選択できます。
実現したいこと | インストール時にチェックを入れる項目 | 必要なライセンス |
---|---|---|
Studio/StudioXで開発 | Studio | ユーザーライセンス |
有人オートメーションの実行 | なし | ユーザーライセンス |
無人オートメーションの実行 | サービスモード | ロボットライセンス |
1つのWindowsマシンで上記3つの全部 | Studio、サービスモード | ユーザーライセンスとロボットライセンス |
StudioやStudioXは、Windowsプロジェクトとクロスプラットフォームプロジェクトのどちらも開発できます。
Windowsプロジェクトとは、Windows OS上のRobotでのみ実行できるプロジェクトで、豊富なアクティビティを利用できます。
クロスプラットフォームプロジェクトは、Windows OS、Mac OS、Linux OSのどのマシンでもRobotが実行できますが、Windowsプロジェクトと比べると一部利用できないアクティビティがあります。
3-2. 有人オートメーションの設定
この記事では、以下の流れで有人オートメーションを実行します。
- Studioでプロジェクト開発:Robotに実行させたい作業内容を、ワークフロー(xamlファイル)に記載します。
- Studioでプロジェクトをパブリッシュ:ワークフロー等が格納されたプロジェクトフォルダの中身をまとめて、1つのパッケージ(nupkgファイル)に圧縮します。
- Orchestratorでプロセス登録:Orchestratorフォルダーで、どのパッケージのどのバージョンを実行するか登録します。フォルダーに割り当てられたRobotは、そのフォルダーに登録されたプロセスを実行できるようになります。
- UiPath Assistantから有人実行:Robotがインストールされたマシンにログインし、Robotに実行させたいプロセスをAssistantで選択して実行します。1回のプロセス実行が1つのジョブとして管理されます。
まずは、Studioでのプロジェクト開発やAssistantでの有人実行用途のユーザーライセンスをRobotが取得できるようにOrchestrator側で設定します。
ユーザーライセンスには、Attended User、Citizen Developer、Automation Developerライセンスなどがあります。
ユーザーライセンスの管理
Automation Cloud( https://cloud.uipath.com/ )にログインし、左側の管理アイコンをクリックして管理画面に遷移します。左上の九つのドットアイコンをクリックすると、各アイコン名が表示されて分かりやすいです。
管理画面内の設定 > 詳細設定タブにて「ユーザー ライセンスの管理」が有効化されていることを確認します。
新しくAutomation Cloudを登録された場合には、デフォルトでユーザーライセンス管理が有効化されています。
「無効化」ボタンが表示されていれば、ユーザーライセンス管理が有効な状態なので問題ありません。
「有効化」ボタンが表示されていれば、ユーザーライセンス管理が無効な状態になっています。ユーザーライセンス管理を有効化しても問題ないか、表示される警告メッセージの内容をご確認いただいた上で有効化します。
Automation Cloudの組織管理者以外は、Automation Cloudの管理画面にアクセスできません。
管理アイコンが表示されない場合には、既存の管理者に「アカウントとグループ」画面にて「Administrators」グループに追加してもらいます。
ユーザーアカウントの追加
新しいユーザーがAutomation Cloudを利用する場合には、最初にAutomation Cloud管理画面でユーザーを招待します。その後、Orchestratorテナントにユーザーを割り当てます。
Automation Cloudの管理 > 「アカウントとグループ」から、ユーザーを招待します。ユーザーの招待にはメールアドレスが必要です。
ユーザーを「Administrators」グループに所属させると、そのユーザーはAutomation Cloud上で組織管理者となり、Automation Cloudの管理画面を操作できるようになります。
招待を受けたユーザーは、受信メールに沿ってUiPathアカウントを新規登録することでAutomation Cloudにログインできるようになります。
※同じメールアドレスでUiPathアカウント登録済みの場合には、新規登録ではなく既存アカウントでログインします。
オンプレミス版のスタンドアロンOrchestratorの場合には、テナント > アクセス権を管理 > アカウントおよびグループを管理より、各テナントごとの管理ポータルに遷移してアカウントを追加できます。
Automation Cloudとは異なり、ユーザー追加も各テナントごとに管理ポータルで行います。
管理ポータルへアクセスできるのは、各テナントの管理ポータル上でAdministratorsグループに所属した組織管理者のみです。
またスタンドアロンOrchestratorでは「ユーザーライセンスの管理」機能を利用できません。
ユーザーアカウントも後述の無人オートメーションの設定手順と同じく、テナント > アクセス権を管理画面でライセンスを指定します。
ユーザーへのライセンス割り当て
Automation Cloudの管理 > ライセンス > 「ユーザーへのライセンス割り当て」にて、ユーザーライセンスを割り当てます。
ここでは、StudioおよびStudioXでのプロジェクト開発、またAssistantでの有人実行も利用できる Automation Developerライセンスを割り当てます。
「ライセンスを割り当て」ボタンが表示されない場合は、「ユーザーライセンスの管理」が有効化されていることを再確認してください。
ユーザーライセンスの管理が有効なAutomation Cloudでは、管理 > ライセンス > ユーザー の「グループへのライセンス割り当て」でグループに対してライセンス割り当てルールを設定することができます。
グループに所属するユーザーは、RobotをOrchestratorへ接続時に、余っているユーザーライセンスを先着順で取得します。
各グループ右側の人型アイコン「ライセンスを継承したグループメンバー」では、グループのライセンス割り当てルールによってライセンスを割り当てられたグループメンバーを確認したり、該当メンバーからライセンスを解放したりできます。
各ユーザーに割り当てられたライセンスは、Automation Cloudの管理 > アカウントとグループ > ユーザーの「ライセンスの割り当てを編集」からも確認できます。
Orchestratorテナントへのユーザー割り当て
Automation Cloud ホーム画面に戻り、Orchestratorサービスのテナント名、または左側のOrchestratorアイコンからOrchestrator画面に移動します。
複数テナントを作成済みの場合にOrchestratorアイコンをクリックすると、右上で選択中のOrchestratorテナントへ遷移します。
Orchestrator > テナント > アクセス権を管理 > 「ロールを割り当て」にて、Automation Cloudに登録したユーザーをOrchestratorテナントへ割り当てます。
既にテナントへ割り当て済みのアカウントは、該当アカウント右端の三点マークより編集します。
①全般設定で割り当てるテナントロールとは、テナント単位のリソース(アクセス権、マシン、監査等)に対する権限セットです。デフォルトのテナントロールとして「Orchestrator Administrator」、「Allow to be Folder Administrator」、「Allow to be Automation User」などのロールが準備されています。ここでは、オートメーションの開発と実行に適した「Allow to be Automation Developer」ロールを割り当てます。
②個人オートメーション(Attendedロボット)の設定で「ユーザーによるオートメーションの実行を有効化」にチェックを入れます。
個人オートメーションの設定にある「個人用ワークスペース」機能は、特定ユーザー専用のフォルダーです。Orchestrator上では「My Workspace」というフォルダー名で表示されます。プロジェクトの開発者が、自分専用のフォルダーでアセットやトリガーなどのOrchestrator機能を気軽に試すことができます。
スタンドアロンOrchestratorはユーザーライセンスの管理を利用できないため、テナント > アクセス権を管理 > ユーザー編集画面 > 個人オートメーション(Attendedロボット)の設定で、該当ユーザーに割り当てるユーザーライセンスを指定します。
この時「ドメイン\ユーザー名」を指定するフィールドが表示されることがあります。
この記事で紹介する、Assistant/Studioからの対話型サインインによってRobotをOrchestratorに接続する場合は、「ドメイン\ユーザー名」フィールドは空欄のままでよいです。
空欄のままユーザー編集を完了すると、「ドメイン\ユーザー名」フィールドには「autogen\<ユーザー名>_local」のような自動生成された文字列が設定されます。この文字列は、対話型サインイン時には利用しないダミーの文字列です。
Orchestratorフォルダーへのユーザー割り当て
テナント > フォルダーにて利用するフォルダーを選択し、「アカウント/グループを割り当て」ボタンから、ユーザーアカウントをフォルダーに割り当てます。アカウントをフォルダーへ割当て時に選択するフォルダーロールは、フォルダー単位のリソース(プロセス、アセット、トリガー等)に対する権限セットです。デフォルトのフォルダーロールとして「Folder Administrator」、「Automation User」などのロールが準備されています。ここでは、オートメーションの開発と実行に適した「Automation Developer」ロールを割り当てます。
フォルダーロールを変更したい場合には、フォルダー画面の人型アイコンから変更します。
ロールの補足
オートメーションプロセスを実行するには、テナントレベルのリソースである「パッケージ」などへのアクセス権と、各フォルダーレベルで登録する「プロセス」などへのアクセス権の両方が必要です。「Allow to be Automation Developer」というロールは、オートメーション開発にあたって必要なテナントレベルのリソースに対する権限セットです。「Automation Developer」というロールは、オートメーション開発にあたって必要なフォルダーレベルのリソースに対する権限セットです。
Orchestratorは標準ロールとして以下のロールを用意しています。各ロールに含まれる権限は、テナント > アクセス権を管理 > 「ロール」タブ > 該当ロール右端三点マークの「編集」または「表示」より確認できます。
役割 | テナントロール | フォルダーロール |
---|---|---|
テナントの管理者 | Orchestrator Administrator | 不要 |
フォルダーの管理者 | Allow to be Folder Administrator | Folder Administrator |
オートメーションを開発・パブリッシュ・実行するユーザー/Robot | Allow to be Automation Developer | Automation Developer |
オートメーションをOrchestratorにパブリッシュするユーザー | Allow to be Automation Publisher | Automation Publisher |
オートメーションを実行するユーザー/Robot | Allow to be Automation User | Automation User |
たとえば経理部に所属しつつ人事部も兼務するメンバーが、経理部フォルダーの管理者としてプロセスの新規登録や削除を担当し、人事部フォルダーではプロセス実行だけできるように設定したい場合には、以下のように割当てます。
テナント > アクセス権を管理:Allow to be Folder Administrator、Allow to be Automation User
テナント > フォルダー> 経理部フォルダー:Folder Administrator
テナント > フォルダー> 人事部フォルダー:Automation User
テナントの「アクセス権を管理」画面でフォルダーロールを割り当てたり、「フォルダー」画面でテナントロールを割り当てても効果はありません。
各ロールにどのような権限が設定されているかは、テナント > アクセス権を管理 > ロールタブにて、各ロールの「表示」をクリックすることで確認できます。
Orchestratorでグループアカウントに対してロールを付与し、Automation Cloudの管理画面でアカウントがグループメンバーシップに所属すると、アカウントは所属するグループからロールを継承します。個々のアカウントでロール設定する手間を省けます。
所属グループから継承するロールは、テナント > アクセス権を管理 > 各アカウントの右端三点マークの「ロールと権限を確認」より確認できます。
またグループアカウントの個人オートメーションを有効化しておくと、そのグループに所属するユーザーアカウントがOrchestrator該当テナントへ初回アクセス時に、個人オートメーションが有効化された状態でテナントへ自動割り当てされます。
テナント割り当て済みのユーザーアカウントは、所属するグループアカウントの個人オートメーション設定を変更しても影響を受けません。
テナント割り当て済みのユーザーアカウントの個人オートメーション設定を変更したい場合には、グループアカウントではなく各ユーザーアカウントを編集してください。
3-3. 有人オートメーションの実行
Robotのインストール
Windows OSのマシンに、StudioとRobotをインストールします。
インストーラー(UiPathStudio.msi)は、Automation Cloud上部のクエスチョンマーク > リソース > 「ダウンロード」ページ等から入手できます。
インストーラーファイル名は UiPathStudio.msi、UiPathStudioCloud.msi、UiPathStudioCommunity.msiと変わることもありますが、インストールできる製品は同じです。
インストーラー(msiファイル)のサイズはおよそ1GBです。
インストーラーをダブルクリックして実行し、「カスタム(Enterprise 版ユーザー/上級ユーザーに推奨)」を選択します。
クイックインストールを選択すると、カスタムインストールで「自分(現在のユーザー)にのみインストール」>「Automation Developer」を選択した時と同じ状態になります。
次に、「このコンピューター上のすべてのユーザーにインストール」を選択します。
既定値では「C:\Program Files\UiPath\Studio」フォルダーにインストールされます。
「自分(現在のユーザー)にのみインストール」を選択すると、既定値では「%LocalAppData%\Programs\UiPath\Studio」フォルダーにインストールされます。
Robotをサービスモードでインストールできなくなります。
最後に、「Automation Developer」パッケージを選択してインストールします。
既定値ではStudioとRobotがユーザーモードでインストールされます。
インストールパッケージはマシンにインストールする機能のセットを示すもので、利用するライセンスとは関係ありません。
「Automation Developer」パッケージは、StudioとRobotをインストールします。既定値はユーザーモードでインストールしますが、詳細設定でサービスモードに変更することもできます。
「Attended ロボット」パッケージは、Robotをインストールします。既定値はユーザーモードでインストールしますが、詳細設定でサービスモードに変更することもできます。
「Unattended ロボット」パッケージは、Robotをサービスモードでインストールします。既定値ではStudioをインストールしませんが、詳細設定でStudioを一緒にインストールするよう変更できます。
サービスモードでインストールするとRobotがWindowsサービスとして登録され、Robotマシンに人間がログインしていなくても、Robotが自動ログインして無人オートメーションを実行できるようになります。
※Windows OSにRobotをインストールすると、Assistant(有人オートメーションを実行時に利用する)も一緒にインストールされます。
※StudioXを利用する場合も、Studioをインストールします。
Orchestrator接続(対話型サインイン)
Robotのインストールが完了したら、次にStudioでプロジェクト開発やAssistantから有人実行するためのユーザーライセンスを取得します。RobotをOrchestratorに接続することでライセンスを取得します。
Assistantを起動して「サインイン」をクリックすると、自動でWebブラウザが起動します。Automation Cloudのログイン画面が表示されたら、Attendedロボットが登録されたユーザーアカウントとしてログインします。
Webブラウザに「UiPath を開きますか?」というポップアップが表示されるので、「UiPathを開く(Open UiPath)」を選択します。ポップアップが表示されない場合には「お使いのブラウザーでこのリンクを開いてください」をクリックします。
AssistantからサインインしてもStudioからサインインしても、どちらでも同じです。
対話型サインインによって取得するライセンスは、自動起動したWebブラウザでOrchestratorログインしたユーザーに指定したライセンスです。Robotマシンにログイン中のWindowsアカウントは影響しません。
個人オートメーションが無効なユーザーや、ライセンスを割り当てていないユーザーとしてAutomation Cloudにログイン済みの状態でAssistantからサインインすると、RobotがOrchestratorに接続できなかったり、Orchestratorに接続できてもユーザーライセンスを取得できなかったりします。この場合にはAssistantからサインアウト→自動起動したWebブラウザでAutomation Cloudからもログアウトしてやり直してください。
オンプレミス版Orchestratorの場合には、Assistant右上の人型アイコン > 設定 > Orchestratorの設定にて、サービスURLを編集してご利用のOrchestrator URLを指定してからAssistantよりサインインします。
※Automation Cloud内のOrchestratorを利用する場合には、サービスURLは https://cloud.uipath.com
のままでよいです。
対話型サインインで取得するユーザーライセンスは、Windowsアカウント単位で取得します。
たとえば1つのPCを2人のユーザーが利用しており、それぞれ別のWindowsアカウントを使っているとします。
ユーザー1がPCにログインし、Assistantから対話型サインインすると、ユーザー1のRobotがユーザーライセンスを取得します。
この時ユーザー2がPCにログインしても、ユーザー2のRobotはライセンスを取得していないため、AssistantやStudioを利用できません。
Assistant右上の丸いステータスマークが緑色であれば、Studio/StudioXでのワークフロー開発やAssistantでの有人オートメーション実行をできるライセンスを取得したことを示します。ステータスマークが緑色以外の場合には、ステータスマークにマウスカーソルを合わせることで表示されるポップアップ内のメッセージを手がかりに、ユーザーライセンスを取得できない原因を調査します。
Studioからオートメーションプロジェクトのパブリッシュ
Robotがユーザーライセンスを取得したら、Studioを起動して簡単なプロジェクトを開発しパブリッシュしてみましょう。
新規プロジェクト > プロセスを作成します。
Main ワークフロー(Main.xamlファイル)が開いていない場合は開きます。
Studio左側の「アクティビティ」パネルを開き、『メッセージをログ(Log Message)』アクティビティを検索し、真ん中のデザインパネルにドラッグアンドドロップして配置します。
『メッセージをログ(Log Message)』アクティビティの「メッセージ」プロパティに、たとえば"Hello World"
のような半角ダブルクォテーションで囲った文字列を入力します。
Studio上部の「ファイルをデバッグ」をクリックして、ワークフローをデバッグ実行してみます。
「ファイルをデバッグ」アイコンが元の青い三角形に戻りデバッグ実行が完了後に、Studio下部の「出力」パネルに、指定した文字列がログされていることを確認します。
Automation Developerのように、StudioとStudioXを両方利用できるライセンスをRobotが取得した場合には、Studioホーム画面 > 設定 > ライセンスとプロファイル > 「プロファイルを変更」にてStudioとStudioXを切り替えることができます。
StudioXとは、簡単な有人オートメーションプロジェクトを開発することに適した開発モードです。
Citizen DeveloperライセンスではStudioを利用できず、最初からStudioX画面が表示されます。
StudioXのスタート画面にて、プロジェクト > 新規 > 空のタスクを作成し、『メッセージ ボックス(Message Box)』アクティビティを配置してみましょう。
配置した『メッセージ ボックス(Message Box)』アクティビティの「+」アイコン > テキストを選択し、Hello World
のように文字列を指定します。
StudioX上部の「実行」(三角形のアイコン)をクリックすることで、実行して動作を確認できます。
Attended Userライセンスは、他ユーザーが開発してパブリッシュしたプロジェクトをAssistantから有人実行できるライセンスです。プロジェクト開発は制限されており、Studioをインストールしても利用できません。
ワークフローが完成したので、Studio上部の「パブリッシュ」をクリックします。
パブリッシュのオプションタブで、パブリッシュ先に「Orchestrator テナント プロセスフィード」を選択してパブリッシュします。
パブリッシュすると、プロジェクトフォルダ(既定値では「C:\Users\<Windowsアカウント名>\Documents\UiPath\<プロジェクト名>」フォルダ)内に格納されたワークフロー(Main.xaml)やproject.jsonファイルなどがパッケージ(nupkgファイル)として圧縮され、Orchestratorにアップロードされます。
アップロードされたパッケージは、Orchestratorのテナント > パッケージ画面で確認できます。
プロセス登録
テナントにパブリッシュされたパッケージを、各フォルダーでプロセスとして登録することで、そのフォルダーに割り当てられたユーザーのRobotが実行できるようになります。どのフォルダーで登録するかによって、誰のRobotがどのプロセスを実行できるか管理します。
Orchestratorにアクセスし、フォルダー > プロセス画面にてプロセスを追加します。
パブリッシュしたパッケージを指定して、その他は既定値のまま作成します。
同じプロジェクトのワークフローをStudioで編集してもう一度パブリッシュすると、パッケージバージョンが上がります。Orchestratorのプロセス編集画面で新しいパッケージバージョンを指定すると、Robotは新しいバージョンのパッケージを実行するようになります。
Assistantからプロセス実行
RobotマシンにてAssistantを起動し、登録したプロセスが表示されていることを確認します。
実行ボタンをクリックし、Assistantからプロセスを実行できることを確認します。
ジョブ実行結果の確認
プロセスを実行する度に、新しいジョブとして処理されます。
Orchestratorのフォルダー > オートメーション > ジョブ画面にて、新しいジョブが作成されていることを確認します。
ジョブ画面に表示された該当ジョブ右端の三点マークから「このジョブのログを表示」を選択し、ジョブ実行ログがOrchestratorに表示されることを確認します。ジョブ実行がエラーになった場合には、ジョブ実行ログからトラブルシュートを行えます。
3-4. 無人オートメーションの設定
以下の流れで無人オートメーションを実行します。
Orchestratorフォルダーでのプロセス登録まで(1~3)は、有人オートメーションの実行手順と同じです。
- Studioでプロジェクト開発:Robotに実行させたい作業内容を、ワークフロー(xamlファイル)に記載します。
- Studioでプロジェクトをパブリッシュ:ワークフロー等が格納されたプロジェクトフォルダの中身をまとめて、1つのパッケージ(nupkgファイル)に圧縮します。
- Orchestratorでプロセス登録:Orchestratorフォルダーで、どのパッケージのどのバージョンを実行するか登録します。フォルダーに割り当てられたRobotは、そのフォルダーに登録されたプロセスを実行できるようになります。
- Orchestratorでジョブ作成:Orchestratorでジョブを作成します。ジョブを作成すると、OrchestratorがRobotにジョブを割当てます。ジョブを割当てられたRobotは、自分自身のRobotマシンにWindowsサインインしてジョブ実行を開始し、ジョブ実行完了後にWindowsサインアウトします。
まずは、無人実行する用途のロボットライセンスをRobotマシンが取得できるようにOrchestrator側で設定しましょう。
ロボットライセンスには、Production (Unattended)、NonProduction、Testingライセンスなどがあります。
この記事では、本番用途のProduction (Unattended)を利用して無人オートメーションを実行します。
テナントへのロボットライセンス割り当て
Automation Cloudの管理 > ライセンス > 「ロボットとサービス」にて、組織全体で利用できるロボットライセンスの総数を確認します。
Automation Cloudの管理 > ライセンス > ロボットとサービス > テナント > 「ライセンスの割り当てを編集」にて、テナントにロボットライセンスを割り当てます。
Orchestrator > テナント > ライセンス画面を見ると、Automation Cloudで割り当てたロボットライセンス数と一致します。
ロボットアカウントの追加
Automation Cloudの管理 > アカウントとグループ > 「ロボットアカウント」タブから、ロボットアカウントを追加します。ロボットアカウントは無人オートメーション専用のアカウントです。ユーザーアカウントと異なり、メールアドレスを用意して招待する必要がありません。
ユーザーアカウントを利用して、無人オートメーション設定することもできます。
既存のユーザーアカウントに無人オートメーション設定する場合には、ロボットアカウントの追加は不要です。
Orchestratorテナントへのロボットアカウント割り当て
Orchestratorのテナント > アクセス権を管理 > 「ロールを割り当て」から、テナントにロボットアカウントを割り当てます。
①全般設定で割り当てるテナントロールとは、テナント単位のリソース(アクセス権、マシン、監査等)に対する権限セットです。デフォルトのテナントロールとして「Orchestrator Administrator」、「Allow to be Folder Administrator」、「Allow to be Automation User」ロールなどが準備されています。ここでは、オートメーション実行に適したテナントロールである「Allow to be Automation User」ロールを割り当てます。
②無人オートメーション(Unattendedロボット)の設定 > フォアグラウンド オートメーションの設定で「特定のWindowsユーザーアカウントを使用します」を選択します。
※ユーザーアカウントに無人オートメーションを設定する場合には、「Unattended ロボットがこのユーザーとしてオートメーションを実行することを許可」のチェックボックスにチェックしてから、フォアグラウンド オートメーションの設定に進みます。
フォアグラウンド オートメーションとは、人間がWindowsマシンにログインして操作するのと同様の作業をRobotが実行するものです。Windowsマシン上のアプリ(Webブラウザなど)を起動して画面操作をする場合には、フォアグラウンド オートメーションです。この場合には、RobotがマシンにWindowsサインインする必要があります。
画面操作をせずにAPI実行だけするようバックグラウンド プロセスの場合には、画面を表示する必要がないので、RobotがマシンにWindowsサインインせずに実行することもできます。
「ドメイン\ユーザー名」には、Robotマシンのコマンドプロンプトでwhoami
コマンド実行結果をコピーして入力します。
「パスワード」には、RobotマシンへのWindowsログインパスワードを入力します。このWindowsパスワードは、Robotが自分自身のRobotマシンへ自動ログインして無人でオートメーション実行するために利用されます。
「ドメイン\ユーザー名」は、様々な形式で指定することができます。
- ドメインに参加しているアカウントの場合は、domain\username という構文を使用します。例: deskover\localUser1
- ローカルの Windows アカウントの場合は、host_machine_name\username 構文で、ドメインではなくホスト マシンの名前を使用します。たとえば、LAPTOP1935\localUser2 です。
- 特定のマシンに紐づけず、複数のホスト マシンで使用するローカル Windows アカウントについては、ホスト マシン名の代わりにドット付きの .\username 構文を使用します。たとえば、.\localUser3 です。
- Azure AD に参加しているマシンの場合は、azuread\username@domain.com 構文を使用します。
OrchestratorフォルダーへのRobotアカウント割り当て
テナント > フォルダーにて利用するフォルダーを選択し、「アカウント/グループを割り当て」ボタンから、Robotアカウントをフォルダーに割り当てます。
アカウントをフォルダーへ割当て時に選択するフォルダーロールは、フォルダー単位のリソース(プロセス、アセット、トリガー等)に対する権限セットです。デフォルトのフォルダーロールとして「Folder Administrator」、「Automation User」ロールなどが準備されています。オートメーション実行に適したフォルダーロールである「Automation User」ロールを割り当てます。
Orchestratorテナントでのマシン登録
無人オートメーションを実行する場合には、Robotマシン単位でロボットライセンスを取得します。いくつのロボットライセンスを各Robotマシンに取得させるかを設定します。テナント > マシンにて「マシンテンプレート」を追加し、以下のように設定してプロビジョニングします。
マシンテンプレート名は任意の名前を付けます。
ランタイムライセンスは、Production (Unattended) を「1」と設定します。
マシンテンプレートをプロビジョニングすると、クライアントID(マシンキー)とクライアントシークレットが表示されるのでメモしておきます。
クライアントID(マシンキー)は後からでも再確認できますが、クライアントシークレットは一度しか表示されません。クライアントシークレットが分からなくなった場合には、マシンテンプレートの編集画面で新規クライアントシークレットを追加できます。
1つのマシンテンプレートのクライアント資格情報は、複数のRobotマシンで利用できます。
ランタイムライセンスがProduction (Unattended) x1 のマシンテンプレートを利用して、Robotマシン1 と Robotマシン2の2台をOrchestrator接続すると、各RobotマシンがそれぞれProduction (Unattended) x1を取得し、合計でProduction (Unattended) x2がOrchestratorから払い出されます。
Orchestratorフォルダーへのマシン割り当て
テナント > フォルダーにて利用するフォルダーを選択 > マシンタブを選択し、「フォルダーでマシンを管理」ボタンから、マシンテンプレートをフォルダーに割り当てます。
3-5. 無人オートメーションの実行
Robotのインストールモードには、サービスモードとユーザーモードの2種類があります。
無人オートメーションの用途で利用する場合には、サービスモードを利用します。なお有人オートメーションの実行の用途で利用する場合にはユーザーモードが適していますが、サービスモードでも利用できます。
サービスモードでインストールすると、人間がRobotマシンからWindowsサインアウトした状態でも、マシンの電源が入っていればRobotが無人オートメーションを実行できます。
サービスモードでRobotのインストール
1)サービスモードで新規インストールする場合:
UiPath Studioのインストーラー(UiPathStudio.msi)を実行します。
インストーラー画面で、「カスタム(Enterprise 版ユーザー/上級ユーザーに推奨)」>「このコンピューター上のすべてのユーザーにインストール」>「Unattended ロボット」を選択してインストールします。
ここでの「Unattended ロボット」はインストールする機能のパッケージを示すもので、「無人オートメーション用のロボットライセンス」とは関係ありません。
※「Automation Developer」を選択し、詳細設定の「Robotのインストールの種類」を「サービスモード」に変更してもよいです。
2)既にUiPath Studioをインストール済みの場合:
Robotマシンにてタスクマネージャーを起動し、サービスタブに「UiRobotSvc」が存在すればサービスモード、存在しなければユーザーモードでインストールされています。
ユーザーモードでインストールされていた場合には、コントロールパネルのプログラムと機能を開き、「UiPath Studio」の「変更」からインストーラーを起動し、「UiPath Robot を Windows サービスとして登録します」にチェックを入れることでサービスモードに変換できます。
StudioをインストールせずにRobotのみをインストールした場合でも、Windows OSでは「UiPath Studio」として表示されます。
「クイックインストール」やインストール先に「自分(現在のユーザー)にのみインストール」を選択していた場合には、ユーザーモードからサービスモードへ変換できません。この場合はコントロールパネルからUiPath Studioをアンインストールし、サービスモードで新規インストールします。
インストール先 | インストールモード |
---|---|
ユーザー単位 %LocalAppData%\Programs\UiPath\Studio (サービスモードの選択肢なし) |
ユーザーモード ・有人オートメーションに最適 |
マシン単位 C:\Program Files\UiPath\Studio (インストールモードを変換できる) |
ユーザーモード ・有人オートメーションに最適 |
サービスモード ・無人オートメーションに最適 ・有人オートメーションも利用可 |
Orchestrator接続(クライアント資格情報)
RobotをOrchestratorに接続することでRobotマシンがRobotライセンスを取得し、Orchestratorからの指示によって無人実行できるようになります。
Assistantからサインイン時はOrchestrator URLに組織名やテナント名を含める必要はなく対話型で選択することができますが、クライアント資格情報を用いたOrchestrator接続時には、指定するOrchestrator URLにAutomation Cloudの組織名とテナント名を含める必要があります。
Automation Cloud内のOrchestratorアクセス時のWebブラウザアドレスバーより、https://cloud.uipath.com/<組織名>/<テナント名>
のようなURLをコピーします。
Assistantを起動し、右上の人型マーク > 設定 > Orchestratorの設定画面にて、「接続の種類」が「クライアントID」であることを確認します。
Orchestrator URLとしてhttps://cloud.uipath.com/<組織名>/<テナント名>
と入力し、またマシンテンプレート登録時にメモしたクライアントIDとクライアントシークレットを入力してOrchestratorに接続します。
- Automation Cloud 内の OrchestratorでのURL指定例
- https://cloud.uipath.com/myOrganization/myTenant
- スタンドアロンOrchestratorでのURL指定例(テナント名は不要です)
- https://orch.uipath.com
有人オートメーション用のユーザーライセンスとは異なり、無人オートメーション用のロボットライセンスを取得できたかどうかは、Assistantからは確認できません。
Assistantでは、Orchestratorに接続できたかどうか、またAssistantを起動したWindowsアカウントがユーザーライセンスを取得したかどうかを確認できます。
Robotマシンがロボットライセンスを取得したかどうかは、Orchestratorのテナント > ライセンス画面の「詳細を確認」から確認できます。RobotがOrchestratorに接続している間は、Robotがジョブ実行していなくても、各Robotマシンはマシンテンプレートに指定した数のランタイムライセンスを取得します。
1つのRobotを有人オートメーションと無人オートメーションの両方の用途で利用したい場合には、有人オートメーション設定でユーザーライセンスも指定した上で、クライアント資格情報を用いたOrchestrator接続後にさらにAssistantからサインインします。
無人オートメーション専用マシンの場合には、RobotのOrchestrator接続後に、Robotマシンにて全WindowsアカウントをWindowsからサインアウトしておきます。
Orchestratorでジョブ作成
ジョブとは、あるプロセスを実行する度に作成する1つの処理単位です。1つのプロセスにつき、複数ジョブを同時に作成することもできます。
Orchestratorのフォルダー > オートメーション > ジョブ画面にて「開始」ボタンを選択します。
「プロセス名」に登録済みのプロセスを、実行ターゲットの「アカウント」にRobotアカウントを、「マシン」にマシンテンプレートを、「ホスト名」にRobotマシン名を指定して「開始」をクリックします。
Robotマシン名は、Robotマシンにてコマンドプロンプトを起動しhostname
コマンドを実行することで確認できます。
実行ターゲットを指定できない場合には、Robotアカウントやマシンのフォルダー割り当て、RobotのOrchestrator接続等に不備がないか確認してください。
※実行ターゲットの指定は任意ですが、初回の設定後はターゲットを指定することで、ターゲットが利用可能であることを確認できるメリットがあります。
Orchestratorのフォルダー > オートメーション > ジョブ画面にて、以下のことを確認します。
- 新しいジョブが作成されたこと
- 利用可能なRobotマシンにジョブが割り当てられ、ジョブステートが「実行中」に遷移したこと。
- Robotがジョブ実行を完了し、ジョブステートが「成功」や「エラー」に遷移したこと。
ジョブは以下のような流れで実行されます。
- Orchestrator上で、あるプロセスのジョブを作成する。
- Orchestratorが、利用可能なRobotマシンにジョブを割り当ててジョブ実行を指示する。
- ジョブ実行指示を受け取ったRobotは、Robotマシン内でジョブ実行を開始する。Orchestratorは該当ジョブのステートを保留中→実行中に変更し、該当マシンのステータスを利用可能→使用中に変更する。
- Robotがジョブ実行を完了してOrchestratorに通知する。Orchestratorは該当ジョブのステートを実行中→成功やエラーに変更し、該当マシンのステータスを使用中→利用可能に変更する。
無人オートメーション用にどのRobotマシンが利用可能かは、Orchestratorのフォルダー > 監視 > マシン画面で確認できます。
ジョブ実行ログをOrchestratorから確認します。
ジョブ画面に表示された該当ジョブ右端の三点マークから「このジョブのログを表示」を選択し、ジョブ実行ログがOrchestratorに表示されることを確認します。
ジョブ実行がエラーとなった場合には、該当ジョブ右端の「i」マーク(詳細)や、ジョブ実行ログからトラブルシュートを行います。
無人オートメーションのジョブは、定期的にスケジュール作成することもできます。
Orchestratorのフォルダー > オートメーション > トリガー > 「新しいトリガーを追加」より、プロセスを指定してタイムトリガーを追加することで、指定したスケジュール日時にジョブが作成されることを確認します。
4. おわりに
読んでくれてありがとうございました!
役立ちそうなリンクを以下にご紹介します。
UiPath公式ドキュメントには、各バージョンの最新かつ詳細な情報が記載されています。
https://docs.uipath.com/ja
Orchestratorの運用方法について、公式ドキュメントの他にはUiPath Academyでもサンプルや練習問題付きで紹介しています。UiPath Academyは無料で受講できます。
https://academy.uipath.com/jp
様々な手順をまとめたYouTube動画もあります。
https://www.youtube.com/@UiPathJapan
RobotをOrchestratorに接続できない場合、最もよくある原因はプロキシサーバーの設定です。
https://www.uipath.com/ja/resources/knowledge-base/robot-orchestrator-proxy-configuration-v202210