Spec-Zone.ru › Chef 17

Создание резервной копии и восстановление автономной или frontend-установки

[править на GitHub]

Регулярное резервное копирование данных сервера Chef Infra Server является неотъемлемой частью управления и поддержания работоспособной конфигурации, а также гарантирует возможность восстановления важных данных при необходимости. Резервное копирование занимает около 4-5 минут на каждый ГБ данных на виртуальной машине AWS EC2 типа t3.2xlarge.

chef-server-ctl

Для большинства случаев использования chef-server-ctl backup является рекомендуемым способом создания резервных копий сервера Chef Infra Server. Используйте следующие команды для управления резервными копиями данных сервера Chef Infra Server и для восстановления этих резервных копий.

резервная копия

Подкоманда backup используется для создания резервной копии всех данных сервера Chef Infra Server. Эта подкоманда:

  • Требует предварительной установки rsync на сервере Chef Infra Server.
  • Требует chef-server-ctl reconfigure перед выполнением команды.
  • Не должна использоваться в конфигурации сервера Chef Infra Server с внешней базой данных PostgreSQL; используйте вместо этого knife ec backup.
  • Сохраняет начальную резервную копию в каталоге /var/opt/chef-backup в формате tar.gz; переместите эту резервную копию в новое место для безопасного хранения.

Параметры

Эта подкоманда имеет следующие параметры:

-y, --yes

Используется для указания возможности отключения сервера Chef Infra Server во время резервного копирования в формате tar.gz.

Синтаксис

Эта подкоманда имеет следующий синтаксис:

chef-server-ctl backup

восстановление

Подкоманда restore используется для восстановления данных сервера Chef Infra Server из резервной копии, созданной подкомандой backup. Эта подкоманда также может быть использована для добавления данных сервера Chef Infra Server на новый сервер. Не используйте эту команду в конфигурации сервера Chef Infra Server, использующей внешнюю базу данных PostgreSQL; используйте вместо этого knife ec backup. Эта подкоманда:

  • Требует установки rsync на сервере Chef Infra Server перед выполнением команды.
  • Требует chef-server-ctl reconfigure перед выполнением команды.

В идеале сервер восстановления будет иметь тот же FQDN, что и сервер, с которого была создана резервная копия. Если сервер восстановления имеет другой FQDN, то:

  1. Замените FQDN в /etc/opscode/chef-server.rb.
  2. Замените FQDN в /etc/opscode/chef-server-running.json.
  3. Удалите старый сертификат SSL, ключ и файл -ssl.conf из /var/opt/opscode/nginx/ca.
  4. Если вы используете выданный центром сертификации сертификат вместо самоподписанного сертификата, скопируйте выданный центром сертификации сертификат и ключ в /var/opt/opscode/nginx/ca.
  5. Обновите файл /etc/chef/client.rb на каждом клиенте, чтобы он указывал на новый FQDN сервера.
  6. Выполните chef-server-ctl reconfigure.
  7. Выполните ``chef-server-ctl restore`.

Параметры

Эта подкоманда имеет следующие параметры:

-c, --cleanse

Используется для удаления всех существующих данных на сервере Chef Infra Server; они будут заменены данными из резервной копии.

-d DIRECTORY, --staging-dir DIRECTORY

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

Синтаксис

Эта подкоманда имеет следующий синтаксис:

chef-server-ctl restore PATH_TO_BACKUP (options)

Примеры

chef-server-ctl restore /path/to/tar/archive.tar.gz

Создание резервной копии и восстановление установки Chef Backend

Предупреждение

Chef Backend устарел и больше не развивается. Свяжитесь с вашим представителем Chef для получения информации об обновлении вашей системы.

Этот документ больше не поддерживается.

В случае аварии процессы резервного копирования и восстановления позволяют восстановить резервную копию данных в вновь созданном кластере. Он не предназначен для восстановления отдельной машины в кластере chef-backend или для отката существующего кластера на определенный момент времени.

Резервное копирование

Восстановление данных в случае чрезвычайной ситуации зависит от предварительно созданных резервных копий:

  • данных в вашем кластере Chef Backend
  • конфигурации вашего сервера Chef

Для создания резервных копий для использования в сценариях чрезвычайных ситуаций:

  1. На узле-последователе chef-backend выполните chef-backend-ctl backup
  2. На узле сервера Chef Infra Server выполните: chef-server-ctl backup --config-only
  3. Переместите архивы tar, созданные на шагах (1) и (2), в место долговременного хранения.

Восстановление

Для восстановления кластера Chef Infra Server на основе Chef Backend:

  1. Восстановите узел и IP-адрес, который можно использовать для доступа к узлу на первой машине, которую вы хотите использовать в вашем новом кластере Chef Backend. Аргумент опции --publish_address должен быть IP-адресом для доступа к узлу, который вы восстанавливаете.

    chef-backend-ctl restore --publish_address X.Y.Z.W /path/to/backup.tar.gz
    
  2. Подключите дополнительные узлы к вашему кластеру Chef Backend. (Если вы только тестируете и проверяете процесс восстановления, вы можете протестировать его против одного узла Chef Backend и одного узла Chef Infra Server.)

    chef-backend-ctl join-cluster IP_OF_FIRST_NODE --publish_address IP_OF_THIS_NODE
    
  3. Восстановите сервер Chef Infra Server из вашей резервной копии конфигурации Infra Server (см. шаг 2 в инструкциях по резервному копированию выше). В качестве альтернативы, вы можете сгенерировать новую конфигурацию для этого узла и перенастроить его, используя шаги, описанные в инструкциях по установке.

    chef-server-ctl restore /path/to/chef-server-backup.tar.gz
    
  4. Выполните команду reindex для повторной загрузки вашего индекса поиска

    chef-server-ctl reindex --all
    

Проверка

Рекомендуется периодически проверять резервную копию, восстанавливая отдельный узел Chef Backend, отдельный узел Chef Infra Server и убеждаясь, что различные команды knife и Chef Infra Client успешно завершаются на вашей резервной копии.

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/runbook/server_backup_restore/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API