Пару лет назад по работе столкнулся с чудом инженерной мысли — сетевым балансировщиком. Сам класс LB для меня тогда был незнаком поэтому я с рвением приступил к изучению. В то время я отвечал за веб-сервера, так что работать с балансировщиком приходилось со стороны клиента, а не администратора, но любопытство все же взяло свое.

На тот момент мы пользовались BigIP 10.5 с модулем LTM (Local Traffic Manager). Компания f5 предоставляет пробную версию LTM Virtual Edition на 90 дней, которую впоследствии можно ре-активировать новым триальным ключом. Вот тут можно скачать образ и запросить ключи.

Можно взять 5 ключей сразу и использовать их по мере истечения. Сразу отмечу, что f5 официально поддерживает только VMWare, и еще где-то слышал про Hyper-V. Денег тратить на гипервизор мне не хотелось, домашний комп работает под макосью, поэтому оставался только VirtualBox. Без удивления обнаружил, что образ запускается, но зависает почти в самом начале.

Зависает загрузка на сообщении GRUB Loading stage2. Пофиксить это можно добавив к виртуальной машине COM-порт. После этого образ нормально загружается до логина. Имя пользователя root, пароль default. После этого можно запускать config для установки сетевых настроек, но вместо этого вывалится ошибка:

Cannot connect to mcpd
Cannot connect to mcpd. Your preferences and aliases will not be available until it comes bakup.
The connection to mcpd has been lost, try again.
Error: Unable to examine the state of MCP. Exiting.

Бессмысленно пробовать снова, как рекомендует сообщение сверху — ничего не выйдет. Кроме того постоянно появляется вот такое сообщение:

localhost emerg logger: Re-starting chmand

Для начала следует отключить эту флудящую ошибку, поскольку работать она спокойно не даст. Отключить сервис cmand можно командой:

bigstart stop chmand

После этого необходимо исправить файл /bin/qp. Я использовал nano, он оказался доступен в этом образе. Исправить надо только начало файла, после строки «if [ -f /bin/halid ]; then» никаких изменений нет.

#!/bin/sh
#
# Script to query and return platform type (D44, D50, etc.)
#
# It uses the info saved in /PLATFORM if available; otherwise it
# simply calls halid & returns the appropriate field (writing /PLATFORM as well)!
if [ -f /PLATFORM ]; then
    grep platform= /PLATFORM | sed -e 's/platform=//'
    exit 0
fi
if [ -f /bin/halid ]; then

Затем следует исправить файл /tmp/platform_info, параметр Info:base_mac менять не надо.

Info:system_id=Z99
Info:system_family=0x80000000
Info:system_type=0xb
Info:system_if=Z99
Info:host_id=Z99
Info:base_mac=<не менять>
Info:mac_offset=0

И наконец надо исправить файл /PLATFORM:

platform=Z99
family=0x80000000
host=Z99

Все! Можно ребутить машину и смело идти в конфиг. Описывать процесс настройки и первого запуска BigIP я не буду.

По крайней мере не в этой статье. Есть хорошие мануалы от производителя и любительские видео на Ютубе на эту тему.

Удачи.

Комментарии (2)


  1. zup
    29.05.2015 19:47

    Спасибо за статью! Сам хотел попробовать прикрутить bigip к virtualbox и vagrant.

    Лишь добавлю, что на сегодняшний день bigip имеет более ширмой список поддерживаемых гипервизоров — esxi, kvm, xenserver, community xen, hyper-v.

    И триалку можно получить не только на ltm, но и на остальные модули.


    1. Mr_well Автор
      30.05.2015 10:22

      Верно, но для Trial только VmWare официально поддерживаемые. Нетриальный образ запускается вообще без проблем на VB, и сказать по правде я оттуда и стащил рабочий кофиг, который потом использовал в триале.

      Можно получить триал на все модули, но для этого придется связываться с продажниками, а это не всегда приемлемо для людей, которые просто изучают продукт, а не пытаются внедрить. А еще они только на 30 дней.