Перенос freebsd на виртуальную машину
Вариант миграции FreeBSD с физического сервера в виртуальную среду VMware ESXi с помощью NFS
Задача.
Перенести существующий аппаратный сервер с FreeBSD 8.2 архитектура i386 и файловая система ufs в виртуальную среду VMware ESXEi 5.0.0
1. В виртуальной машине создаем диски нужного размера не меньше имеющихся с помощью инсталяционного iso образа FreeBSD, затем с этого же iso загружаемся в режиме Live. Прописываем все необходимые настройки для сетевых интерфейсов
после этого проверяем доступность по сети реального сервера, если все Ok запускаем nfs
2. Подготовим аппаратный сервер к переносу для этого запустим службу nfs.
Запускать рекомендую именно в этой последовательности.
При запуске nfsd запросит файл /etc/exports в этом варианте он выглядел так(файловая система исторически содержала только 2 раздела / и /var ):
Если все все сделано верно, то команда mount покажет параметр «NFS exported» для раздела:
3. Возвращаемся к нашей виртуальной машине и создадим папки для монтирования локальных дисков:
/var/mount/root, /var/mount/var
и подмонтируем диски:
После этого разберемся с дисками физического сервера и создадим папки:
/var/nfs/root, /var/nfs/var
к которым монтируем расшаренные разделы физического сервера:Теперь сервера готовы к переносу.
4. Перед переносом данных на физическом сервере необходимо остановить все службы, чтобы перенесенные данные были актуальны. Для переноса используем вот такой набор команд который запустим в виртуальной машине
Вот и все сервер перенесен в виртуальную машину. Понятно, что время миграции зависит от размера используемого пространства (в данном случае оба сервера были подключены Гигабитными интерфейсами и миграция 450 Гигабайт заняла несколько часов).
5. Заключительный и важный этап необходимо обязательно размонтировать локальные диски и только после этого перегружать виртуальную машину.
Теперь наслаждаемся работой на новом «железе».
PS. Думаю этот же вариант подойдет и для XEN.
Вариант миграции FreeBSD с физического сервера в виртуальную среду VMware ESXi с помощью NFS
Задача.
Перенести существующий аппаратный сервер с FreeBSD 8.2 архитектура i386 и файловая система ufs в виртуальную среду VMware ESXEi 5.0.0
1. В виртуальной машине создаем диски нужного размера не меньше имеющихся с помощью инсталяционного iso образа FreeBSD, затем с этого же iso загружаемся в режиме Live. Прописываем все необходимые настройки для сетевых интерфейсов
после этого проверяем доступность по сети реального сервера, если все Ok запускаем nfs
2. Подготовим аппаратный сервер к переносу для этого запустим службу nfs.
Запускать рекомендую именно в этой последовательности.
При запуске nfsd запросит файл /etc/exports в этом варианте он выглядел так(файловая система исторически содержала только 2 раздела / и /var ):
Если все все сделано верно, то команда mount покажет параметр «NFS exported» для раздела:
3. Возвращаемся к нашей виртуальной машине и создадим папки для монтирования локальных дисков:
/var/mount/root, /var/mount/var
и подмонтируем диски:
После этого разберемся с дисками физического сервера и создадим папки:
/var/nfs/root, /var/nfs/var
к которым монтируем расшаренные разделы физического сервера:
Теперь сервера готовы к переносу.
4. Перед переносом данных на физическом сервере необходимо остановить все службы, чтобы перенесенные данные были актуальны. Для переноса используем вот такой набор команд который запустим в виртуальной машине
Вот и все сервер перенесен в виртуальную машину. Понятно, что время миграции зависит от размера используемого пространства (в данном случае оба сервера были подключены Гигабитными интерфейсами и миграция 450 Гигабайт заняла несколько часов).
5. Заключительный и важный этап необходимо обязательно размонтировать локальные диски и только после этого перегружать виртуальную машину.
Теперь наслаждаемся работой на новом «железе».
PS. Думаю этот же вариант подойдет и для XEN.
Перенос freebsd на виртуальную машину
remark: Почти полностью отсутствует навык администрирования unix систем. По нелепому стечению обстоятельств мне поставили следующую задачу,которую надо решить в минимальные сроки:
Имеется почтовый сервер (Postfi+Sendmail+spamassassin)на FreeBSD 8.1 (также на этой же машине подняты и некоторые другие сервисы).
Железо: P4 2.4 Ghz HDD 80 GB Ram 1GB
Привезли новый сервер с ОС win 2008 server, на него поставили VMWare server
Необходимо перенести FreeBSD со старого железа на новое в виде виртуальной машины с минимальным простоем.
Очень нужны мудрые мысли.
Заранее извиняюсь за некоторую некомпетентность в данном вопросе. т.к. специализация у меня совсем другая.
1. «Перенос FreeBSD на виртуальную машину» | + / – | |
Сообщение от kerilka on 11-Фев-11, 13:06 | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
2. «Перенос FreeBSD на виртуальную машину» | + / – | |
Сообщение от Mikula on 11-Фев-11, 15:01 | ||
dump/restore | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
3. «Перенос FreeBSD на виртуальную машину» | + / – | |
Сообщение от xxxx4611 | ||
Это не шлюз. Это просто машина стояшая за натом, на неё из вне порты прокинуты. | ||
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору |
4. «Перенос FreeBSD на виртуальную машину» | + / – | |
Сообщение от xxxx4611 | ||
| ||
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору |
5. «Перенос FreeBSD на виртуальную машину» | + / – | |
Сообщение от xxxx4611 | ||
Нашёл софтину VMWare converter ей можно как образ акрониса в виртуальную машину конвертировать, так и загрузиться с boot cd и содрать образ непосредственно с системы. | ||
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору |
7. «Перенос FreeBSD на виртуальную машину» | + / – | |
Сообщение от EvgenD (ok) on 11-Фев-11, 20:28 | ||
Это вам не винда товарисч, на счет железа тут побоку какое. Единственное в конфигах имена интерфейсов, дисков и т.п. надо будет поправить и все. Нету привязки к железу, если ядро не собирали под себя. | ||
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору |
6. «Перенос FreeBSD на виртуальную машину» | + / – | |
Сообщение от Денис (??) on 11-Фев-11, 19:35 | ||
Хоть и не в тему, но хочу предостеречь хостовая машинка была core duo с двумя гигами памяти и 2003 сервером,
Не путайте вмварежку-воркстейшн и ESX/ESXi > Не идут часы. Немного помогает установка kern.hz=100 и запуск ntpd Известный косяк с кривизной варежечного APIС в SMP режиме. Пересобрать фре ядро без поддержки многопроцессорности, и глюки со временем уйдут. > Не удалось заставить работать vlan интерфейсы, пришлось втыкать в хостовую машину Странно. У меня все олрайт на одной сетевухе, на которой висит четыре бриджа/ната варежки, и два бриджа виртуалбоксовых. ЧЯДНТ? 1. фря переносится через dump/restore, подробное пошаговое описалово процедуры вот здесь: 2. базовые параметры системы находятся в каталоге /etc, важные/особо интересные файлы: Каталог /etc/mail содержит конфиг сендмейла, если у вас используется он. Если нет, то 3. доп.софт устанавливается в /usr/local. в каталоге /usr/local/etc/ находятся конфиги почти всего доп-софта. Здесь, как минимум, придется править ИП-адреса, если при виртуализации они меняются. Это в общих чертах, остальные проблемы полезут по мере подъема сервисов.
дело было под VMWare server как и у топикстартера, ESX/ESXi потестить не удалось, поддержка вланов там заявлена. Наверное в этом дело.
Попробуй акронисом. Визьми какой нибудь zvercd там как правило есть acronis загрузаешься с диска делаешь образ куда нибу на smb или ftp на wmvare создаешь вирт мышину загружаешься опять с того же диска и делаешь рестор. Я так 2 Debian перенес 1 FreeBSD. В unix этота как раз не проблема а вот с контроллерами домена на windows это просто ужас сразу как BSD еще не разу не заработало. Да чоужтам, CTRL-C/CTRL-V тоже должно помочь. FreeBSDСодержаниемаленькие такиеNeed to remove all those ^M characters from a DOS file? Try rc.confsysctl.confraid1Памятка о настройки RAID-1 поверх уже установленной FreeBSD версии 9 или 10. Неоднократно проверенный способ, когда используется именно GPT разметка. В примере будет создан RAID-1 массив, он же зеркало, из всех разделов на основном диске. Т.е. зеркалируются именно разделы, а не полностью диск. 1. Загружаем в shell FreeBSD с LiveCD. 2. Просматриваем имеющиеся разделы: Пример автоматической разбивки диска установщиком bsdinstall 3. Копируем таблицу разделов исходного диска на второй: 4. Делаем второй диск возможным для загрузки: 5. Создаем зеркало каждого из разделов и загружаем gmirror: 6. Просмотр состояния: 7. Монтируем корневой раздел, делаем резервную копию файла fstab и редактируем оригинал с помощью «ee»: 8. Тут же, можно настроить ssh доступ для root, если необходимо, или другие необходимые настройки: 9. Обязательно добавляем загрузку GEOM: 10. Размонтируем диск и перезагружаемся в установленную ОС: 11. Добавляем зеркала для каждого из разделов: 12. Проверяем статус синхронизации: gmirror + GPT/dev/gpt/swap none swap sw 0 0\\ /dev/ufs/rootfs / ufs rw 1 1\\ /dev/ufs/usrfs /usr ufs rw 2 2\\ ^D\\ Убираем текущий загрузочный диск, делаем загрузочным созданый. fail2banShell-программированиеВ данной статье я вкратце опишу shell-программирование, рассмотрю простейшие примеры и прокомментирую их. Сразу оговорюсь,что эта статья не является исчерпывающим руководством по shell-программированию. Но её будет достаточно чтобы освоить его основы. Несмотря на кажущуюся простоту shell-программирования, оно является достаточно мощным инструментом администратора unix-системы.Замечу,что для полноценного администрирования unix-системы, уметь программировать на shell просто необходимо. Все примеры протестированы на системе Slackware Linux 10.2 и полностью работоспособны. Комментарии начинаются с символа #, за исключением первой строки. Первой строкой сценария является путь к интерпретатору, начинающийся с #! с помошью которого будет запущен данный скрипт. Например: Переменные, ввод и вывод данных. Для задания переменных используется оператор присваевания «=». Синтаксис следующий: В данный пример также можно добавить одинарные или двойные кавычки, от этого результат работы программы не изменится. Но не стоит использовать обратные кавычки, т.к.эти символы используются для выполнения команд: Оператор read присваевает значение переменной.Вот пример,который просит ввести переменную var,считывает её а затем выводит. Агрументы командной строки. Арифметические операции производятся с использованием оператора let. Операции: Синтаксис арифметических операций в Shell: Синтаксис оператора test: Ниже приведены все опции оператора test(или []): Сравнение целых чисел: Ниже описан синтаксис всех условных операторов, с примерами. Результат работы,при переданном параметре равном 10: Результат работы,при переданном параметре равном 10: Результат работы,при переданном параметре равном 7: 3) if then elif else fi Результат работы,при переданном параметре равном 10: Результат работы,при переданном параметре равном 9: Результат работы,при переданном параметре равном 8: 4) case in ) ;; *) ;; esac Case-конструкция позволяет выбирать один из нескольких альтернативных вариантов. Результат работы,при переданном параметре равном 1: Результат работы,при переданном параметре равном 2: Результат работы,при переданном параметре равном 10: Оператор языка shell-программирования while выполняет команды, пока условие истино. Пример: Оператор until выполняет команды, пока условие ложно. Пример: Результат работы программы,с параметрами 1 2 3 4 5: 4) for in do done Эта конструкция отличается от обычного for тем, что параметры берутся не из командной строки, а из строки после оператора in. 5) select in do done Конструкция select создаёт меню на основе элементов заданного списка, а затем выполняет для него указанную команду. Пример: IPFW PIPEПри использовании алгоритма Random Early Detection (RED): Если уровень перегрузки* находится между порогами min_th и max_th, пакеты отбрасываются с линейно возрастающей вероятностью от 0 до max_p, которая достигается при достижении второго порога (max_th). Когда перегрузка выше второго порога, все пакеты отбрасываются. При использовании алгоритма Gentle RED (GRED): Если уровень перегрузки* находится между порогами min_th и max_th, пакеты отбрасываются с линейно возрастающей вероятностью от 0 до max_p. Когда уровень перегрузки больше max_th, но меньше 2*max_th, то пакеты отбрасываются не все, как в случае с RED, а с линейно возрастающей вероятностью от max_th до 1. Все пакеты отбрасываются только после превышения значения уровня перегрузки канала 2*max_th. Время заполнения очереди или время задержки при стандартном значении MTU (1500) определяется: Получаем что-то типа: T=(1500*8*Q)/L Далее, если мы хотим чтобы при канале шириной в 256Kbit/s задержки не привышали 100ms, можем расчитать Q! Получаем, при GW и GW inet и inet gw2.fortd.ru => 192.168.5.124 118Kb 128Kb 125Kb gw2.fortd.ru => 192.168.5.38 127Kb 122Kb 125Kb gw2.fortd.ru => blackhole.fortd.ru 0b 0b 113b gw2.fortd.ru => 192.168.5.85 0b 0b 58b 192.168.1.255 => 192.168.1.203 0b 0b 0b 192.168.1.255 => 192.168.1.9 0b 0b 0b 255.255.255.255 => 169.254.2.2 0b 0b 0b TX: cumm: 16.7MB peak: 253Kb rates: 245Kb 250Kb 250Kb RX: 953KB 13.1Kb 5.55Kb 5.91Kb 6.92Kb TOTAL: 17.6MB 263Kb 251Kb 256Kb 257Kb Наконец-то канал поделился как хотелось. Перенос FreeBSD на Vmware ESXiЗадача. Перенести существующий аппаратный сервер с FreeBSD 8.2 архитектура i386 и файловая система ufs в виртуальную среду VMware ESXEi 5.0.0 1. В виртуальной машине создаем диски нужного размера не меньше имеющихся с помощью инсталяционного iso образа FreeBSD, затем с этого же iso загружаемся в режиме Live. Прописываем все необходимые настройки для сетевых интерфейсов после этого проверяем доступность по сети реального сервера, если все Ok запускаем nfs 2. Подготовим аппаратный сервер к переносу для этого запустим службу nfs. Запускать рекомендую именно в этой последовательности. При запуске nfsd запросит файл /etc/exports в этом варианте он выглядел так(файловая система исторически содержала только 2 раздела / и /var ): Если все все сделано верно, то команда mount покажет параметр «NFS exported» для раздела: 3. Возвращаемся к нашей виртуальной машине и создадим папки для монтирования локальных дисков: и подмонтируем диски: После этого разберемся с дисками физического сервера и создадим папки: /var/nfs/root, /var/nfs/var к которым монтируем расшаренные разделы физического сервера: Теперь сервера готовы к переносу. 4. Перед переносом данных на физическом сервере необходимо остановить все службы, чтобы перенесенные данные были актуальны. Для переноса используем вот такой набор команд который запустим в виртуальной машине Вот и все сервер перенесен в виртуальную машину. Понятно, что время миграции зависит от размера используемого пространства (в данном случае оба сервера были подключены Гигабитными интерфейсами и миграция 450 Гигабайт заняла несколько часов). 5. Заключительный и важный этап необходимо обязательно размонтировать локальные диски и только после этого перегружать виртуальную машину. Замена ZFS дискаВ нормальном состоянии cписок дисков и разделов: После выхода из строя диска ada3, массив переходит в состояние DEGRADED Выключаем машину, вынимаем сбойный диск и заменяем его на новый. Теперь, если посмотреть список дисков и разделов, то чётко видно, что da0 чист: Проверяем статус пулов: Видим, что диск в состоянии UNAVAIL, массив raidz1-0 DEGRADED и пул zroot так же DEGRADED. Подготовка нового диска Теперь необходимо скопировать разметку с любого из рабочих дисков с помощью gpart, например с диска da1: И проверяем результат: Изменяем метки томов: Смотрим информацию по дискам: Заставляем систему перечитать диск: Смотрим, что у нас появились gptboot0 и zfs0: [root@zdata ]# ls /dev/gpt/ gptboot0 gptboot3 zfs0 zfs3 gptboot1 gptboot4 zfs1 zfs4 gptboot2 gptboot5 zfs2 zfs5 Замена диска в пуле Смотрим идентификатор выпавшего диска в пуле: [root@zdata status: One or more devices could not be opened. Sufficient replicas exist for action: Attach the missing device and online it using ‘zpool online’. errors: No known data errors Он у нас 10165075366045259399. Заменяем диск в ZFS командой zpool replace: [root@zdata If you boot from pool ‘zroot’, you may need to update boot code on newly attached disk ‘gpt/zfs0’. Assuming you use GPT partitioning and ‘da0’ is your new boot disk you may use the following command: Выполняем рекомендованную нам команду по установке загрузчика на диск: [root@zdata status: One or more devices is currently being resilvered. The pool will action: Wait for the resilver to complete. errors: No known data errors По окночанию пересборки эта же команда zpool status, покажет что всё хорошо, все диски и дисковые пулы ONLINE: [root@zdata errors: No known data errors Увеличение UFS-разделаУвеличиваем размер HDD на виртуалке и ребутимся Видим что свободное место увеличилось. Первый шаг успешный. Так как делаем всё на примонтированной системе, то выполним команду подавления обильного вывода На момент работ по расширению раздела отключаем своп. Проверим Отключаем и снова проверяем Увеличиваем размер нашего раздела. Он имеет номер 1 После этого перегруз в Single User Mode и выполняем После включения на рабочей системе получаем
|