Skip To Content

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

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

Примечание:

Опция выходного слоя изображений карты в данной конфигурации недоступна.

Примечание:

Предупреждение: Файл схемы JSON, helpURLs, файловые и растровые выходные данные будут иметь файловую подпись, которая видна всем, кто имеет доступ к сервису. Хотя срок действия такой подписи истекает через несколько часов, ее можно использовать где угодно без всяких ограничений. Убедитесь, что в вашем хранилище blob не содержится конфиденциальных данных. Проверьте, соответствует ли данная конфигурация политике безопасности вашей организации.

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

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

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

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

  • Необходима учетная запись хранилища стандартной производительности.
  • Необходима учетная запись Общего назначения v2. Все другие типы учетных записей хранения не имеют необходимых сервисов хранения для завершения этой настройки. Если вы используете учетную запись общего назначения версии 1, она все еще может работать.
  • Рекомендуется уровень горячего доступа.
  • Другие, дополнительные параметры учетной записи хранилища могут настраиваться с учетом потребностей организации.

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

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

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

  1. Создание контейнера Blob.
  2. Если вы настраиваете сервис асинхронной геообработки, вам также необходимо дополнительно создать таблицу. Иначе ArcGIS Server создаст ее для вас.
  3. Вам также необходимо создать уникальную очередь для каждого асинхронного сервиса геообработки. Добавьте "jobsStoreQueue":"<name of the queue>" к serviceProperties для каждого сервиса.

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

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

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

  1. Войдите в ArcGIS Server Administrator Directory и перейдите к опции Зарегистрировать элемент
  2. Предоставьте информацию о подключении вашего контейнера 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"
        }
      }

  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>"
    }

    Конфигурация синхронной геообработки

    {
      "serviceId": "<a unique service ID>",
      "outputStore": "/cloudStores/<name of your cloud store>",
      "jobObjectStore": "/cloudStores/<name of your cloud store>"
    }
    Подсказка:

    <name of the cloud store> находится в конце конечной точки URL элемента данных в каталоге Administrator Directory.

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

Пример JSON

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

Отредактируйте 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": []
}