From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <4D2E98A9.4040901@altlinux.com> Date: Thu, 13 Jan 2011 09:16:09 +0300 From: Anton Farygin Organization: ALT Linux User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.9pre) Gecko/20100817 Thunderbird/3.1.3pre MIME-Version: 1.0 To: shaba@altlinux.ru References: In-Reply-To: Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit Cc: Anton Protopopov , viy@altlinux.ru, oddity@altlinux.ru, Alexey Shabalin , kas@altlinux.org, rider@altlinux.ru, ALT Linux Team development discussions Subject: Re: [devel] =?koi8-r?b?cWVtdSDJINfTxS3X08Ut19PF?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jan 2011 06:14:33 -0000 Archived-At: List-Archive: List-Post: 12.01.2011 23:24, Alexey Shabalin пишет: > День добрый. > Посвятил несколько дней для разборок с нашими qemu, qemu-kvm, libvirt, > virt-manager и остальным. > На первый взгляд вроде ничего, но стоит капнуть поглубже - ужас-ужас :) > > Пробую добавить поддержку spice в qemu-kvm. Ок, всё собралось. А > дальше вылазит занятная ситуация: > - изображаю простого пользователя и использую libvirt (для запуска, > создания виртуалок) и GUI - virt-manager + virt-viewer > - qemu-kvm конечно можно поставить самостоятельно, но ещё хочется и > создавать виртуалки, а утилиты qemu-img в пакете qemu-kvm нет - типа > используйте от родного qemu. > - ставим qemu только ради qemu-img > - а теперь самое интересное - как ведёт себя libvirt. Когда говоришь > запустить виртуальную машину - он по чесному запускает через > /usr/bin/kvm или /usr/bin/qemu-kvm > А вот при создании/настройках виртуалки, libvirt'у надо понимать с > чем он имеет дело и какие возможности имеются. для этого он смотрит > вывод команды с ключём --help и парсит его. А вот команду с ключём > --help он запускает совсем не /usr/bin/kvm или /usr/bin/qemu-kvm (что > хотелось бы), а /usr/bin/qemu-system-x86_64. А этот файл принадлежит > старому qemu (не qemu-kvm). Как вы помните пакет qemu мы удалить не > можем - нужен qemu-img. А если бы и удалили, то без > /usr/bin/qemu-system-x86_64 libvirt вообще свихнётся. > В результате получаем, что как бы мы ни модифицировали qemu-kvm, > каких бы фишек не добавили, libvirt нам не даст с ними работать - он > видит фишки от старого qemu. > > Конечно бага в libvirt, но мне кажется разработчики libvirt не > подозревают, что на машине пользователя будут/могут одновременно > установлены qemu и qemu-kvm. > > В общем посмотрел я на всё это и взялся за напильник. > Я бы предпочел иметь в репо единственную версию qemu (qemu или > qemu-kvm - пока не важно - но единую) - так было бы всем легче. Тем > более что сейчас их апстримы постоянно мержатся между собой. Но не > давно на меня ругались в багзиле, что бы я отстал от всех, разные это > проекты и всё тут. Хорошо пусть будут оба. > Выходов несколько - собирать всё нужное из проектов (и qemu-img тоже) > и раставить конфликты, либо не делать конфликты используя алтернативы. > Я выбрал альтернативы. > На ваш суд предлагается тестовая сборка всего барахла. > Основные изменения: > - везде включена поддержка spice. погонял денёк - работает. Правда на > карте vga, с qxl пока не получилось. > - для работы spice все проекты собраны из снапшотов. > - некоторые git-репо(virt-manager, virt-viewer,python-virtinst) > переделаны(импорт из апстримного mercurial) - не обижайтесь, если не > устраивает то верну обратно. Вы только скажите :) > - в qemu и qemu-kvm добавлены алтернативы для qemu-img, qemu-io, > qemu-system-x86_64, qemu-nbd > - в них же выделены подпакеты img (хотя можно этого и не делать) > - для тестирования(ещё надо смотреть), в qemu-kvm используются ромы из > внешних пакетов vgabios, seabios, gpxe-roms-qemu > для qemu пока этого не делал. > - если установлена libcgroup и запущены сервисы, libvirt начинает > использовать cgroup. > - в libvirt включены многие опции. > - разные мелкие фиксы > > Заинтересованных прошу посмотреть, высказать мнение/рекомендации. task #36894 > Ну и в конечном итоге всё это хочется видеть в сизифе. > Так что давайте договариваться об acl, NMU, approve и т.п. :) > > PS: у qemu-kvm в acl @everybody, но без одобрения rider@ обновлять не хочется. Я не возражаю, но надо бы протестировать обновление. Плюс - внешние ромы как-то стрёмно - может быть, всё-таки, останемся на внутренних ? ты не сравнивал разницу между ними ? > PPS: конечно там всё не идеально и ещё есть чего сделать. например: > возможно "синхронизировать" спеки для qemu и qemu-kvm, убрать > qemu-common - я не понял почему так назвали пакет с документацией и > почему он обязательный а не опциональный. Надо бы сделать общий > control и init-скрипт для модуля kvm, т.к. qemu тоже умеет kvm. Ну и > так далее. ok