クラウド環境やセキュリティで保護された環境などにおいてサーバーへのアクセスが制限されている場合は、サーバー管理者と共有できるサービス定義ファイルを作成して、後で公開することができます。 サービス定義ファイルには、サービス プロパティ、機能、およびサービス タイプに関する情報が含まれ、これらの情報が 1 つのファイルにパッケージ化されます。 必要に応じて、GIS リソースが参照しているデータを含めるようにサービス定義ファイルを構成できます。
たとえば、GIS アナリストが管理しているジオデータベースが、多数の編集者によって定期的に変更されている場合を考えます。 毎月、このデータは品質チェックの処理によって、組織のデータ整合性の基準を満たしているかどうかが確認されます。 データの品質が確認された後、検査済みのジオデータベースをサービス定義ファイルに格納し、ArcGIS Server サイトで公開するためにサーバー管理者に送ることができます。
注意:
サービス定義ファイルには、作成時に ArcGIS Server サイトに接続するか、ポータルの組織に接続するかによる違いがあります。 サービス定義ファイルの作成時に ArcGIS Server サイトに接続していたか、または GIS リソースが参照しているデータを含めるオプションを選択した場合、そのサービス定義ファイルは ArcGIS Server サイトでのみ使用できます。そのファイルは、ArcGIS Enterprise ポータルにも ArcGIS Online にも公開できません。 同様に、サービス定義ファイルの作成時に組織に接続していた場合、そのサービス定義ファイルを ArcGIS Server サイトに公開することはできません。
ArcGIS Server Manager からサービス定義ファイル (.sd) を公開できます。
サービス定義ファイルの作成
ArcGIS Pro では、arcpy.sharing モジュールを使用してマップ サービス、マップ イメージ レイヤー、Web タイル レイヤー、および Web フィーチャ レイヤーのサービス定義ドラフト (.sddraft) ファイルを作成できます。 また、関数を使用して、ジオコード サービス (CreateGeocodeSDDraft)、ジオプロセシング サービス (CreateGPSDDraft)、イメージ サービス (CreateImageSDDraft) の .sddraft ファイルを作成することもできます。 ドラフト ファイルを保有した後、ArcPy を使用してサーバー サイトにファイルをステージングしてアップロードできます。
サービス定義ファイルの作成プロセスを進める前に、次のシナリオについて考えます。
サーバー接続をすでに構成している場合
ArcGIS Server への公開時に使用するサーバー接続が、サーバー管理者によってすでに構成されている場合、サービス定義ファイルを作成するときにこの接続を選択できます。 このオプションを選択して作成されたサービス定義ファイルは、サーバー管理者が直ちに ArcGIS Server サイトで公開できます。
サービス定義を作成するときにサーバー接続を指定する場合は、GIS リソースが参照しているデータをファイルに含めるかどうかを決定する必要があります。
- サービス定義ファイルに GIS リソースが参照しているデータを含めない場合は、ファイルを作成する前に、サーバーにデータを登録する必要があります。 データを登録することでサーバーにデータの場所が通知され、コンピューター間でデータを公開するときに、サーバーがデータへのパスを調整する際に役立ちます。 公開の際に、サービスは引き続き GIS リソースに含まれる元のデータを参照します。 サーバーに別のコピーは保持されません。
- サービス定義に GIS リソースが参照しているデータを含める場合は、データをサーバーに登録しません。 GIS リソースが参照しているデータはすべて、サービス定義ファイルにカプセル化されます。 公開時に、サービスとその関連データはサーバーにアップロードされます。 サーバーが、公開時にデータのコピーを許可しないように設定されている場合は、データを含むサービス定義を公開できない点に注意してください。
サーバーから切断されている場合、またはアクセスが制限されている場合
現在サーバーから切断されている場合、またはサーバー接続にアクセスできない場合は、利用可能な ArcGIS Server への接続を選択せずにサービス定義を構成できます。 これらのワークフローでは、公開時にサーバー接続を使用して動作するように構成する必要があるサービス定義ファイルを作成します。
サービス定義を作成するときにサーバー接続を指定しない場合は、GIS リソースが参照しているデータをファイルに含めるかどうかを決定する必要があります。 含めない場合、データは ArcGIS Server サイトがアクセスできる場所にある必要があります。 データの場所をサーバーに登録する必要はありません。 公開の際に、サービスは引き続き GIS リソースに含まれる元のデータを参照します。 サーバーに別のコピーは保持されません。
サービス定義ファイルの作成に arcpy.sharing モジュールを使用する場合、offline プロパティを true として指定できます。 これにより、サーバー URL または接続ファイルを指定する必要がなくなります。
サービス定義ファイルのステージング
上記の arcpy.sharing モジュールおよびその他の ArcPy 関数は、.sddraft ファイルを作成します。 サービス定義ファイルを ArcGIS Server にアップロードする前に、ファイルをステージングする必要があります。 StageService 関数は、.sddraft ファイルをアップロード可能な .sd ファイルに変換します。
ArcGIS Server Manager からのサービス定義ファイルの公開
ArcGIS Server Manager を使用して、サービス定義ファイルを ArcGIS Server で公開できます。
- ArcGIS Server Manager を開き、公開者または管理者として ArcGIS Server サイトにサイン インします。
- [サービス] > [サービスの管理] > [サービスの公開] の順にクリックします。
- [参照] ボタンをクリックして公開するサービス定義ファイルを参照するか、ファイル パスを入力します。
参照できるのは、Server Manager を実行しているコンピューターのファイル システムだけです。 別のコンピューター上の場所を参照する場合は、ドライブをマッピングしてから参照します。
注意:
Server Manager で実行できる操作は、サービス定義ファイル (.sd) をサーバーに公開することだけです。
- [次へ] をクリックします。
- サービスの名前を入力します。 120 文字を超える名前や英数字とアンダースコア (_) 以外の文字が含まれる名前は使用できません。
- デフォルトでは、サービス定義は、サービス定義構成で指定されたサーバー フォルダーに公開されます。 サービス定義を公開するフォルダーを変更する場合は、ドロップダウン リストからフォルダーを選択します。
注意:
サービス定義を、ArcGIS Server の [Hosted] フォルダー、[System] フォルダー、または [Utilities] フォルダーで公開することはできません。 [System] フォルダーと [Utilities] フォルダーは、構成済みサービス用に予約されています。 Hosted フォルダーには、ArcGIS Enterprise ポータルで公開されるホスト サービスが格納されます。 このフォルダーは、ArcGIS Server サイトがポータルのホスティング サーバーである場合のみ使用できます。
- デフォルトのクラスターのみがサポートされているため、[クラスター] を [デフォルト] のままにします。
- 公開が完了したらすぐにサービスを利用可能にするには、すぐにサービスを起動するよう指定します。
サービス定義ファイルにキャッシュ タイル スキーマが設定されている環境でサービスを即時起動する場合は、サービスを公開して起動した時点でサーバー上にキャッシュを自動的に作成することもできます。 この処理を行う場合は、[サービスの開始時にキャッシュを自動的に構築します] オプションを選択します。
- [次へ] をクリックします。
- サービスのケーパビリティを有効または無効にします。
- [公開] をクリックします。
注意:
公開するサービス定義ファイルにデータが含まれる場合、公開に要する時間は、データのサイズとネットワーク帯域幅によって異なります。 サイズが 2GB を超えるサービス定義を、Mozilla Firefox を使用して公開することはできません。そのため、サービス定義が 2GB を超える場合は Google Chrome または別のサポートされているブラウザーを使用してください。
サービスは、ArcGIS Server サイトで実行されるようになります。 サービスを起動するように選択し、サービスがキャッシュされていない場合、ネットワーク上の他のユーザーとクライアントはサービスの使用を開始できます。 ArcGIS Server 管理者がサービスへの Web アクセスを許可している場合は、このサービスを Web 上でも利用できます。
サービスのキャッシュを自動的に作成する場合は、Server Manager でキャッシュのステータスを表示できます。