ArcGIS Server サイトを 11.0 以降にアップグレードしたら、ArcMap サービス ランタイムを使用するすべてのサービスを移行、再公開、または削除する必要があります。 ArcGIS Server では ArcMap サービス ランタイムのサポートが終了しており、ArcMap サービス ランタイムを使用するサービスは使用できません。 新しく公開されたサービスとアップグレードされたサーバー サイトの既存のサービスでは、ArcGIS Pro サービス ランタイムを使用するサービスだけがサポートされる予定です。
UpdateArcMapServices コマンド ライン ユーティリティでは、サポートされる GIS サービスの一括移行を自動化できます。 このユーティリティには、次の 2 つのモードがあります。
- analysis - ツールを analysis モードで実行し、サイト内で ArcGIS Pro サービス ランタイムに移行できる状態にあるサービスを判別できます。
- execution - 移行できる状態のサービスを把握し、移行対象のサービスに対する処理の妨げとなっている状態を是正すると、execution モードでツールを実行し、対象となるすべてのサービスを ArcGIS Pro サービス ランタイムに移行します。 サービス ランタイムを移行しても、使用しているサービスの内容と設定に影響はありません。
サービス ランタイムを移行するための前提条件
UpdateArcMapServices ユーティリティを使用すると、次のタイプのサービスを移行することができます。
- マップ サービス (KML が有効化/無効化されているもの)
- フィーチャ サービス (フィーチャ アクセスが有効になったマップ サービス)
- イメージ サービス
- WMS サービス (WMS が有効になったマップ サービス)
- WCS サービス (WCS が有効になったマップ サービス)
- WFS サービス (WFS が有効になったマップ サービス)
- ネットワーク解析サービス (ネットワーク解析が有効になったマップ サービス)
- ジオデータ サービス
UpdateArcMapServices コマンド ユーティリティでは、画像、ジオデータ、マップ サービスの移行を行うことができます。 ただし、ArcGIS Pro サービス ランタイムに移行できるサービスについては、制限が設けられています。 移行できないサービスを特定するには、このユーティリティを analysis モードで実行します。 結果ウィンドウと HTML レポートは、対象外となる理由に基づいて、対象外となっているサービスを分類します。
- コード 10900 で示されたマップ サービスとイメージ サービスには、互換性のないサービス機能が含まれています。 マップ サービスまたはイメージ サービスを移行の対象にするために、そのマップ サービスまたはイメージ サービスでスケマティック ケーパビリティまたはカスタム サーバー オブジェクト エクステンション (SOE)/サーバー オブジェクト インターセプター (SOI) を無効にする必要があります (SOE および SOI を移行して、移行後のサービスに追加することができます。 詳細については、ブログ投稿「ArcObjects SOE および SOI を ArcGIS Enterprise SDK に移行」をご参照ください)。
- コード 10901 で示されたマップ サービスには、互換性のないレイヤー タイプが含まれています。 Tracking Analyst で作成されたラスター カタログ レイヤーおよび時間対応のレイヤーと、ArcGIS Pro でサポートされていないデータベース内のフィーチャ レイヤーは移行することができません。
- コード 10903 で示されたジオデータ サービスは、ArcGIS Pro でサポートされていないデータベース、具体的に言うと IBM Db2 (z/OS) データベースや IBM Informix データベースから公開されています。 サポートされていないデータベースを使用しているジオデータ サービスでは、再公開する前に、ArcGIS Pro でサポートされているデータベースのジオデータベースにソース データを移しておく必要があります。
サービスや、サービスのラスター データ ソースに適用される一部のラスター関数は、ArcGIS Pro サービス ランタイムでは機能しません。たとえば、Python 2 で記述された Python ラスター関数や、一部のカラー ランプを含むラスター関数などがこれに当てはまります。 HTML レポートは、このようなサポートされていないラスター関数を含むサービスは特定しませんが、これらのラスター関数が含まれるサービスが ArcGIS Server サイト上で実行されていることを通知します。 移行する前に、Python 2 関数を Python 3 関数に置換します。 サポートされていないラスター関数を削除しなくてもこれらのサービスを移行できますが、これらの関数にアクセスしたときに、移行後のサービスが正常に動作しません。 サポートされていないカラー ランプにより、移行後のサービスが正常に表示されない場合は、Esri テクニカル サポート (米国内) または Esri 販売代理店 (米国外) にお問い合わせください。
ArcMap から公開されたサービスだけが解析されます。 最初に ArcGIS Pro から公開されたサービスは ArcMap サービス ランタイムに移行できず、解析されたサービスのリストにも表示されません。
サービス インスタンス
ArcGIS Pro サービス ランタイムは、マップ サービス向けの専用インスタンス タイプと共有インスタンス タイプの両方をサポートしています。 このため、このユーティリティを実行すると、移行処理中に、移行対象の各マップ サービスにインスタンス タイプが割り当てられます。 これは、ArcGIS Server サイトのデフォルトのインスタンス タイプ設定に基づいて行われます。
サービスを移行する前に、移行後の考えられる状況を検討してください。 たとえば、ArcGIS Server サイトのデフォルトのインスタンス タイプが共有インスタンスであり、通信量の多いサービスを移行する準備をしている場合は、移行後に専用インスタンスを使用するようにサービスを編集して、そのサービスに適したリソースを確保することを検討します。 サービスにカスタム SOE または SOI が含まれており、それらをリコンパイルして、移行後にサービスに再度追加する場合は、サービスで共有インスタンス プールを使用できません。
コマンド ライン ユーティリティにアクセス
移行ユーティリティは、ArcGIS Server コンピューター上の <ArcGIS Server installation location>/tools/UpdateArcMapServices フォルダーでホストされます。 UpdateArcMapServices.sh ファイルは、この場所から直接実行することも、ディレクトリのフル パスを参照して実行することもできます。 ArcGIS Server をインストールしたアカウントを使用し、ArcGIS Server コンピューターにサイン インする必要があります。
UpdateArcMapServices ユーティリティをどちらのモードで実行しても、HTML ページが開き、このツールの実行結果が表示されます。 どちらのモードでも、現時点で移行の対象となっているサービスの数または移行の対象外となっているサービスの数が表示されます。 execution モードでは、移行処理に関連するログが表示されるだけでなく、ArcGIS Pro サービス ランタイムに正常に移行されたサービスの数も表示されます。
パラメーター
このユーティリティは、次の入力パラメーターをサポートしています。
パラメーター | 説明 |
---|---|
-m、--mode | このツールを実行するモードを指定します。analysis モード (デフォルト) では、現時点で移行の対象となっているサービスと移行の対象外となっているサービスが判別されて表示され、execution モードでは、対象となっているすべてのサービスが ArcGIS Pro サービス ランタイムにまとめて移行されます。 |
-o、--output | このツールのレポート ファイルが生成されるディレクトリを定義します。 定義しないと、ツールのレポートは、ユーティリティを実行するコンピューター上の一時ディレクトリに生成されます。 |
-u、--username | ArcGIS Server サイトのプライマリ サイト管理者のユーザー名を指定します。 サイトのプライマリ サイト管理者アカウントが利用できない場合は、サーバー管理者のアカウントのユーザー名を指定するか、サーバーがフェデレートされている場合には、ポータル管理者のアカウントのユーザー名を指定します。 |
-h、--help | ユーティリティのヘルプを出力します。 |
使用例
GIS 管理者は、組織のすべてのサービスで ArcGIS Pro サービス ランタイムを使用したいと考えています。 まず、管理者が ArcGIS Server Manager にサイン インし、ArcGIS Server サイト上で実行されるジオプロセシング サービスとジオコーディング サービスのリストを作成します。 これらは移行できないので、再公開する必要があります。
次に、管理者は UpdateArcMapServices ユーティリティを analysis モードで実行し、サポートされていないケーパビリティやレイヤーが含まれているマップ サービス、イメージ サービス、ジオデータ サービスを特定します。
この場合には、GIS 管理者が ArcGIS Server をインストールしているため、ArcGIS Server サイトのコンピューター上でユーティリティを実行するために必要なログイン情報は GIS 管理者が所有しています。 管理者はコンピューター上でコマンド シェルを開き、ツール ディレクトリにアクセスして、analysis モードでコマンドを実行します。 HTML レポートを同僚と共有するため、管理者は出力場所となる共有ディレクトリを指定します。
cd <ArcGIS Server installation location>/arcgis/server/tools/UpdateArcMapServices
UpdateArcMapServices.sh -m analysis -o /Home/SharedDocs
このツールを実行した結果、ArcGIS Server サイト内のサービスのうち、現時点で移行の対象外となっているサービスが 5 つあることが判明しました。 結果はコマンド ラインに表示され、HTML レポートにも記されます。 レポートには、4 つのサービスでサポートされていないケーパビリティが有効になっていること (警告コード 10900) と、1 つのサービスにサポートされていないレイヤー タイプが含まれていること (警告コード 10901) が示されます。
WARNING: Service [Mapservice1] with extensions [JavaRESTSOE] enabled needs to be addressed. Code 10900. WARNING: Service [Mapservice2] with extensions [JavaMapExtension] enabled needs to be addressed. Code 10900. WARNING: Service [Mapservice3] with extensions [CustomExtension] enabled needs to be addressed. Code 10900. WARNING: Service [Mapservice4] with extensions [JavaMapExtension,JavaRESTSOE] enabled needs to be addressed. Code 10900. WARNING: Service [Imageservice] with data in layers [coral_reefs] needs to be addressed. Code 10901.
GIS スタッフはレポートを確認し、5 つのサービスをそれぞれ確認します。 サポートされていないエクステンションを持つ 4 つのサービスでカスタム SOE が有効になっており、1 つのサービスにはラスター データセットが含まれていることがわかりました。 最初の 4 つのサービスを移行するため、ArcGIS Server Manager の各サービスで SOE を無効にします。 SOE をリコンパイルし、ArcGIS Pro サービス ランタイムに移行した後に、マップ サービスにもう一度追加します。
レイヤーはサービスから削除できないため、イメージ サービスは移行しません。 このサービスは、ArcGIS Pro で再作成および公開されるサービスを示す GIS 管理者のサービス リストに追加されます。
最初の 4 つのサービスから SOE が削除されると、管理者はツールを execution モードで実行し、ArcMap サービス ランタイムから ArcGIS Pro サービス ランタイムにすべての対象サービスを移行します。
UpdateArcMapServices.sh -m execution
ツールの実行中に、管理者は HTML 結果ページを監視して、各移行タスクのログを表示します。 このツールの実行が終了すると、対象となっている各サービスが ArcGIS Pro サービス ランタイムに正常に移行されています。
残りのサービスは移行できません。 GIS スタッフ メンバーは、ArcGIS Pro で再公開するコンテンツの作成を開始します。
また、GIS スタッフのメンバーは、ArcGIS Enterprise SDK を使用して JavaRESTSOE、JavaMapExtension、CustomExtension SOE を再コンパイルします。 SOE を更新すると、4 つそれぞれのマップ サービスにもう一度追加します。