1
  • У меня есть server1 в качестве производственного сервера.
  • У меня есть server3 в качестве сервера отработки отказа. Раскрутился из снимка сервера1.
  • У меня есть server2 в качестве сервера резервного копирования файлов для сервера один. Роль должна быть рабочей лошадкой для поддержки серверов 1 и 3.

Все трое могут общаться друг с другом через туннель ssh. Все три Ubuntu 16.04 на digitalocean, каждый в своем регионе. База данных MySQL установлена для облегчения работы сайта Wordpress в var/www/HTML. Аналогично для php7 и nginx.

Два вопроса: Могу ли я запустить rsync с server2, чтобы синхронизировать server3 с server1?

Поскольку server3 является идентичным двойником сервера 1, я хочу, чтобы ВСЕ изменения на сервере server1 синхронизировались с сервером server3. В том числе системные изменения, установки программного обеспечения, изменения содержимого ... все это. Идея состоит в том, чтобы сохранить server3 как идентичный server1.

Что тогда мне сказать rsync для синхронизации? Будет ли это просто server1/ to server3/ recursive?

Спасибо за все отзывы. Я просмотрел все поиски, но не увидел, что эти два конкретных вопроса были рассмотрены в контексте этой конфигурации. Кажется, все связано с синхронизацией только определенных файлов или папок, а не целых установок.

1 ответ1

0

Я успешно клонировал систему Linux с помощью rsync. Я установил Ubuntu на Pendrive и клонировал ОС с ноутбука, и Pendrive загрузился очень хорошо. Я также сделал это на двух настольных компьютерах. Тем не менее, я однажды cp'ed /bin /, /lib и т.д., И это не сработало, мне пришлось переустановить целевую систему, не знаю почему. Но в целом это работает.

Вам необходимо исключить определенные каталоги:

rsync -acv --delete --exclude=fstab --exclude=/dev --exclude=/media --exclude=/mnt --exclude=/proc --exclude=/lost+found --exclude=/run --exclude=/sys --exclude=/tmp /server1/ /server2/

Вы должны исключить /etc /fstab, потому что ваши UID будут отличаться на ваших серверах. Так как /mnt и /media могут содержать пользовательские каталоги, которые вы создали и должны быть реплицированы на сервере server2, убедитесь, что вы можете исключить их.

Вам также необходимо запустить sudo update-grub в клонированной системе, потому что /boot/grub/grub.cfg будет указывать на UID исходной ОС, что будет проблемой при перезагрузке сервера2.

Прежде чем делать это на своих производственных серверах, обязательно протестируйте эту процедуру!

Также проверьте этот пост: Как лучше всего клонировать работающую систему на новый жесткий диск с помощью rsync?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .