Содержание
В одной из компаний сложилась вот такая ситуация. Админ задал вопрос — “А возможна ли установка FreeBSD 11.2 на гипервизор ESXi 5.5U2? Или придется обновить ESXi до 6.5 или даже до 6.7?” На FreeBSD у него работает почтовый сервер CommunigatePro. Зачем? Исторически. Но вот с VMware он … «все еще на Вы».
Вот таблица с версиями FreeBSD и сроками окончания поддержки версий. Как видим, ему хочется установить 11.2 и, на некоторое время, забыть о том, что срок поддержки может закончится.
Версия | Дата выхода | Да окончания поддержки |
10.0 | 20 января 2014 | 28 февраля 2015 |
10.1 | 14 ноября 2014 | 31 декабря 2016 |
10.2 | 13 августа 2015 | 31 декабря 2016 |
10.3 | 4 апреля 2016 | 30 апреля 2018 |
10.4 | 3 октября 2017 | 31 октября 2018 |
11.0 | 10 октября 2016 | 31 октября 2017 |
11.1 | 26 июля 2017 | |
11.2 | 27 июня 2018 |
- Можно или нет установить FreeBSD 11 на ESXi 5.5U2?
- Заработает/не заработает?
- Заработают ли VMware Tools?
Полазил вот здесь, ясности не прибавило.
Если ввести вот такие параметры, то выйдет «странная картинка». FreeBSD 11+ не поддерживается никаким из существующих гипервизоров. Наверное, данные в этой странице давно не обновлялись.
Можете поиграться со странчкой.
Я, например, увидел, что FreeBSD 11 не поддерживается гипервизорами ESXi :). Уже смешно.
Можно посмотреть что говорит на этот счет VMware Workstation. Пробуем совместимость с 5.5
Ой! Оказывается создать ВМ с такой гостевой ОС возможно, даже для ESXi 5.5.
Оставим же «на совести» VMware их таблицу и их маркетинговые ходы. И пойдем дальше.
Нет, наверное, можно поднять гипервизор до версии 6.5 или, лучше, 6.7 и все, по идее, заработает гарантированно, но тут возникают два вопроса. Финансовый и вопрос целесообразности.
Остановлюсь на втором вопросе. Вот таблица сравнения версий ESXi и их возможностей
В данной компании всего несколько хостов и расширения до «1 000 хостов и 10 000 ВМ» не планируется никогда. Не говоря уже о том, что ESXi 5.5 уже куплен и никто, без веских оснований, платить за ESXI 6.5+ не будет. А оснований таких и нет, как выяснится ниже.
Задача простая. Есть рабочие хосты с ESXi 5.5U2 и этим надо пользоваться. Но нужно чтобы работала не только ВМ, но и VMware Tools.
Что, навело на мысль, что можно попробовать это осуществить (Помимо VMware WS)?
Вот эти команды из инструкции по установке VMware Tools на виртуальную машинку с FreeBSD. Один из этапов. Ссылка на инструкцию будет ниже.
Если видим сообщение «Please re-run this program after installing the compat6x-amd64 package.», инсталлируем соответствующий пакет:
cd /usr/ports/misc/compat6x/
make install clean
rehash
То есть надо поставить совместимость с FreeBSD версии 6 или выше. Исходя из этого, сделан вывод, что, видимо, никаких изменений в VMware Tools (для FreeBSD) не делалось и они, скорее всего, заработают.
Не буду описывать все «танцы с бубном», но задача решена.
ДВА СПОСОБА.
Один длинный, второй покороче. Но без первого, я бы второй не стал даже пробовать.
С сайта FreeBSD был скачан готовый FreeBSD-11.2-RELEASE-amd64.vmdk файл. Для ускорения процесса.
Метод 1. Используем VMware Workstation 14
- Создаем ВМ, совместимую с гипервизором 5.5U2.
- В качестве гостевой ОС выбираем FreeBSD 11 64-bit.
- Остальные параметры на ваше усмотрение. Надо указать в качестве диска «Использовать существующий» и там подставить тот .vmdk, который был скачан ранее.
- Создали. Запускаем. Все работает.
- Устанавливаем VMWare Tools. Например, так как это описано здесь — http://moonlightsoft.blogspot.com/2016/04/freebsd-vmware-tools.html
- В vSphere Client кликните правой кнопкой мыши на виртуальной машине с ОС FreeBSD и выберите: Guest-> Install/Upgrade VMware Tools.
- Далее переходим в каталог «/dev» и выполняем «ls». Среди списка определяем CD-ROM, скорее всего это будет «cd0».
- Монтируем привод в директорию «/mnt»: mount -t cd9660 -o -e /dev/cd0 /mnt
- Проверим, что на диске есть файл «vmware-freebsd-tools.tar.gz»: ls /mnt
- Создадим папку для установочных файлов: mkdir /usr/home/vmtools
- Распакуем туда архив: tar xzf /mnt/vmware-freebsd-tools.tar.gz -C /usr/home/vmtools/
- Установочный диск больше не нужен, поэтому отмонтируем его: umount /mnt
- Переходим в каталог с инсталлятором VMware Tools: cd /usr/home/vmtools/vmware-tools-distrib/
- Затем начинаем установку командой: perl ./vmware-install.real.pl Запустится мастер и задаст ряд вопросов, на которые можно отвечать по умолчанию, просто нажимая «Enter».
При отсутствии в системе интерпретатора языка Perl («perl: Command not found.») доустанавливаем его:
cd /usr/ports/lang/perl5.20 (или другую версию)
make install clean
rehash
perl -v (проверяем корректность инсталляции)
После установки запускаем конфигуратор: perl /usr/local/bin/vmware-config-tools.pl .
Если видим сообщение «Please re-run this program after installing the compat6x-amd64 package.», инсталлируем соответствующий пакет:
cd /usr/ports/misc/compat6x/
make install clean
rehash
Затем повторно выполняем: perl /usr/local/bin/vmware-config-tools.pl и проходим мастер конфигурации.
Теперь надо перенести ВМ на ESXi хост. Делаем это стандартным способом через .ovf template. Не стоит делать через .ova, не сработает, чуть ниже будет видно почему.
Я использовал вот такую команду:
"C:Program FilesVMwareVMware OVF Toolovftool.exe" —shaAlgorithm=SHA1 FreeBSD-11x64_256.ovf FreeBSD-11×64.ovf
VMware ovftool 4.3.0 (build-7948156) можно скачать бесплатно с сайта VMware — https://www.vmware.com/support/developer/ovf/
- Запустили импорт .ovf на ESXi хост. И … Не получилось. Тут небольшая засада. Вот такая: “The specified operating system identifier » (id: 78) is not supported on the selected host. It will be mapped to the following OS identifier: ‘Other (32-bit).”
Я нажал “No” и пошел разбираться. Вот эта строка.
Как я это узнал? Сделал самым простым способом. Создал «пустышку» с FreeBSD на ESXi 5.5U2 и экспортировал в ovf. А потом «подсмотрел» правильный формат строки.
Хотите в этом детально разобраться, милости просим.
Осталось, казалось бы, мелочь – заменить строку на правильную и все станет хорошо. Но нет. Заменяем. И пробуем импортировать. Не работает. Небольшие «грабли»:»File FreeBSD-11×64.ovf fials integrity check and might have been corrupted during transfer«.
Строку-то я в .ovf поменял, а вот поправить файл .mf забыл.
Оригинальный содержал строки
SHA1(FreeBSD-11×64.ovf)= 8f2519844dde82522bc7f6c96b555c842425d5ed
SHA1(FreeBSD-11×64-disk1.vmdk)= cb1a6f572f50ae631f28c1054caa86fa7067cf19
Но я же поменял одну строку. Следовательно, надо пересчитать хэш SHA1 и прописать правильный
Я использовал онлайн SHA1 Hash Generator — https://passwordsgenerator.net/sha1-hash-generator/ .
Получается, вот так (в моем случае).
SHA1(FreeBSD-11×64.ovf)= 9090e377b3cf2eb119a1162ec1aa5be141d9fe59
SHA1(FreeBSD-11×64-disk1.vmdk)= cb1a6f572f50ae631f28c1054caa86fa7067cf19
Редактируем .mf файл. Снова импортируем. И все заработало.
Дальше процесс показывать не буду, вы все в курсе как это делается.
Что в результате?
- Все хорошо. Покажу на другом скриншоте.
- И вот как ESXi видит эту ВМ:
- Проверяем управление «электропитанием» — все ОК, все пункты меню открыты
Ура! Заработало (с) Кот Матроскин.
Отступление. Из изложенного выше, наверно, понятно почему я сказал не делать экспорт/импорт через .ova файл. .OVA это контейнер, в котором все три файла .mf .ovf и .vmdk собраны в единый архив. И внесение исправлений в него, описанным способом, попросту невозможно.
Метод 2. Используем сразу ESXi 5.5U2
Ну раз первый способ удался, то почему бы не попробовать сразу на гипервизоре создать FreeBSD 11?
Сказано -сделано. Используем все тот же (надеюсь вы его скопировали в отдельное место) образ — FreeBSD-11.2-RELEASE-amd64.vmdk
- Создаем ВМ. Тут все стандартно и просто. Ну разве что вот здесь не забыть указать правильную ОС. Да, варианта выбора “FreeBSD 11 64-bit” нет. Так что берем ближайший похожий “FreeBSD 64-bit”.
- Устанавливаем VMware Tools по инструкции выше.
- Убеждаемся, что все работает.
- Проверяем управление «электропитанием» — все ОК, все пункты меню открыты.
БОНУС: Установка сторонних VM Tools.
Не возбраняется, более того, например ВМ с CentOS предложила это сделать. А почему бы и нет. Если даже сами VMware для ВМ с vCenter используют не свои VMwrae Tools, а стороннего производителя?
И, если вы до конца дочитали инструкцию по установке VMTools по ссылке выше, то наверняка заметили вот этот, последний, абзац.
Установка с помощью пакетного инсталлятора:
Процесс установки во многом похож на установку VMware Tools на Linux.
Открываем консоль управления виртуальными машинами. Находим ту, на которую будем устанавливать VMware Tools. Кликаем по ней правой кнопкой мыши — Guest — Install/Upgrade VMware Tools:
Подтверждаем, нажатием OK — будет выполнено монтирование установочного образа утилит к виртуальной машине.
Теперь подключается к FreeBSD по SSH и монтируем образ к гостевой системе следующей командой:
mount_cd9660 /dev/cd0 /mnt
Распаковываем архив с установочными скриптами во временную директорию:
tar -zxvf /mnt/vmware-freebsd-tools.tar.gz -C /tmp/
CD-ROM нам больше не нужен — отмонтируем его:
Устанавливаем пакеты, необходимые для установки VMware-утилит:
(Для FreeBSD 10 и выше):
pkg install compat6x-amd64 perl5
(Для FreeBSD 9 и ниже):
cd /usr/ports/misc/compat6x && make install clean
cd /usr/ports/lang/perl5.20 && make install clean
* в моем примере устанавливается версия perl5.20, которая может отличаться на других системах.
Запускаем скрипт установки VMware Tools:
На все остальные вопросы отвечаем по умолчанию, нажимая Enter.
Версию установленного ПО можно посмотреть следующей командой:
Теперь открываем консоль управления VMware — устанавливаем курсор на виртуальную машину с установленными тулзами и переходим на вкладку Summary. В графе VMware Tools мы должны увидеть зеленую галочку и значение Running:
Возможные проблемы
Command not found
После запуска скрипта установки, получаем ошибку vmware-install.pl: Command not found.
Проблема в том, что в скрипте используется путь к perl — /usr/bin/perl. Во FreeBSD этот путь другой — /usr/local/bin/perl.
Самое простое решение — создать симлинк следующей командой:
среда, 6 апреля 2016 г.
FreeBSD: Установка VMware Tools
Если ваша FreeBSD является гостевой ОС на VMware vSphere, для удобства работы с ней и оптимизации быстродействия необходимо установить компонент VMware Tools. Делается это следующим образом:
1. В vSphere Client кликните правой кнопкой мыши на виртуальной машине с ОС FreeBSD и выберите: "Guest-> Install/Upgrade VMware Tools".
2. Далее переходим в каталог "/dev" и выполняем "ls". Среди списка определяем CD-ROM, скорее всего это будет "cd0".
3. Монтируем привод в директорию "/mnt": "mount -t cd9660 -o -e /dev/cd0 /mnt".
4. Проверим, что на диске есть файл "vmware-freebsd-tools.tar.gz": "ls /mnt".
5. Создадим папку для установочных файлов: "mkdir /usr/home/vmtools".
6. Распакуем туда архив: "tar xzf /mnt/vmware-freebsd-tools.tar.gz -C /usr/home/vmtools/".
7. Установочный диск больше не нужен, поэтому отмонтируем его: "umount /mnt".
8. Переходим в каталог с инсталлятором VMware Tools: "cd /usr/home/vmtools/vmware-tools-distrib/".
9. Затем начинаем установку командой: "perl ./vmware-install.real.pl". Запустится мастер и задаст ряд вопросов, на которые можно отвечать по умолчанию, просто нажимая "Enter".
При отсутствии в системе интерпретатора языка Perl ("perl: Command not found.") доустанавливаем его:
cd /usr/ports/lang/perl5.20 (или другую версию)
make install clean
rehash
perl -v (проверяем корректность инсталляции)
10. После установки запускаем конфигуратор: "perl /usr/local/bin/vmware-config-tools.pl".
Если видим сообщение "Please re-run this program after installing the compat6x-amd64 package.", инсталлируем соответствующий пакет:
cd /usr/ports/misc/compat6x/
make install clean
rehash
Затем повторно выполняем: "perl /usr/local/bin/vmware-config-tools.pl" и проходим мастер конфигурации.
11. По завершению работы мастера удаляем директорию с распакованным дистрибутивом: "rm -r /usr/home/vmtools/" и отключаем диск с VMware Tools в vSphere Client: "Guest-> End VMware Tools Install".
На этом установка VMware Tools завершена.
Аналогом данной утилиты является Open VM Tools — разработка с открытым исходным кодом. Для установки перейдите в порты:
cd /usr/ports/emulators/open-vm-tools
make install clean
rehash
Перегрузитесь и установка будет закончена.
Установка с помощью пакетного инсталлятора:
pkg install open-vm-tools
Перезагрузка.