Привет всем!
Начал потихоньку "мучать" систему виртуализации KVM. И уперся рогом в небольшую проблему. А именно: разработчик KVM подключил по зависимостям к libvirt пакеты от glusterfs. Зачем они нужны libvirt'у не знаю. Но вот то, что приезжает по этой зависимости из штатного репозитория - не устраивает меня ни разу. Так как эксплуатирую glusterfs версии 3.2.5 (компилируется на месте из исходников), а из репов едет гораздо более древняя версия. И, естественно, имеет все шансы покорежить рабочие настройки.
Решение вижу такое: если я не могу отказаться от этой зависимости, то надо сделать локальный репозиторий для glusterfs, куда и складывать более новые версии glusterfs в rpm-формате. Пусть зависимость оттуда тащит то, что мне нужно. Итак вопрос: есть каталог с официальными исходниками, их надо перегнать в rpm. Наведите меня на внятное руководство, как из этих исходников сделать rpm.
Я этим никогда не занимался. Или брал готовые rpm или компилировал официальные исходники.
Создание rpm из исходников
Возьми srpm с дистрибутивным glusterfs, откорректируй его spec до новой версии, собери новый пакетик.
http://wiki.russianfedora.ru/index.php?title=Как_пересобрать_RPM-пакет
Кстати в Федоре версия 3.2.7 уже.
Ну и рассказывай что за дистрибутив у тебя, может кто-то уже всё сделал до тебя.
опять федора14?
гластерфс привязан к либвирту в последних версиях, как заготовка для работы с oVirt и UFO.
Ну и рассказывай что за дистрибутив у тебя, может кто-то уже всё сделал до тебя.
У меня три дистрибутива, 12, 13 и 14. Есть даже и 15, но на нём я не планирую ничего виртуализировать. То шлюз ремутной площадки. И везде есть эта привязка, причем к разным glusterfs'ам, разным пакетам.
Менять ось на сервере - ну нафиг такое счастье... Виртуализация будет стоять (пока) на RFR-13. Запасной узел - RFR-14. Посему и приходится изобретать костыль-обманку. Чтобы та зависимость в Fedora не снесла установленный более новый glusterfs.
Кстати, в CentOS такой зависимости нет. И если нужно иметь там glusterfs, то изволь его поставить самостоятельно. А если сейчас не нужно, то зачем огород с ним городить и засорять систему? И это - правильно...
Ну что ж, ты сам выбрал мучения с неподдерживаемыми версиями дистрибутива.
Как я и сказал, тебе надо лишь удалить/отредактировать эти строки в спеке libvirt
# For glusterfs
%if 0%{?fedora} >= 11
Requires: glusterfs-client >= 2.0.1
%endifИ пересобрать пакет, как я указал выше.
Думаю это будет проще, чем пересобирать пакет с новой glusterfs, хотя можно оба варианта попробовать.
Менять ось на сервере - ну нафиг такое счастье... Виртуализация будет стоять (пока) на RFR-13. Запасной узел - RFR-14
мало того что на федоре, так еще и на устаревшей... даунтайм у вас там бесплатный, или ВМки не продакшн?
Думаю это будет проще, чем пересобирать пакет с новой glusterfs, хотя можно оба варианта попробовать.
Думаю, что это будет проще. Так как поиграл немного с построением glusterfs*.rpm. Гластерные спеки (3.2.5 и 3.3.0) строят совсем даже разные rpm (по набору файлов, по разному именуются). И, что самое печальное, среди этого разнообразия нет ни одного разу требуемого libvirt'ом glusterfs-client.
соответственно yum install libvirt печально сообщает, что:
Ошибка: Пакет: libvirt-0.8.8-7.fc15.i686 (updates)
Необходимо: glusterfs-client >= 2.0.1
Доступно: glusterfs-fuse-3.1.2-4.fc15.i686 (fedora)
glusterfs-client = 3.1.2-4.fc15
Установлено: glusterfs-fuse-3.2.5-1.fc15.R.i686 (@/glusterfs-fuse-3.2.5-1.fc15.R.i686)
Так что, придется взять libvirt.src последней версии, заблокировать в нем зависимость от гластера и пересобрать. Хорошо, что обновления на мои федоры закончились. Иначе... Следующее обновление libvirt'а снесло бы работающую систему, если не заблокировать обновления libvirt'а. Одним словом - нехорошая это подвязка в зависимостях.
соответственно yum install libvirt печально сообщает
--ignore-missing не помогает?