Если доступ к данным хранилища отсутствует – например, из за сбоя компьютера с ArcGIS Data Store или случайного удаления данных размещенного векторного слоя, – вы можете восстановить данные с помощью архивных файлов.
В случае сбоя одного или нескольких компьютеров в хранилище данных установите ArcGIS Data Store на новый компьютер и восстановите на нем последний полный доступный архив с помощью утилиты restoredatastore.
Примечание:
Чтобы узнать, какие файлы резервных копий вы можете использовать для восстановления, запустите утилиту создания списка резервных копий listbackups.
То, как вы это сделаете, будет зависеть от типа хранилища данных, количества компьютеров, которые вы заменяете, и какие именно из них вы заменяете. Ниже следуют примеры этих различий:
- Если вы замените все компьютеры в кэше листов (кластере), хранилище пространственно-временных больших данных или хранилище объектов, вы дважды запустите утилиту restoredatastore, чтобы разместить все данные.
- Если хранилище реляционных данных настроено на восстановление по точке времени, вы можете восстановить данные размещенного векторного слоя на определенный момент времени путем восстановления данных поверх имеющегося хранилища реляционных данных и указания даты и времени для восстановления.
- После замены компьютера в кластере хранилища данных кэша листов и восстановления данных на новом компьютере данные кэша сцены перераспределяются.
Важная информация о восстановлении хранилищ данных
Запомните следующую информацию о восстановлении ArcGIS Data Store:
- Вы должны убедиться, что процедуры резервного копирования и восстановления работают, протестировав их при разработке или тестовом развертывании. Вы же не хотите обнаружить брак своем рабочем процессе, когда вам потребуется восстановить производственное развертывание.
- Архивные файлы, использующиеся для восстановления, сжаты. Когда вы восстанавливаете данные, эти файлы должны быть развёрнуты во временной папке. Это означает, что временная папка должна иметь достаточно места для этих данных. По умолчанию файлы разворачиваются в папке data ArcGIS Data Store. Если в реляционном хранилище данных или хранилище данных кэша листов находится много данных, лучше создать отдельную временную папку и задать ее для хранения файлов восстановления хранилища данных. Задайте отдельную временную папку с помощью утилиты changestaginglocation.
- Перед запуском утилиты restoredatastore убедитесь, что никто не публикует и не редактирует слои. Эти новые сервисы и изменения будут потеряны, так как они не включены в файл резервной копии, который вы восстанавливаете.
- Клиенты и сервисы не могут получить доступ к существующим данным в хранилище данных, пока вы его восстанавливаете.
- Когда вы разворачиваете ArcGIS Enterprise локально, но файлы резервных копий хранилища данных находятся в облачном хранилище, создание резервных копий и восстановление из этих резервных копий займёт больше времени, чем если файлы резервных копий хранятся в локальных общих папках.
Восстановление хранилища реляционных данных, хранилища графов или хранилища данных кэша листов (режим первичного ожидания) после сбоя
Если оборудование перестает функционировать или хранилище данных становится недоступным и не может быть снова подключено к сети для развернутого на одном компьютере реляционного хранилища данных, хранилища данных кэша листов (работающего в режиме первичного ожидания) или хранилища графов, установите ArcGIS Data Store на новый компьютер и примените файлы резервных копий для новой установки с помощью утилиты restoredatastore. Это позволит восстановить хранилище данных и сохранить регистрацию хранилища на имеющемся сайте GIS Server.
Подсказка:
Если основной компьютер в развертывании в режиме первичного ожидания реляционного хранилища данных, хранилища графов или хранилища данных кэша листов выходит из строя, резервный компьютер становится основным. Удалите из развертывания отказавший компьютер. После этого установите ArcGIS Data Store на новый компьютер и настройте его в качестве резервного. Не нужно выполнять восстановление из файла резервной копии, поскольку данные будут реплицироваться с основного компьютера на резервный. Аналогичным образом, если резервный компьютер выйдет из строя и его невозможно будет восстановить, вам тоже не придется восстанавливать данные. Удалите резервный компьютер из развертывания, установите ArcGIS Data Store на новый компьютер и настройте его в качестве резервного.
- Установите ArcGIS Data Store на новом компьютере.
Не продолжайте выполнение настройки. Закройте Мастер установки Data Store, когда он откроется в конце установки.
- Запустите оболочку командной строки.
- Запустите утилиту restoredatastore из <ArcGIS Data Store installation directory>\datastore\tools, чтобы восстановить самую последнюю архивную копию реляционного хранилища данных, хранилища графов или хранилища данных кэша листов.
Обратитесь к разделу справки по утилите или введите --help в командной строке для вывода синтаксиса.
В данном примере происходит восстановление самой последней резервной копии реляционного хранилища данных из /net/fortknox/backups/datastore/relational в /usr/arcgisdatastore. Поскольку хранилище данных по умолчанию остается привязанным к сайту GIS Server, на котором он зарегистрирован, вам не нужно задавать --bound true, но необходимо указать сайт GIS Server, URL и учетные данные администратора.
./restoredatastore --store relational --target most-recent --source-loc /net/fortknox/backups/datastore/relational --data-dir /usr/arcgisdatastore --server-url https://gisserver.domain.com:6443 --server-admin siteadmin --server-password MySApw
Если указанная вами директория с опцией --data-dir до сих пор не существует, она будет создана. Если она существует, она должна быть пуста, и вы должны обладать правами на запись в неё. Если это не так, операцию восстановления выполнить не удастся.
- Подтвердите, что вы хотите выполнить восстановление данных, введя yes.
Восстановление реляционного хранилища данных на определенный момент времени
Если реляционное хранилище данных настроено на восстановление по точке времени, вы можете восстановить данные размещенного векторного слоя на определенный момент времени путем восстановления данных поверх имеющегося реляционного хранилища и указания даты и времени для восстановления. Например, если редактор вносит большое количество изменений в данные размещенного слоя объектов, а на следующий день обнаруживает, что эти изменения неверны, вы можете вернуть реляционное хранилище данных к состоянию на момент перед началом этих изменений.
Время необходимо задавать в формате UTC (Coordinated Universal Time).
Примечание:
Все слои объектов, опубликованные на портале после этого времени, станут недействительными, поскольку данные этих слоев исчезнут из хранилища.
Но помните, что после отключения автоматического резервного копирования вы не сможете произвести восстановление на определённый момент времени.
- Запустите оболочку командной строки.
- Запустите утилиту restoredatastore из <ArcGIS Data Store installation directory>\datastore\tools, чтобы восстановить данные на определенный момент.
Для восстановления реляционного хранилища данных на определенный момент используется следующий синтаксис:
restoredatastore --store relational --target <date and time> --server-url <ArcGIS Server URL> --server-admin <ArcGIS Server admin user> --server-password <ArcGIS Server admin password>
Например, для восстановления хранилища данных из файлов на состояние в 5:00 p.m. UTC on March 20, 2014 введите следующее.
./restoredatastore --store relational --target 2014-03-20-17:00:00 --server-url https://gisserver.domain.com:6443 --server-admin siteadmin --server-password MySApw You are going to restore the data store from a data store backup. This process could take a long time, depending on the size of your data. Please do not interrupt the process once it has started. Do you want to continue (Yes or No)? Yes
- Подтвердите, что вы хотите выполнить восстановление данных, введя yes.
Подсказка:
Если вы хотите запустить утилиту restoredatastore с помощью скрипта, следует поставить отметку для отмены подтверждения, как в следующем примере:
restoredatastore --store relational --target 2014-03-20-17:00:00 --prompt no
Данные размещённого векторного слоя будут восстановлены по состоянию на указанное время.
Восстановление кластеризованного хранилища данных кэша листов для перераспределения данных кэша сцены после сбоя
Если происходит сбой компьютера с хранилищем данных кэша листов, на котором запущен режим кластеризации, и вы не можете вернуть его в оперативный режим, замените вышедший из строя компьютер и восстановите хранилище данных кэша листов на новом компьютере. Когда вы восстанавливаете данные, ArcGIS Data Store перераспределяет копии данных кэша сцены на все компьютеры в хранилище данных, включая новые.
Следуйте этим инструкциям, чтобы обнаружить и заменить неисправный компьютер хранилища данных кэша листов и восстановить для перераспределения данных кэша сцены для обеспечения высокой доступности:
- Если вы подозреваете, что есть проблема с одним из ваших компьютеров хранилища данных кэша листов, запустите утилиту describedatastore, чтобы убедиться, что компьютер недоступен.
- Если это указывает на проблему с компьютером, попытайтесь его восстановить.
Например, если сетевой или силовой кабель отключен, подключите его и включите компьютер.
- Если вы можете восстановить компьютер, переведите его в оперативный режим и снова запустите утилиту describedatastore, чтобы убедиться, что он снова подключен и участвует в хранилище данных кэша листов.
Сделайте несколько тестов слоев сцены, чтобы убедиться, что они доступны. Если все работает исправно, проблема решена. Однако, если вы не можете восстановить компьютер, перейдите к следующему шагу.
- Запустите утилиту removemachine с опцией --force для удаления неисправного компьютера из хранилища данных кэша листов.
В этом примере компьютер tilecache3 недоступен и не может быть восстановлен. Так как ArcGIS Data Store не может получить доступ к компьютеру, вы должны указать --force true, чтобы удалить компьютер из хранилища данных кэша листов.
./removemachine tilecache3 --store tilecache --force true
- Возьмите новый компьютер с той же операционной системой, что и старый. Установите ArcGIS Data Store на него и добавьте его в существующее хранилище данных кэша листов, сконфигурировав его с тем же сайтом, на котором размещен ArcGIS Server.
- Запустите команду validate REST ArcGIS Server, чтобы убедиться, что существующие данные кэша сцены имеют высокую доступность.
Если вы получили сообщение о том, что имеется только одна копия одного или нескольких кэшей слоя сцены, перейдите к остальным шагам.
- Подтвердите, что вы настроили общее расположение резервной копии для хранилища данных кэша листов. Если нет, настройте сейчас.
- Убедитесь, что никто не публикует и не обновляет какие-либо слои сцены и не создает никаких кэшей сцены.
Чтобы определить, создается ли кэш сцены или перестраивается, войдите на ArcGIS Server Manager для хост-сервера, откройте Сайт > Задания, выберите System/SceneCachingControllers в раскрывающемся списке Сервисы и щелкните Запрос. Если сервер создает кэши сцен, статусы заданий появляются при запросе. Не продолжайте, пока эти задания кэша не будут завершены. Если заданий кэша сцены нет в списке, вы можете продолжить.
Чтобы никто не публиковал новые слои или правки, вы можете перевести ArcGIS Enterprise в режим только для чтения. Однако имейте в виду, что это влияет на всех, кто использует портал.
- Создать архив в хранилище данных кэша листов.
В этом примере файл резервной копии с именем myscenecachebu создается и хранится в хранилище резервных копий в бакете Amazon Simple Storage Service (S3), который вы зарегистрировали в качестве хранилища резервных копий для хранилища данных кэша листов.
./backupdatastore myscenecachebu --store tilecache --location type=s3;location=mys3bucket
- Используйте утилиту restoredatastore с опцией replicatedata, установленной на true, чтобы перезаписать содержимое хранилища данных кэша листов и перебалансировать содержимое на всех компьютерах.
В следующем примере файл myscenecachebu используется для восстановления хранилища данных полистного кэша, и опция replicatedata установлена на true для указания ArcGIS Data Store, что две копии каждого кэша сцены должны быть распределены по всем компьютерам в хранилище данных кэша листов.
./restoredatastore.sh --store tilecache --target myscenecachebu --serverurl https://gisserver.domain.com:6443 --server-admin myadmin --server-password myAdminPWd! --replicatedata true
- Если вы перевели ArcGIS Enterprise в режим только для чтения, верните его в режим чтения-записи.
- Запустите команду validate еще раз, чтобы убедиться, что есть две копии всех кэшей сцены.
Восстановление хранилища данных после потери всех компьютеров
Если вам необходимо заменить все компьютеры кэша листов или хранилища пространственно-временных больших данных – например, если наводнение разрушает ваш центр обработки данных, или вам нужно вернуться к более старой версии ArcGIS Enterprise – выполните следующие действия для восстановления хранилища данных:
- Установите ArcGIS Data Store на новом компьютере.
Не продолжайте выполнение настройки. Закройте Мастер установки Data Store, когда он откроется в конце установки.
- Запустите оболочку командной строки.
- Запустите утилиту restoredatastore из <ArcGIS Data Store installation directory>\datastore\tools и включите операцию --loaddata со значением false, чтобы подготовить первый компьютер для восстановления хранилища пространственно-временных больших данных.
Обратитесь к разделу справки по утилите или введите --help в командной строке для вывода синтаксиса.
В данном примере происходит подготовка нового компьютера к восстановлению самой последней резервной копии хранилища пространственно-временных больших данных из /net/myserver/backups/spatiotemporal в /usr/arcgisdatastore. Операция --loaddata установлена на false, то есть данные ещё не загружены.
./restoredatastore --store spatiotemporal --target most-recent --source-loc /net/myserver/backups/spatiotemporal --data-dir /usr/arcgisdatastore --loaddata false --server-url https://gisserver.domain.com:6443 --server-admin siteadmin --server-password MySApw
Если указанная вами директория с опцией --data-dir не существует, хранилище данных её создаст. Если директория существует, она должна быть пуста, и вы должны обладать правами на запись в неё. Если это не так, операцию восстановления выполнить не удастся.
Для загрузки данных для хранилища кэша листов укажите --store tilecache и расположение резервной копии кэша листов с помощью операции --source-loc в предыдущем примере.
- Установите ArcGIS Data Store на дополнительные компьютеры и запустите Мастер конфигурации Data Store или утилиту configuredatastore на каждом из них, чтобы добавить компьютеры на хост-сервер.
- Запустите утилиту restoredatastore снова - без опции --loaddata или с --loaddata установленной на true, чтобы восстановить все данные.
Данные будут распределены между всеми компьютерами хранилищ кэша листов или пространственно-временных больших данных.
В данном примере происходит восстановление данных в новое настроенное хранилище пространственно-временных больших данных с помощью того же файла резервной копии (из /net/myserver/backups/spatiotemporal). Опция --loaddata установлена на значение true по умолчанию, поэтому вам не нужно задавать значение при загрузке данных.
./restoredatastore --store spatiotemporal --target most-recent --source-loc /net/myserver/backups/spatiotemporal --data-dir /usr/arcgisdatastore --server-url https://gisserver.domain.com:6443 --server-admin siteadmin --server-password MySApw
Восстановление хранилища пространственно-временных больших данных или хранилища объектов в случае, если целевой компьютер может вместить все данные из файла резервной копии
Если первый компьютер, на котором вы создаете восстановленную копию хранилища пространственно-временных больших данных или хранилища объектов (в режиме кластеризации), содержит достаточно дискового пространства и памяти, чтобы вместить все данные из резервного файла, или если вы выполняете восстановление на существующие компьютеры хранилища данных, вам необходимо запустить утилиту restoredatastore только один раз После восстановления вы можете добавить новые компьютеры к хранилищу пространственно-временных больших данных или хранилищу объектов, и тогда ArcGIS Data Store будет реплицировать данные среди других компьютеров.
- Установите ArcGIS Data Store на новом компьютере.
Не продолжайте выполнение настройки. Закройте Мастер установки Data Store, когда он откроется в конце установки.
- Запустите оболочку командной строки.
- Запустите утилиту restoredatastore из <ArcGIS Data Store installation directory>\datastore\tools и включите true для операции --loaddata.
Обратитесь к разделу справки по утилите или введите --help в командной строке для вывода синтаксиса.
В данном примере происходит подготовка нового компьютера к восстановлению самой последней резервной копии хранилища пространственно-временных больших данных из /net/myserver/backups/spatiotemporal в /usr/arcgisdatastore. Операция --loaddata установлена на значение true, поскольку данный новый компьютер может вместить все данные из файла резервной копии.
./restoredatastore --store spatiotemporal --target most-recent --source-loc /net/myserver/backups/spatiotemporal --data-dir /usr/arcgisdatastore --loaddata true --server-url https://gisserver.domain.com:6443 --server-admin siteadmin --server-password MySApw
Если указанная вами директория с опцией --data-dir не существует, хранилище данных её создаст. Если директория существует, она должна быть пуста, и вы должны обладать правами на запись в неё. Если это не так, операцию восстановления выполнить не удастся.
Обратите внимание, что вы можете опустить операцию --loaddata в данном случае, поскольку данные загружаются по умолчанию.
Если компьютер не может вместить все данные из файла резервной копии, операция восстановления не будет выполнена.
- Установите ArcGIS Data Store на дополнительные компьютеры и запустите Мастер конфигурации Data Store или утилиту configuredatastore на каждом из них, чтобы добавить компьютеры хранилища пространственно-временных больших данных на свой хост-сервер.
ArcGIS Data Store будет распределять и реплицировать данные среди других компьютеров.
Восстановление реляционного хранилища данных или хранилища данных кэша листов в другую ОС
Вы можете использовать файлы резервной копии для восстановления реляционного хранилища данных или хранилища данных кэша листов на компьютере с другой операционной системой (ОС).
Например, если хранилище данных кэша листов работает на сервере Microsoft Windows, а ваш департамент информационных технологий переходит на серверы Linux, вы можете использовать файлы резервной копии, созданные в ArcGIS Data Store на сервере Windows для восстановления хранилища данных кэша листов на сервере Linux.
- Установите ArcGIS Data Store на новом сервере.
Не продолжайте выполнение настройки.
- Если вы еще не сделали полную резервную копию существующего реляционного хранилища данных или хранилища данных кэша листов, используйте утилиту backupdatastore для создания такой копии.
- Поместите файл резервной копии в общее местоположение, доступное для новой установки ArcGIS Data Store.
- Запустите утилиту restoredatastore для выполнения восстановления на новый компьютер. Используйте операцию --server-url, чтобы определить адрес URL существующего хост-сервера портала (сайт GIS Server) при выполнении восстановления, поэтому существующие размещенные векторные слои и слои сцены продолжат работать.
В данном примере хранилище данных кэша листов восстанавливается и регистрируется на сайте GIS Server с адресом https://mygisserver.domain.com:6443. Файл резервной копии находится в общей директории /net/backups/tilecache, а директория ArcGIS Data Store на новом компьютере находится по адресу /arcgis/datastore.
./restoredatastore.sh --store tileCache --source-loc /net/backups/tilecache --data-dir /arcgis/datastore --server-url https://gisserver.domain.com:6443 --server-admin siteadmin --server-password MySApw