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 и таблицу в той же учетной записи хранилища. Сервис геообработки не сможет отличить их, если они будут в разных учетных записях хранилищ.

Запомните точное имя создаваемой таблицы; оно понадобится позднее в ArcGIS Server.

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

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

  1. Войдите в ArcGIS Server Manager и зарегистрируйте Blob контейнер вашей учетной записи хранилища на сервере.
  2. Когда Blob контейнер будет зарегистрирован в качестве облачного хранилища, привяжите его к таблице Azure, используя REST API. Войдите в ArcGIS Server Administrator Directory по адресу https://gisserver.domain.com:6443/arcgis/admin.
  3. Перейдите data > items > /CloudStores, найдите свой новый BLOB контейнер и щелкните редактировать, чтобы открыть конечную точку элемента Редактирование данных.
  4. В представлении JSON этого элемента добавьте следующую ключевую пару с именем вашей таблицы Azure:

    "tableStore":"<name of Azure table>"

  5. Для подтверждения щелкните Обновить.
  6. Вернитесь на главную страницу каталога Administrator Directory и щелкните Сервисы.
  7. Найдите сервис геообработки (или один из сервисов), который вы хотели бы настроить на использование контейнера Azure Blob, щелкните имя сервиса и выберите команду редактировать.
  8. В представлении JSON этого сервиса найдите и измените следующую ключевую пару с именем облачного хранилища:

    "jobsDirectory":"/cloudStores/<name of your cloud store>"
    Подсказка:

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

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

Пример JSON

В данном примере учетная запись Azure содержит учетную запись хранилища под именем mystorageaccount, а в учетной записи этого хранилища ­ контейнер Blob с именем myblob и таблицу mytable. key1 mystorageaccount есть thisisafakekey12345. Вам надо, чтобы сервис геообработки, myGPService1, использовал хранилище Azure для своего каталога заданий.

Во время процесса регистрации Имя облачного хранилищаazureblob.

Когда вы измените свойства облачного хранилища, JSON тоже изменится, в конец будет добавлен "tableStore": "mytable":

Отредактируйте элемент данных.

{
  "path": "/cloudStores/azureblob",
  "type": "cloudStore",
  "id": "31245-abcde...",
  "provider": "azure",
  "info": {
    "isManaged": false,
    "connectionString": "abc/def/ghi/jkl/lmn/opq",
    "objectStore": "myblob",
    "tableStore": "mytable"
  }
}

Затем, измените JSON свойств сервиса вашего сервиса геообработки , добавив "jobsDirectory": "/cloudStores/azureblob", после "virtualOutputDir": "/rest/directories/arcgisoutput",.

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

{
 "serviceName": "myGPService1", <... removed to save space ...>
  "resultMapServer": "false",  "maximumRecords": "1000",  "virtualOutputDir": "/rest/directories/arcgisoutput",  "jobsDirectory": "/cloudStores/azureblob",  "portalURL": "https://domain/webadaptor/",  "toolbox":  <... removed to save space ...>
 }, "portalProperties": < ...removed to save space... >, "extensions": < ...removed to save space... >, "frameworkProperties": {}, "datasets": []
}