Skip To Content

Перемещение каталога заданий сервиса геообработки в хранилище Microsoft Azure

В ArcGIS Server версии 10.7 администраторы могут изменять расположение каталога заданий сервиса геообработки (или нескольких сервисов геообработки) с местоположения на диске на местоположение в облачном хранилище Microsoft Azure. Если производительность сервисов геообработки стабильно большая, то вы можете использовать эту опцию для экономии ресурсов для хранения.

Примечание:

Если опция Просматривать выходные данные в слое изображений карты была включена во время публикации веб-инструмента, то вы не сможете использовать облачное хранилище в качестве каталога заданий для созданного сервиса геообработки. Этот сервис будет поврежден сразу, как только в этот рабочий процесс будут внесены изменения.

Подготовка среды Azure

Вам понадобится учетная запись Microsoft Azure для создания учетной записи хранилища, а также контейнеров и таблиц Blob.

Создание учетной записи хранилища Azure

Учетная запись хранилища должна удовлетворять следующим требованиям:

  • Необходима учетная запись хранилища стандартной производительности.
  • Эта учетная запись может быть Общего назначения v2 (рекомендуется) или Общего назначения v1. Учетные записи хранилищ Blob, Block Blob и Azure Files не поддерживаются.
  • Рекомендуется уровень горячего доступа.
  • Другие, дополнительные параметры учетной записи хранилища могут настраиваться с учетом потребностей организации.

Когда учетная запись хранилища будет создана, скопируйте key1 из ключей доступа учетной записи хранилища, который понадобится при регистрации учетной записи в качестве облачного хранилища в ArcGIS Server.

Создание контейнера Blob и таблицы

Создайте контейнер Blob и таблицу в той же учетной записи хранилища. Сервис геообработки не сможет отличить их, если они будут в разных учетных записях хранилищ.

Вам также необходимо создать уникальную очередь для каждого асинхронного сервиса геообработки. Добавьте "jobsStoreQueue":"<name of the queue>" к serviceProperties для каждого сервиса.

Запишите точное имя контейнера, таблицы и дополнительных очередей, которые вы создаете; вы будете использовать их в следующих шагах.

Перемещение каталога заданий в Azure

Как только контейнер Azure Blob и таблица будут развернуты, зарегистрируйте этот Blob контейнер в ArcGIS Server и измените свойства сервиса соответственно.

  1. Войдите в ArcGIS Server Administrator Directory и перейдите к опции Зарегистрировать элемент
  2. Предоставьте информацию о подключении вашего контейнера Azure BLOB и таблицы в формате JSON. Ссылка на образец ниже.
  3. Вернитесь на главную страницу каталога Administrator Directory и щелкните Сервисы.
  4. Найдите сервис геообработки, который вы хотели бы настроить на использование контейнера Azure Blob, щелкните имя сервиса и щелкните редактировать.
  5. В 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>",
    Подсказка:

    Имя облачного хранилища будет в конце конечной точки URL этого элемента данных в каталоге Administrator Directory.

  6. Щелкните Сохранить изменения. Сервис геообработки автоматически перезапустится, что займет некоторое время.
  7. При настройке нескольких сервисов геообработки для использования контейнера Azure Blob в качестве каталога заданий повторите шаги с 4 по 6 для каждого сервиса.

Пример 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"
    }
  }

Измените JSON свойств сервиса геообработки, добавив пары ключ-значение, необходимые на шаге 5 выше.

Отредактируйте GPServer.

{
 "serviceName": "myGPService1",
<... removed to save space ...>
  "resultMapServer": "false",
  "maximumRecords": "1000",
  "virtualOutputDir": "/rest/directories/arcgisoutput",
<... below is the new key-values needed ...>
  "serviceId": "this_is_a_unique_serviceid",
  "jobQueueStore":"/cloudStores/azure",
  "jobTableStore": "/cloudStores/azure",
  "outputStore": "/cloudStores/azure",
  "jobObjectStore": "/cloudStores/azure",
  "jobsStoreQueue": "this_is_a_unique_queue_name",
<... end of new key-values needed ...>
  "portalURL": "https://domain/webadaptor/",
  "toolbox":  <... removed to save space ...>
 },
 "portalProperties": < ...removed to save space... >,
 "extensions": < ...removed to save space... >,
 "frameworkProperties": {},
 "datasets": []
}