自動化とは、ツール、プロセス、およびリソースが自動的かつ効率よく機能するために編成されるものです。 自動化すると、管理またはユーザー ワークフローを能率化し、エラー プルーフを確保できます。また、同一または予測可能な結果を毎回再現できます。
自動化の例
要件によっても異なりますが、自動化のニーズは、次のようなさまざまな状況にあります。
- ポータルのミラーを設定する (1 つは開発用、もう 1 つは製造用)。 コンテンツ、グループ、およびユーザーの同期を維持する。
- ポータルにメンバーのリストを追加し、各メンバーにロールを割り当てる。
- 多数のポータル間で、同一セットのコンテンツ、ユーザー、グループなどを公開する。
- 特定のユーザーまたはグループに属するすべてのアイテム、または特定の条件 (名前の接頭辞) に一致するすべてのアイテムを一覧表示する。
- 特定の日時より前に公開されたコンテンツを一覧表示する。 たとえば、昨年の第一四半期に作成されたすべてのアイテムを一覧表示し、その所有者名と電子メール アドレスの表を作成する。
- 特定のサービスを削除した場合に、切断される Web マップまたはシーンを指定する。
- 新規メンバーがチームに加入するたびに、ユーザー アカウントを作成する。 同様に、古いユーザーを削除し、そのコンテンツの所有権を適切に移譲する。
- 事前に指定した時間に、コンテンツを定期更新する。
- すべての Web マップおよびシーンを調べ、リンクの切れたものを更新する。
- 特定のサービスを削除した場合に、切断される Web マップまたはシーンを指定する。
- サービスの利用状況測定値を監視し分析して、適切な処置を取る。
自動化により、使用事例にかかわらず生産性や操作の効率を素早く向上させることができます。 以下で説明するように、Esri では、ArcGIS Enterprise を自動化するための 2 つの主要なソリューションを提供しています。
Esri が提供する自動化のソリューション
以下は、Esri の自動化ソリューションです。
Chef cookbooks for ArcGIS
Chef は、オープン ソースの情報テクノロジ (IT) 自動化フレームワークです。これを使用すると、IT インフラストラクチャの作成と保守を自動化できます。 Chef Cookbook は、Chef のスクリプト言語です。 ソフトウェアおよびハードウェアを展開するための再現可能で柔軟性の高いメカニズムを提供します。
Esri では、ArcGIS Enterprise のインストールと構成を自動化するための Chef Cookbook を提供しています。 Chef Cookbook を使用して、ArcGIS Enterprise ソフトウェア コンポーネント (他の ArcGIS Server サイトを含む) をインストールし、相互に機能するよう構成することができます。 詳細については、「ArcGIS Chef Cookbook」をご参照ください。 ArcGIS Cookbook を実行するときに、独自の要件を満たす構成情報を指定します。
ArcGIS Cookbook を使用すると、ArcGIS Enterprise のデプロイメントを短時間で復元したり、同一のデプロイメントを別に設定したりするのに役立ちます。
ArcGIS Enterprise を配置した後は、ArcGIS API for Python を使用して、GIS ワークフローを継続的に自動化することができます。
PowerShell DSC for ArcGIS
Esri は、Microsoft PowerShell Desired State Configuration (DSC) を使用して ArcGIS Enterprise の配置を自動化するツールを提供しています。 PowerShell DSC for ArcGIS モジュールを使用して ArcGIS Enterprise デプロイメントのインストール、アンインストール、アップグレードを自動化できます。また、このモジュールを使用してすでにインストールされているデプロイメントへの増分的なソフトウェアの追加も自動化できます。
PowerShell DSC for ArcGIS には、サンプルの JSON ファイルが含まれており、このファイルに特定の情報とパラメーターを追加してから PowerShell コンソールで実行します。 GitHub 上の PowerShell DSC for ArcGIS リポジトリで、詳細を確認して、使用を開始してください。
ArcGIS API for PythonI
ポータルに独自の仕様を設定すると、ポータルでのユーザー、グループ、およびアイテムの入力を自動化し、継続的にそれらを管理できます。 設定すると、このトピックのはじめに説明したような多くのタスクを自動化できます。 自動化するには、ArcGIS API for Python を使用します。 この API を使用すると、ArcGIS の管理者、公開者、およびユーザーが Python 環境を使用してワークフローを自動化し、スクリプトによってタスクを繰り返し実行することができます。 API で実行できることの詳細については、「ArcGIS API for Python を使用したスクリプト」をご参照ください。
他の自動化ソリューション
Esri では、以前のバージョンで使用可能なその他の多数の自動化ソリューションも引き続きサポートしています。
ArcGIS Enterprise ポータルのコマンド ライン ユーティリティ
一般的な管理タスクの実行に役立つ、いくつかのコマンド ラインユーティリティが含まれています。 これらのユーティリティは、ポータルをホストするコンピューター上で実行する必要があります。 これらは、すぐに使用することができ、プログラミングの知識を必要としません。 詳細については、「Portal for ArcGIS のコマンド ライン ユーティリティ」をご参照ください。
Python のサンプル スクリプト
ポータルには、コマンド ライン ユーティリティで提供されている機能を拡張する Python サンプル スクリプトがいくつか含まれています。 これらのスクリプトは、コマンド ライン ユーティリティとは異なり、Python 環境が構成されている任意のコンピューターから実行できます。 これらのスクリプトは、最小限の Python の知識があれば簡単に実行できるように記述されています。 これらのスクリプトはそのまま実行できますが、これらを使用して ArcGIS REST API の操作方法の学習、スクリプトのカスタマイズ、独自のスクリプトの作成などができます。 詳細については、「Python サンプル スクリプト」をご参照ください。
ArcGIS REST API とポータル
ArcGIS REST API には、ポータルを管理するためのリソースと操作が用意されています。 この API を通じてポータルがサポートするすべての管理タスクを呼び出すことができます。 実際に、ポータル Web サイトなど、ArcGIS に用意されている管理ツールはすべて、この API を使用しています。
ArcGIS REST API は、Web サービスを呼び出せる任意の言語 (Python、Java、JavaScript、PowerShell、C#、Ruby、Scala、Perl など) から呼び出すことができます。 このヘルプのコード例では Python を使用しています。 ArcGIS REST API を使用しているスクリプトを実行するために Esri ソフトウェアをインストールする必要はありません。
詳細については、「ArcGIS REST API を使用したスクリプト作成」をご参照ください。