ArcGIS Server 10.7 では、管理者は 1 つまたは複数のジオプロセシング サービスのジョブ ディレクトリを、ディスクの格納場所から Microsoft Azure クラウド内の格納場所に変更できます。 常に大規模な出力を伴うジオプロセシング サービスの場合は、このオプションを使用して、ストレージ リソースのサイズを変更することができます。 この構成では、サービスの処理速度が遅くなることがあります。
注意:
この構成では、出力マップ イメージ レイヤー オプションは利用できません。
注意:
警告: JSON スキーム ファイル、ヘルプ URL、ファイル、およびラスター出力では、サービスにアクセスできる人全員にファイル シグネチャが表示されます。 そのシグネチャは数時間後に失効しますが、ユーザーがそのシグネチャをどこで使用できるかについての制約はありません。 Blob ストア全体に機密データが含まれていないか確認してください。 この構成が所属組織のセキュリティ ポリシーに準拠しているか確認してください。
Azure 環境の準備
ストレージ アカウントおよび Blob コンテナーとテーブルを作成するには、Microsoft Azure アカウントが必要です。
Azure ストレージ アカウントの作成
ストレージ アカウントは、次の要件を満たしている必要があります。
- Standard パフォーマンス レベルのストレージ アカウントが必要です。
- このアカウントは、汎用 v2 アカウントにする必要があります。 これ以外のどのタイプのストレージ アカウントにも、この構成を実行するのに必要不可欠なストレージ サービスがありません。 汎用 v1 アカウントを使用している場合でも、まだ動作する可能性があります。
- ホット アクセス層をお勧めします。
- ストレージ アカウントの他の詳細設定は、組織のニーズに合わせて調整できます。
ストレージ アカウントを配置したら、ストレージ アカウントのアクセス キーの key1 をコピーします。これは、アカウントをクラウド ストアとして ArcGIS Server に登録する際に必要となります。
Blob コンテナー、テーブル、キューの作成
すべてのジオプロセシング サービスに使用する Blob コンテナー、追加テーブル、非同期ジオプロセシング サービスに使用するキューを作成します。 これらはすべて、同じストレージ アカウントに配置する必要があります。
- Blob コンテナーを作成します。
- 非同期ジオプロセシング サービスを構成している場合は、必要に応じてテーブルを作成しなければなりません。 これ以外の場合は、ArcGIS Server でテーブルが作成されます。
- 各非同期ジオプロセシング サービスに個別のキューを作成する必要もあります。 "jobsStoreQueue":"<name of the queue>" を、各サービスの serviceProperties に追加します。
作成したコンテナー、テーブル、およびオプションのキューの名前を正確に書き留めておきます。これらの名前は、この後の手順で使用します。
Azure へのジョブ ディレクトリの移動
Azure Blob コンテナーとテーブルを配置したら、その Blob コンテナーを ArcGIS Server に登録し、それに合わせてサービス プロパティを変更します。
- ArcGIS Server Administrator Directory にサイン インして、Register Item を参照します。
- Azure Blob コンテナーとテーブルの接続情報を JSON として指定します。 以下のサンプルをご参照ください。
アイテムの登録
この例では、dataname、myaccountkey、storageaccountname、containername、optionalfoldername、および tablename を自分のアーティファクトと置き換えます。
{ "path": "/cloudStores/dataname", "type": "cloudStore", "provider": "azure", "info": { "isManaged": false, "connectionString": { "accountKey":"myaccontkey", "accountName":"mystorageaccountname", "defaultEndpointsProtocol":"https", "accountEndpoint":"core.windows.net", "credentialType":"accessKey" }, "objectStore": "containername/optionalfoldername", "tableStore":"tablename" } }
- Administrator Directory のホーム ページに戻り、[サービス] をクリックします。
- Azure Blob コンテナーを使用するように構成するジオプロセシング サービスを検索し、そのサービスの名前をクリックしてから [編集] をクリックします。
- そのサービスの JSON 表現に、新しい個別の serviceId、クラウド ストアの名前、およびそのサービスのキューを使用して以下のキーペアを追加します。
非同期ジオプロセシング構成
{ "serviceId": "<a unique service ID>", "jobQueueStore":"/cloudStores/<name of your cloud store>", "jobTableStore": "/cloudStores/<name of your cloud store>", "outputStore": "/cloudStores/<name of your cloud store>", "jobObjectStore": "/cloudStores/<name of your cloud store>", "jobsStoreQueue": "<name of the queue>" }
同期ジオプロセシング構成
{ "serviceId": "<a unique service ID>", "outputStore": "/cloudStores/<name of your cloud store>", "jobObjectStore": "/cloudStores/<name of your cloud store>" }
ヒント:
<name of the cloud store> 値は、Administrator Directory でデータ アイテム URL エンドポイントの末尾に配置されます。
- [編集の保存] をクリックして確定します。 ジオプロセシング サービスが自動的に再起動しますが、少し時間がかかります。
- Azure Blob コンテナーをジョブ ディレクトリとして使用するように複数のジオプロセシング サービスを構成する場合は、サービスごとに手順 4 ~ 6 を繰り返します。
JSON の例
上記の手順 5 で必要なキー値のペアを追加して、ジオプロセシング サービスのサービス プロパティ JSON を変更します。
GPServer を編集します。 非同期ジオプロセシング サービス構成に合わせて切り詰められた JSON を次に示します。
{
"serviceName": "myGPService1",
"resultMapServer": "false",
"maximumRecords": "1000",
"virtualOutputDir": "/rest/directories/arcgisoutput",
"serviceId": "<this_is_a_unique_serviceid>",
"jobQueueStore":"/cloudStores/<name of your cloud store>",
"jobTableStore": "/cloudStores/<name of your cloud store>",
"outputStore": "/cloudStores/<name of your cloud store>",
"jobObjectStore": "/cloudStores/<name of your cloud store>",
"jobsStoreQueue": "<this_is_a_unique_queue_name>",
"portalURL": "https://domain/webadaptor/",
"toolbox": "<... removed to save space ...>"
},
"portalProperties": "",
"extensions": "",
"frameworkProperties": {},
"datasets": []
}