Как я могу переустановить работающий производственный сервер с минимальным временем простоя?
Мне нужно переустановить Ubuntu Server, работающий на VMWare VPS. Самым простым способом, конечно, было бы сделать новую установку из мини ISO. Но это рабочий сервер, и я не могу позволить себе час или больше простоя. Возможно ли переустановить практически без простоев (скажем, 15 минут или около того)?
Другими словами, я ищу способ обновить версию ОС на работающем Ubuntu Server без заметного простоя. Я перенесу все настройки и данные вручную.
Факты о сервере:
- Ubuntu Server 10.04.2 LTS amd64
- VMWare VPS с консольным доступом (я могу смонтировать локальный образ ISO)
- Одиночный привод:
/boot
, 92 МБ наsda1
@ext4/
1,5 ГБ на LVMroot
@ext4/srv
, 19 ГБ на LVMdata
@ext4- своп на LVM
swap
У меня нет опыта работы с инструментами файловой системы Linux (chroot
и тому подобное) пока нет. Тем не менее, я предполагаю, что план действий, подобный следующему, может сработать (host
является целевой машиной VPS, upgrade
это новая ОС):
Установить обновление ОС
Установите новый сервер Ubuntu на локальный виртуальный ящик.
Услуги трансфера и настройки
Перенос сервисов и настроек с текущей ОС на обновление ОС. Я держу конфиг как можно более портативным и использую
etckeeper
отслеживать изменения конфигурации.Скопируйте обновление файловой системы ОС на хост
Я планирую использовать
rsync
скопировать обновление файловой системы ОС на хост. Но где разместить его на хосте? Я думал о:отдельный раздел; Мне нужно уменьшить LVM
data
на хосте и подготовьте новый раздел для обновления файловой системы ОС.изображение файла; Я бы создал изображение файла на хосте
/srv
раздел, смонтировать его на хосте (пока не знаю как) и скопировать в него обновленную файловую систему ОС.папка; Я бы перенес зеркало в папку на хосте
/srv
раздел. Это будет лучший вариант ИМО, если это вообще возможно.
Заменить текущую ОС обновлением файловой системы ОС
Я знаю, это зависит от того, куда было передано зеркало. В любом случае должна быть возможность сначала переключиться, чтобы проверить его работоспособность, а затем заменить файловые системы. Я могу позволить себе перезагрузить компьютер и использовать консоль восстановления или загрузочную мини ISO для этого.
Шаги 3 и 4 являются основными вопросительными знаками, по которым мне нужны инструкции. Если вы можете посоветовать изменения моего "плана" или другой подход, пожалуйста, продолжайте. Ссылка на инструкции или документацию приветствуется.
Изменить: Как предложено, я бы пошел с машиной клона, если у меня нет другого решения.
1 ответ
Я не знаю, каковы ваши коммерческие отношения с вашим провайдером VPS, но если бы это была моя среда VMWare, я бы просто клонировал текущую производственную виртуальную машину, перенес бы клон с соседним IP-адресом, применил изменения / обновления, переместил бы все, что С момента клонирования изменилось с производства, затем протестируйте обновленный клон, когда будете довольны переключением IP-адресов и, в конечном итоге, уничтожением исходной виртуальной машины.