Создаём бэкап при копировании файлов с помощью Ansible
Перевод: Use Backups When Deploying with Ansible
«««< HEAD
Опция backup в Ansible
=======
Делаем резервные копии файлов в Ansible
9aef28c6fa6479408dd337da21d0425e10f137c3
Я вновь вернулся к очень интересной задаче: полной автоматизации деплоя моих домашних и онлайн серверов с помощью системы Ansible. Создаю группы серверов, разрабатываю роли и перевожу любые элементы настройки серверов и виртуальных машин в Ansible playbooks. Один очень важный момент при распространении файлов средствами Ansible – создание резервных копий, об этом мы сегодня и поговорим.
Резервные копии файлов в Ansible
Чтобы уж точно говорить об одном и том же, позвольте мне уточнить: под резервными копиями файлов в Ansible я имею в виду копии любых файлов, которые мы создаём или копирует на сервер с помощью Ansible playbooks. Речь не идёт о создании бэкапов самих playbooks или файлов настройки среды Ansible – тут разговор именно и только о тех конфигурационных и мелких текстовых файлах, что мы раскладываем на серверах с помощью скриптов Ansible.
Как это работает? Ansible проверяет указанное имя файла, и если на сервере уже существует такой объект, то он переименовывается в то же имя, но с указанием даты и времени работы скрипта Ansible. После этого скрипт продолжает свою работу и создаёт новую копию файла с нужным контентом.
Как активировать резервные копии в Ansible playbooks
Очень просто, на самом деле. Просто добавляем такой флаг в код Ansible:
Бэкап в модуле template
Вот как я это использую в модуле template (создание файла из шаблона):
После добавления этого флага, каждый деплой файла в указанном коде будет создавать копию файла /etc/sudoers.d/techstack, типа /etc/sudoers.d/techstack.10600.2020-01-12@13:21:39~
Не каждый файл или шаблон нуждается в резервном копировании, но большинству это никак не помешает – потому что если что-нибудь случайно сломалось или перезаписалось, то всегда будет сравнительно лёгкий способ восстановить копию из резервной.
Ну, вот и всё на сегодня. Удачи с Ansible!
Ссылки по теме
«««< HEAD Опция backup в Ansible ======= Делаем резервные копии файлов в Ansible
9aef28c6fa6479408dd337da21d0425e10f137c3
Я вновь вернулся к очень интересной задаче: полной автоматизации деплоя моих домашних и онлайн серверов с помощью системы Ansible. Создаю группы серверов, разрабатываю роли и перевожу любые элементы настройки серверов и виртуальных машин в Ansible playbooks. Один очень важный момент при распространении файлов средствами Ansible – создание резервных копий, об этом мы сегодня и поговорим.
Резервные копии файлов в Ansible
Чтобы уж точно говорить об одном и том же, позвольте мне уточнить: под резервными копиями файлов в Ansible я имею в виду копии любых файлов, которые мы создаём или копирует на сервер с помощью Ansible playbooks. Речь не идёт о создании бэкапов самих playbooks или файлов настройки среды Ansible – тут разговор именно и только о тех конфигурационных и мелких текстовых файлах, что мы раскладываем на серверах с помощью скриптов Ansible.
Как это работает? Ansible проверяет указанное имя файла, и если на сервере уже существует такой объект, то он переименовывается в то же имя, но с указанием даты и времени работы скрипта Ansible. После этого скрипт продолжает свою работу и создаёт новую копию файла с нужным контентом.
Как активировать резервные копии в Ansible playbooks
Очень просто, на самом деле. Просто добавляем такой флаг в код Ansible:
Бэкап в модуле template
Вот как я это использую в модуле template (создание файла из шаблона):
После добавления этого флага, каждый деплой файла в указанном коде будет создавать копию файла /etc/sudoers.d/techstack, типа /etc/sudoers.d/techstack.10600.2020-01-12@13:21:39~
Не каждый файл или шаблон нуждается в резервном копировании, но большинству это никак не помешает – потому что если что-нибудь случайно сломалось или перезаписалось, то всегда будет сравнительно лёгкий способ восстановить копию из резервной.
Ну, вот и всё на сегодня. Удачи с Ansible!