<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Установка и настройка системы виртуализации. Мануал.]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=27073&amp;type=atom" />
	<updated>2013-04-22T09:07:42Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=27073</id>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=341743#p341743" />
			<content type="html"><![CDATA[<p>Нормально все написано, любой материал (опыт) по этой теме полезен.</p>]]></content>
			<author>
				<name><![CDATA[AlfaStriker]]></name>
				<uri>https://linuxforum.ru/profile.php?id=15778</uri>
			</author>
			<updated>2013-04-22T09:07:42Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=341743#p341743</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=341734#p341734" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Vadimsky⇓ пишет:</cite><blockquote><p>На самом деле статья расчитана на тех, кто знает что делает.</p></blockquote></div><div class="quotebox"><cite>Vadimsky⇓ пишет:</cite><blockquote><p>Тем, кто умеет ставить систему виртуализации, и считает что написано много и не поделу, просьба не высказываться.</p></blockquote></div><p> <img src="https://linuxforum.ru/img/smilies/bf.gif" alt="bf" /></p>]]></content>
			<author>
				<name><![CDATA[dyasny]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23772</uri>
			</author>
			<updated>2013-04-22T08:11:15Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=341734#p341734</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=341733#p341733" />
			<content type="html"><![CDATA[<p>Внесены исправления.<br />Тем, кто умеет ставить систему виртуализации, и считает что написано много и не поделу, просьба не высказываться.<br />Я поделился опытом с теми кому интересно.<br />Спасибо.</p>]]></content>
			<author>
				<name><![CDATA[Vadimsky]]></name>
				<uri>https://linuxforum.ru/profile.php?id=411</uri>
			</author>
			<updated>2013-04-22T07:57:54Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=341733#p341733</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=335067#p335067" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Vadimsky⇓ пишет:</cite><blockquote><p>Что касается скорости работы, то то при фаормате файла RAW гостевая система Windows Server 2008R2 загружается 7 секунд.<br />При формате файла qcow2 - всего 5 секунд.да и копирование внутри виртуальной машины происходит ИМХО быстрее.</p></blockquote></div><p>кэш включен что ли? это опасно, и долго не работает. raw быстрее чем qcow2 при равных условиях</p>]]></content>
			<author>
				<name><![CDATA[dyasny]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23772</uri>
			</author>
			<updated>2013-03-19T08:00:12Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=335067#p335067</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=335062#p335062" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>dyasny пишет:</cite><blockquote><div class="quotebox"><cite>DarkDigger⇓ пишет:</cite><blockquote><p>Если честно, то я не въехал чем qcow2 лучше raw</p></blockquote></div><p>вообще, в мануале просто писать &quot;бери Х оно лучше&quot; без обоснований - не очень профессионально.</p></blockquote></div><p>На самом деле статья расчитана на тех, кто знает что делает. В данной статье я вообще не приводил ни одно докозательства, она изначально представлялась как мой личный опыт.</p><p>Что касается скорости работы, то то при фаормате файла RAW гостевая система Windows Server 2008R2 загружается 7 секунд.<br />При формате файла qcow2 - всего 5 секунд.да и копирование внутри виртуальной машины происходит ИМХО быстрее.</p>]]></content>
			<author>
				<name><![CDATA[Vadimsky]]></name>
				<uri>https://linuxforum.ru/profile.php?id=411</uri>
			</author>
			<updated>2013-03-19T07:20:32Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=335062#p335062</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=331881#p331881" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>DarkDigger⇓ пишет:</cite><blockquote><p>А снапшоты, это правильно, только я ни разу не делал)))</p></blockquote></div><p>совсем не правильно, &quot;плоский&quot; имидж намного производительнее цепочки из снепшотов, и чем длиннее цепочка, тем хуже. О лишней трате места я вообще молчу.</p><p>снепшоты нужны для снятия бекапа или копии имиджа, а потом их надо быстро убирать</p>]]></content>
			<author>
				<name><![CDATA[dyasny]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23772</uri>
			</author>
			<updated>2013-03-06T16:28:46Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=331881#p331881</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=331880#p331880" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>DarkDigger⇓ пишет:</cite><blockquote><p>Пишет:<br />Vadimsky⇓ пишет:<br />формат QCOW2, что сильно повысит операции файлового ввода-вывода внутри виртуального диска</p></blockquote></div><p>подозреваю что автор ошибся, и тут имел ввиду virtio_blk (желательно с включенным data-plane)</p>]]></content>
			<author>
				<name><![CDATA[dyasny]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23772</uri>
			</author>
			<updated>2013-03-06T16:27:37Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=331880#p331880</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=331822#p331822" />
			<content type="html"><![CDATA[<p>Да не знаю,<br /></p><div class="quotebox"><cite>dyasny⇓ пишет:</cite><blockquote><p>С другой стороны, RAW производительнее, потому что это простой образ без дополнительной метадаты</p></blockquote></div><p>Пишет:<br /></p><div class="quotebox"><cite>Vadimsky⇓ пишет:</cite><blockquote><p>формат QCOW2, что сильно повысит операции файлового ввода-вывода внутри виртуального диска</p></blockquote></div><p>А снапшоты, это правильно, только я ни разу не делал)))</p>]]></content>
			<author>
				<name><![CDATA[DarkDigger]]></name>
				<uri>https://linuxforum.ru/profile.php?id=20256</uri>
			</author>
			<updated>2013-03-06T11:48:00Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=331822#p331822</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=331821#p331821" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>DarkDigger⇓ пишет:</cite><blockquote><p>Если честно, то я не въехал чем qcow2 лучше raw</p></blockquote></div><p>на самом деле он лучше тем что умеет больше (снепшоты например). С другой стороны, RAW производительнее, потому что это простой образ без дополнительной метадаты</p><p>вообще, в мануале просто писать &quot;бери Х оно лучше&quot; без обоснований - не очень профессионально.</p>]]></content>
			<author>
				<name><![CDATA[dyasny]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23772</uri>
			</author>
			<updated>2013-03-06T11:40:26Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=331821#p331821</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=331818#p331818" />
			<content type="html"><![CDATA[<p>Если честно, то я не въехал чем qcow2 лучше raw...Разницу при копировании файлов я не заметил (сравнивал, но видимо сам ламер). Лучше добавь на счёт того, что в windows можно поставить virtio, вот точно повысится производительность.</p>]]></content>
			<author>
				<name><![CDATA[DarkDigger]]></name>
				<uri>https://linuxforum.ru/profile.php?id=20256</uri>
			</author>
			<updated>2013-03-06T11:31:53Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=331818#p331818</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=331778#p331778" />
			<content type="html"><![CDATA[<p>Vadimsky, может добавишь это в вики <a href="http://wiki.russianfedora.ru">http://wiki.russianfedora.ru</a><br />чтобы не потерялось.</p>]]></content>
			<author>
				<name><![CDATA[Vascom]]></name>
				<uri>https://linuxforum.ru/profile.php?id=5339</uri>
			</author>
			<updated>2013-03-06T05:03:52Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=331778#p331778</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=331697#p331697" />
			<content type="html"><![CDATA[<p>Сколько текста... а что конкретно было нужно сделать? потому что поднять хост под KVM очень просто и быстро, и имхо не должно занимать столько шагов</p>]]></content>
			<author>
				<name><![CDATA[dyasny]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23772</uri>
			</author>
			<updated>2013-03-05T16:44:55Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=331697#p331697</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Установка и настройка системы виртуализации. Мануал.]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=331635#p331635" />
			<content type="html"><![CDATA[<p><strong>Установка и настройка системы виртуализации<br />на базе операционной системы CentOS 6.3 и гипервизора Qemu-KVM.</strong></p><p>Исходные данные:<br />Физический сервер Asus, 4 ядра, 16 Гб RAM, 1Тб HDD четыре штуки, собранные в RAID10, 4 гигабитных сетевых карты.</p><p>Требуемая площадка минимум для:</p><p>Windows Server 2008R2 Standart RUS полная установка — контроллер домена.<br />Windows Server 2008R2 Standart RUS Core — обновление системы КонсультантПлюс.<br />CentOS 6.4 х64 — антивирусный и кеширующий прокси-сервер, файл-сервер.<br />Windows 7(8)&nbsp; х64(х32) — тестовая машина.&lt;/li&gt;</p><p>В качестве гипервизора выбран Qemu-KVM.<br />Выбор гипервизоров проводился среди Xen Server, Qemu-KVM, Microsoft Hyper-V Server.<br />В двух словах, почему выбор пал именно на Qemu-KVM.<br />Проводились тестовые установки всех указанных систем. По результата сравнения вывод следующий:</p><p>Xen Server — ставиться очень просто и быстро. Идеальное решение если развернуть систему нужно было ещё вчера. На этом все его преимущества, по сравнениею с Qemu-KVM, и заканчиваются. Отмечу, что мнение высказанное далее, относительно Xen Server - моё ИМХО, выработанное на практике, под влиянием моих тараканов в моей голове, если у вас другое мнение, я его уважаю и оспаривать не собераюсь.<br />Недостатки Xen Server — он по своему усмотрению разбивает жёсткий диск, и указать ему на своё предпочтение в разделах, нет ни какой возможности (по крайней мере у меня не получилось).<br />Ладно, пусть так, ставим с разбивкой диска &quot;по-умолчанию&quot;. Следующая неприятность нас ждёт в демонах (в аббревиатуре Windows — сервисах запускаемых по-умолчанию) и в настройках фаервола. Говоря проще в сервисах запущено всё, что только возможно, а в фаерволе открыто всё, что можно открыть. Особо разработчики перемудрили с автовходом пользователя root, с основной консоли (то есть клавиатура и монитор присоединены непосредственно к серверу), а также автозапуском, после автовхода, текстовой утилиты предварительной настройки. Которой, естественно, можно также просто всё и расстроить.<br />С одной стороны - так проще запустить и поставить гостевую систему. Но, с точки зрения безопасности - её просто нет. Если у злоумышленника будет физический доступ к серверу (это отдельная тема), то считай ему и делать то ничего не придётся. Кстати, как найти и отключить этот автовход — сходу разберётся далеко не каждый. Ну и не могу не заметить, что в комплекте идёт утилита для контроля гостевых систем, и их установки в гипервизоре, чисто «виндовская». Для управления гостями из &quot;линукса&quot;, потребуется virt-manager.<br />И так, основываясь на всём выше перечисленном от Xen Server решено было отказаться.</p><p>Следующий кандидат - Microsoft Hyper-V Server ставится быстро, в несколько кликов мыши, и в результате мы имеем голый Windows Server Core, то есть окно командной строки и больше ничего. Для человека, всю сознательную жизнь проработавшего именно с интерфейсом командной строки, это не было пугающим или даже удивлением, а скорее, чем то приятным и родным. Трудность возникла в управлении гостевыми системами. Как оказалось, для этого опять же нужнаWindows причём полная установка, с графикой и со всеми наваротами. Но и это не самое страшное. Следуя своим убеждениям - не рискнул я в качестве фундамента использовать изделие от Microsoft, хотя был готов в любой момент к нему вернуться в случае неудачи с Qemu-KVM.</p><p>И так Qemu-KVM. Если первые два, были по сути самостоятельными системами, то этот гипервизор — всего лишь «рядовая» программа, которая может быть установленная в на любой компьютер, где есть установленный дистрибутив на базе Linux.<br />То есть мы можем собрать конструктор с нуля под себя, по своему усмотрению. Что и было сделано. Рассказывать об установке и настройке CentOS не стану - мануалов куча. Скажу лишь, что ставилась система в минимальной инсталляции, что бы не захламлять, к тому же других ролей на этой системе не будет.</p><p>И так, будем считать, что на нашем физическом сервере установлена система CentOS 6.4 в минимальной конфигурации.</p><p>Далее я буду приводить только те системные настройки, которые непосредственно касаются системы виртуализации.</p><p>Важным моментом, в правильности установки и последующей работы гостей, является правильная настройка сети на сервере. Для работы виртуальных машин, их выхода в сеть, и главное их доступности из локальной сети, нам потребуется настроить мост bridge0, между физической сетевой картой и всей системой в целом. И вот тут самое интересное. На моём физическом сервере имеется 4 гигабитных сетевых карты. Логично предположить, что каждой гостевой системе достанется по одной карточке.<br />На практике можно конечно именно так и поступить. Но это будет означать 4 занятых порта в свиче (а портов, как и памяти, лишних не бывает). Я повесил по две системы на первые две карточки., То есть у меня в системе есть bridge0 и bridge1, у каждой свой IP-адрес. Сам сервер доступен по любому из этих двух адресов. То есть если кто то из пользователей &quot;отвалится&quot; и позвонит с вопросом &quot;где сервер?&quot; (что то случилось с одной сетевой карточкой) всегда можно зайти на сервер удалённо по второму адресу и разобраться в сути проблемы. Сразу хочу оговориться, что систем может быть больше, даже не смотря на то, что физических ядер всего 4, а физической памяти 16 Гб, я запускал 4 виртуальные машины в каждой из которых по два ядра и по 6 Гб оперативки. Они работали одновременно вполне сностно, но о распределении вычеслительных мощностей между гостями в конце статьи.<br />И так, у нас на двух физических сетевых карточках &quot;висит&quot; по две гостевые системы (2х2).<br />Изначально я хотел объединить все четыре физических сетевых карточки в одну bond0, и уже с неё кидать мост bridge0, к которому подключались бы как гостевые системы, так и хостовая. При этом у хостовой системы IP-адрес был бы тот, который прописан в /etc/sysconfig/network-scripts/ifcfg-bridge0, а у гостевых - у каждой свой. Но при данной настройке постоянно отваливались SMB-шары как на виндовых, так и на линуксовых серверах, а так же RDP, а вот SSH работал исправно. В чём собака порылась - выяснить так и не удалось, поэтому остановлися на варианте 2х2.</p><p>Под катом скрипт1, который я использую для постустановочой настройки, что бы минимизировать однообразные действия.<br />Обязательно разберитесь в нём, прежде чем его запускать, особенно касается раздела отключения служб, хотя сам по себе скрипт - проще простого.<br /></p><div class="codebox"><pre><code>#!/bin/bash
#
INSTALL=/root
cp -f $INSTALL/sysctl.conf /etc/sysctl.conf
cp -f $INSTALL/modprobe.conf /etc/modprobe.d/modprobe.conf
cp -Rf $INSTALL/network-scripts/* /etc/sysconfig/network-scripts
rm -Rf /etc/yum.repos.d
cp -Rf $INSTALL/yum.repos.d /etc
service network restart
service sshd restart
#
#
yum clean all
rm -Rf /var/cache/yum/*
yum install -y yum-plugin-remove-with-leaves.noarch yum-plugin-priorities.noarch yum-plugin-fastestmirror.noarch htop mc webmin
#
#
echo &quot;export EDITOR=ee&quot; &gt;&gt; .bash_profile # Здесь я прописал консольный текстовый редактор ee из комплекта FreeBSD, вы можете прописать свой,
# тогда при вводе команды virsh edit именно он и будет вызываться.
#
chkconfig webmin --level 2345 off
chkconfig cgconfig --level 2345 off
chkconfig cgred --level 2345 off
chkconfig fcoe --level 2345 off
chkconfig iscsi --level 2345 off
chkconfig iscsid --level 2345 off
chkconfig lldpad --level 2345 off
chkconfig lvm2-monitor --level 2345 off
chkconfig multipathd --level 2345 off
chkconfig netconsole --level 2345 off
chkconfig netfs --level 2345 off
chkconfig nfs --level 2345 off
chkconfig nfslock --level 2345 off
chkconfig rdisc --level 2345 off
chkconfig restorecond --level 2345 off
chkconfig rpcbind --level 2345 off
chkconfig rpcgssd --level 2345 off
chkconfig rpcidmapd --level 2345 off
chkconfig rpcsvcgssd --level 2345 off
chkconfig rsyslog --level 2345 off
chkconfig haldaemon --level 2345 off
#
chkconfig ksm --level 345 on
chkconfig ksmtuned --level 345 on
chkconfig ip6tables --level 2345 on
chkconfig iptables --level 2345 on
chkconfig network --level 2345 on
#
gpasswd -d mail mail
#
userdel -r radvd
userdel -r nfsnobody
userdel -r rpcuser
userdel -r rpc
userdel -r mail
userdel -r game
userdel -r ftp
userdel -r floppy
userdel -r audio
userdel -r video
#
groupdel floppy
groupdel audio
groupdel video
groupdel mail
groupdel ftp
groupdel game
groupdel nfsnobody
#
#
yum -y install kvm libvirt libvirt-python python-virtinst # Cобственно установка гипервизора, естественно доступ в Интернет уже должен быть.
groupadd libvirt
#cp -f $INSTALL/libvirtd.conf /etc/libvirt/libvirtd.conf
#
service libvirtd start
virsh net-destroy default
virsh net-undefine default
#
cp -f $INSTALL/config /etc/selinux/config
shutdown -r now
exit</code></pre></div><p>Первая секция тупо копирует с перезаписью конфиги служб и сервисов по своим местам.<br />Все конфиги в конце статьи.<br />Вторая секция, устанавливает плагины к yum и утилиты htop, webmin и mc. Что это такое и зачем они нужны сказано уже не мало. Если вы всё ещё не знаете, что это, то скорее всего они вам и не понадобятся вовсе - поэтому удаляйте, но плагины yum лучше оставьте.<br />И так, следующая секция - отключение ненужных служб из автозапуска и удаление &quot;левых&quot; пользователей. По хорошему ненужное лучше вообще всё удалить, заменив в директиву --level 2345 off директивой -del, но делайте это только если вы точно знаете что делаете.</p><p>Обращаю ваше внимание:<br />ВНИМАТЕЛЬНО ПРОСМОТРИТЕ ОТКЛЮЧАЕМЫЕ СЛУЖБЫ!</p><p>Что бы не возникло потом вопросов типа &quot;я сделал по вашей инструкции и теперь у меня перестал работать почтовый сервер!&quot;<br />Следующим разделом идёт собственно установка самого гипервизора и его настройка.<br />Обратите внимание, что группа libvirt при установке на CentOS 6.3 Qemu-KVM, не создаётся автоматически. Если для установки Qemu-KVM в CentOS 6.3 вы решили не использовать мой скрипт, то не забудьте создать группу libvirt&nbsp; вручную, коммандой groupadd libvirt. При установке на CentOS 6.4 всё создаётся корректно. На других дистрибутивах не проверял.<br />Так же нужно удалить все виртуальные сетевые соединения, созданные при установке Qemu-KVM,<br />командами virsh net-destroy default и virsh net-undefine default<br />Ну и на напоследок отключение selinux и перезагрузка.<br />Если всё сделано правильно, то после перезагрузки мы получим полностью функциональную площадку для размещения гостевых систем, ни чем не уступающую Xen Server или Microsoft Hyper-V Server, а в чём то даже превосходящую их.<br />На этом настройка сервера закончена.</p><p>Для установки гостевых систем, входим на сервер по ssh, и запускаем скрипт2:<br /></p><div class="codebox"><pre><code>#!/bin/bash
#
qemu-img create -f qcow2 -o preallocation=&#039;metadata&#039; /home/virtual/Stronghold.qcow2 100G
#
virt-install --connect qemu:///system \
        --name Stronghold \
        --ram 6144 \
        --vcpus 2 \
        --cpuset 2,3 \
        --cdrom /home/ISO/centos_6.4_final.iso \
        --description Proxy \
        --os-type Linux \
        --network bridge=bridge0 \
        --disk &#039;/home/virtual/Stronghold.qcow2&#039;,device=&#039;disk&#039;,size=500,sparse=false,cache=&#039;writeback&#039;,bus=&#039;ide&#039; \
        --hvm \
        --accelerate \
        --graphics vnc,port=5900,keymap=ru \
        --virt-type kvm \
        --autostart</code></pre></div><p>Здесь:<br />Stronghold.qcow2 100G - файл диска, размером 100 гигабайт. Размер, наименование и расположение можно менять по своему вкусу, главное правильно прописать путь к нему.<br />--vcpus 2 - число процессоров в гостевой системе,<br />--cpuset 2,3 - привязка вирутальных процессоров к физическим,<br />--graphics vnc,port=5900,keymap=ru - куда выводится экран установки, можно выводить на текстовую консоль, при одновременном запуске нескольких гостевых систем, нужно использовать разные порты vnc, иначе будет вылетать с ошибкой. Остальное думаю понятно.</p><p>Можно также воспользоваться готовым шаблоном из приведённых, или сделать свой (особенно удобно при большом количестве гостевых установок).</p><p>Windows Server 1 ядро, 4 гига памяти Rapid.xml:<br /></p><div class="codebox"><pre><code>&lt;code lang=&quot;xml&quot;&gt;
&lt;domain type=&#039;kvm&#039;&gt;
  &lt;name&gt;Rapid&lt;/name&gt;
  &lt;uuid&gt;8c2fee85-f1ee-17eb-23ab-7b69c941bd0c&lt;/uuid&gt;
  &lt;description&gt;PDC&lt;/description&gt;
  &lt;memory unit=&#039;KiB&#039;&gt;4194304&lt;/memory&gt;
  &lt;currentMemory unit=&#039;KiB&#039;&gt;4194304&lt;/currentMemory&gt;
  &lt;vcpu placement=&#039;static&#039; cpuset=&#039;0&#039;&gt;1&lt;/vcpu&gt;
  &lt;os&gt;
    &lt;type arch=&#039;x86_64&#039; machine=&#039;rhel6.3.0&#039;&gt;hvm&lt;/type&gt;
    &lt;boot dev=&#039;hd&#039;/&gt;
  &lt;/os&gt;
  &lt;features&gt;
    &lt;acpi/&gt;
    &lt;apic/&gt;
    &lt;pae/&gt;
  &lt;/features&gt;
  &lt;cpu mode=&#039;custom&#039; match=&#039;exact&#039;&gt;
    &lt;model fallback=&#039;allow&#039;&gt;cpu64-rhel6&lt;/model&gt;
    &lt;vendor&gt;Intel&lt;/vendor&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;vme&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;tm2&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;est&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;monitor&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;osxsave&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;smx&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;ss&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;tsc-deadline&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;dtes64&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;ht&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;ds&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;pbe&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;tm&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;pdcm&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;vmx&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;ds_cpl&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;xtpr&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;acpi&#039;/&gt;
  &lt;/cpu&gt;
  &lt;clock offset=&#039;localtime&#039;&gt;
    &lt;timer name=&#039;rtc&#039; tickpolicy=&#039;catchup&#039;/&gt;
  &lt;/clock&gt;
  &lt;on_poweroff&gt;destroy&lt;/on_poweroff&gt;
  &lt;on_reboot&gt;restart&lt;/on_reboot&gt;
  &lt;on_crash&gt;restart&lt;/on_crash&gt;
  &lt;devices&gt;
    &lt;emulator&gt;/usr/libexec/qemu-kvm&lt;/emulator&gt;
    &lt;disk type=&#039;file&#039; device=&#039;disk&#039;&gt;
      &lt;driver name=&#039;qemu&#039; type=&#039;qcow2&#039; cache=&#039;writeback&#039;/&gt;
      &lt;source file=&#039;/home/virtual/Rapid.qcow2&#039;/&gt;
      &lt;target dev=&#039;hda&#039; bus=&#039;ide&#039;/&gt;
      &lt;address type=&#039;drive&#039; controller=&#039;0&#039; bus=&#039;0&#039; target=&#039;0&#039; unit=&#039;0&#039;/&gt;
    &lt;/disk&gt;
    &lt;disk type=&#039;file&#039; device=&#039;cdrom&#039;&gt;
      &lt;driver name=&#039;qemu&#039; type=&#039;raw&#039; cache=&#039;writeback&#039;/&gt;
      &lt;source file=&#039;/home/ISO/Win2008R2.iso&#039;/&gt;
      &lt;target dev=&#039;hdc&#039; bus=&#039;ide&#039;/&gt;
      &lt;readonly/&gt;
      &lt;address type=&#039;drive&#039; controller=&#039;0&#039; bus=&#039;1&#039; target=&#039;0&#039; unit=&#039;0&#039;/&gt;
    &lt;/disk&gt;
    &lt;controller type=&#039;ide&#039; index=&#039;0&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x01&#039; function=&#039;0x1&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-ehci1&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x7&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci1&#039;&gt;
      &lt;master startport=&#039;0&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x0&#039; multifunction=&#039;on&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci2&#039;&gt;
      &lt;master startport=&#039;2&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x1&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci3&#039;&gt;
      &lt;master startport=&#039;4&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x2&#039;/&gt;
    &lt;/controller&gt;
    &lt;interface type=&#039;bridge&#039;&gt;
      &lt;mac address=&#039;52:54:00:3f:7a:35&#039;/&gt;
      &lt;source bridge=&#039;bridge0&#039;/&gt;
      &lt;model type=&#039;e1000&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x03&#039; function=&#039;0x0&#039;/&gt;
    &lt;/interface&gt;
    &lt;input type=&#039;tablet&#039; bus=&#039;usb&#039;/&gt;
    &lt;input type=&#039;mouse&#039; bus=&#039;ps2&#039;/&gt;
    &lt;graphics type=&#039;vnc&#039; port=&#039;5900&#039; autoport=&#039;no&#039; keymap=&#039;ru&#039;/&gt;
    &lt;video&gt;
      &lt;model type=&#039;vga&#039; vram=&#039;9216&#039; heads=&#039;1&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x02&#039; function=&#039;0x0&#039;/&gt;
    &lt;/video&gt;
    &lt;memballoon model=&#039;virtio&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x04&#039; function=&#039;0x0&#039;/&gt;
    &lt;/memballoon&gt;
  &lt;/devices&gt;
&lt;/domain&gt;&lt;/code&gt;</code></pre></div><p>Windows Server 2 ядра, 6 гигов памяти, СОМ-порт Gobi.xml:<br /></p><div class="codebox"><pre><code>&lt;code lang=&quot;xml&quot;&gt;
&lt;domain type=&#039;kvm&#039;&gt;
  &lt;name&gt;Gobi&lt;/name&gt;
  &lt;uuid&gt;be88f6da-df5c-86e3-2ef7-0adebc2ee96d&lt;/uuid&gt;
  &lt;description&gt;Server Core&lt;/description&gt;
  &lt;memory unit=&#039;KiB&#039;&gt;6291456&lt;/memory&gt;
  &lt;currentMemory unit=&#039;KiB&#039;&gt;6291456&lt;/currentMemory&gt;
  &lt;vcpu placement=&#039;static&#039; cpuset=&#039;2-3&#039;&gt;2&lt;/vcpu&gt;
  &lt;os&gt;
    &lt;type arch=&#039;x86_64&#039; machine=&#039;rhel6.3.0&#039;&gt;hvm&lt;/type&gt;
    &lt;boot dev=&#039;hd&#039;/&gt;
  &lt;/os&gt;
  &lt;features&gt;
    &lt;acpi/&gt;
    &lt;apic/&gt;
    &lt;pae/&gt;
  &lt;/features&gt;
  &lt;clock offset=&#039;localtime&#039;&gt;
    &lt;timer name=&#039;rtc&#039; tickpolicy=&#039;catchup&#039;/&gt;
  &lt;/clock&gt;
  &lt;on_poweroff&gt;destroy&lt;/on_poweroff&gt;
  &lt;on_reboot&gt;restart&lt;/on_reboot&gt;
  &lt;on_crash&gt;restart&lt;/on_crash&gt;
  &lt;devices&gt;
    &lt;emulator&gt;/usr/libexec/qemu-kvm&lt;/emulator&gt;
    &lt;disk type=&#039;file&#039; device=&#039;disk&#039;&gt;
      &lt;driver name=&#039;qemu&#039; type=&#039;qcow2&#039; cache=&#039;writeback&#039;/&gt;
      &lt;source file=&#039;/home/virtual/Gobi.qcow2&#039;/&gt;
      &lt;target dev=&#039;hda&#039; bus=&#039;ide&#039;/&gt;
      &lt;address type=&#039;drive&#039; controller=&#039;0&#039; bus=&#039;0&#039; target=&#039;0&#039; unit=&#039;0&#039;/&gt;
    &lt;/disk&gt;
    &lt;disk type=&#039;file&#039; device=&#039;cdrom&#039;&gt;
      &lt;driver name=&#039;qemu&#039; type=&#039;raw&#039;/&gt;
      &lt;source file=&#039;/home/ISO/Win2008R2.iso&#039;/&gt;
      &lt;target dev=&#039;hdc&#039; bus=&#039;ide&#039;/&gt;
      &lt;readonly/&gt;
      &lt;address type=&#039;drive&#039; controller=&#039;0&#039; bus=&#039;1&#039; target=&#039;0&#039; unit=&#039;0&#039;/&gt;
    &lt;/disk&gt;
    &lt;controller type=&#039;ide&#039; index=&#039;0&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x01&#039; function=&#039;0x1&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-ehci1&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x7&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci1&#039;&gt;
      &lt;master startport=&#039;0&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x0&#039; multifunction=&#039;on&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci2&#039;&gt;
      &lt;master startport=&#039;2&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x1&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci3&#039;&gt;
      &lt;master startport=&#039;4&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x2&#039;/&gt;
    &lt;/controller&gt;
    &lt;interface type=&#039;bridge&#039;&gt;
      &lt;mac address=&#039;52:54:00:10:f5:f9&#039;/&gt;
      &lt;source bridge=&#039;bridge0&#039;/&gt;
      &lt;model type=&#039;e1000&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x03&#039; function=&#039;0x0&#039;/&gt;
    &lt;/interface&gt;
    &lt;serial type=&#039;dev&#039;&gt;
      &lt;source path=&#039;/dev/ttyS0&#039;/&gt;
      &lt;target port=&#039;0&#039;/&gt;
    &lt;/serial&gt;
    &lt;console type=&#039;dev&#039;&gt;
      &lt;source path=&#039;/dev/ttyS0&#039;/&gt;
      &lt;target type=&#039;serial&#039; port=&#039;0&#039;/&gt;
    &lt;/console&gt;
    &lt;input type=&#039;tablet&#039; bus=&#039;usb&#039;/&gt;
    &lt;input type=&#039;mouse&#039; bus=&#039;ps2&#039;/&gt;
    &lt;graphics type=&#039;vnc&#039; port=&#039;5902&#039; autoport=&#039;no&#039; keymap=&#039;ru&#039;/&gt;
    &lt;video&gt;
      &lt;model type=&#039;vga&#039; vram=&#039;9216&#039; heads=&#039;1&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x02&#039; function=&#039;0x0&#039;/&gt;
    &lt;/video&gt;
    &lt;memballoon model=&#039;virtio&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x04&#039; function=&#039;0x0&#039;/&gt;
    &lt;/memballoon&gt;
  &lt;/devices&gt;
&lt;/domain&gt;&lt;/code&gt;</code></pre></div><p>CentOS 6.4&nbsp; 1 ядро, 4 гига памяти Proxy.xml<br /></p><div class="codebox"><pre><code>&lt;code lang=&quot;xml&quot;&gt;
&lt;domain type=&#039;kvm&#039;&gt;
  &lt;name&gt;Proxy&lt;/name&gt;
  &lt;uuid&gt;ffe7951d-9975-121f-c7a3-b005b612ddf5&lt;/uuid&gt;
  &lt;description&gt;Proxy&lt;/description&gt;
  &lt;memory unit=&#039;KiB&#039;&gt;4194304&lt;/memory&gt;
  &lt;currentMemory unit=&#039;KiB&#039;&gt;4194304&lt;/currentMemory&gt;
  &lt;vcpu placement=&#039;static&#039; cpuset=&#039;1&#039;&gt;1&lt;/vcpu&gt;
  &lt;os&gt;
    &lt;type arch=&#039;x86_64&#039; machine=&#039;rhel6.3.0&#039;&gt;hvm&lt;/type&gt;
    &lt;boot dev=&#039;hd&#039;/&gt;
  &lt;/os&gt;
  &lt;features&gt;
    &lt;acpi/&gt;
    &lt;apic/&gt;
    &lt;pae/&gt;
  &lt;/features&gt;
  &lt;cpu mode=&#039;custom&#039; match=&#039;exact&#039;&gt;
    &lt;model fallback=&#039;allow&#039;&gt;cpu64-rhel6&lt;/model&gt;
    &lt;vendor&gt;Intel&lt;/vendor&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;vme&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;tm2&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;est&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;monitor&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;osxsave&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;smx&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;ss&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;tsc-deadline&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;dtes64&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;ht&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;ds&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;pbe&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;tm&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;pdcm&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;vmx&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;ds_cpl&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;xtpr&#039;/&gt;
    &lt;feature policy=&#039;require&#039; name=&#039;acpi&#039;/&gt;
  &lt;/cpu&gt;
  &lt;clock offset=&#039;utc&#039;/&gt;
  &lt;on_poweroff&gt;destroy&lt;/on_poweroff&gt;
  &lt;on_reboot&gt;restart&lt;/on_reboot&gt;
  &lt;on_crash&gt;restart&lt;/on_crash&gt;
  &lt;devices&gt;
    &lt;emulator&gt;/usr/libexec/qemu-kvm&lt;/emulator&gt;
    &lt;disk type=&#039;file&#039; device=&#039;disk&#039;&gt;
      &lt;driver name=&#039;qemu&#039; type=&#039;qcow2&#039; cache=&#039;writeback&#039;/&gt;
      &lt;source file=&#039;/home/virtual/Stronghold.qcow2&#039;/&gt;
      &lt;target dev=&#039;hda&#039; bus=&#039;ide&#039;/&gt;
      &lt;address type=&#039;drive&#039; controller=&#039;0&#039; bus=&#039;0&#039; target=&#039;0&#039; unit=&#039;0&#039;/&gt;
    &lt;/disk&gt;
    &lt;disk type=&#039;block&#039; device=&#039;cdrom&#039;&gt;
      &lt;driver name=&#039;qemu&#039; type=&#039;raw&#039;/&gt;
      &lt;target dev=&#039;hdc&#039; bus=&#039;ide&#039;/&gt;
      &lt;readonly/&gt;
      &lt;address type=&#039;drive&#039; controller=&#039;0&#039; bus=&#039;1&#039; target=&#039;0&#039; unit=&#039;0&#039;/&gt;
    &lt;/disk&gt;
    &lt;controller type=&#039;ide&#039; index=&#039;0&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x01&#039; function=&#039;0x1&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-ehci1&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x7&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci1&#039;&gt;
      &lt;master startport=&#039;0&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x0&#039; multifunction=&#039;on&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci2&#039;&gt;
      &lt;master startport=&#039;2&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x1&#039;/&gt;
    &lt;/controller&gt;
    &lt;controller type=&#039;usb&#039; index=&#039;0&#039; model=&#039;ich9-uhci3&#039;&gt;
      &lt;master startport=&#039;4&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x05&#039; function=&#039;0x2&#039;/&gt;
    &lt;/controller&gt;
    &lt;interface type=&#039;bridge&#039;&gt;
      &lt;mac address=&#039;52:54:00:69:66:09&#039;/&gt;
      &lt;source bridge=&#039;bridge0&#039;/&gt;
      &lt;model type=&#039;e1000&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x03&#039; function=&#039;0x0&#039;/&gt;
    &lt;/interface&gt;
    &lt;serial type=&#039;pty&#039;&gt;
      &lt;target port=&#039;0&#039;/&gt;
    &lt;/serial&gt;
    &lt;console type=&#039;pty&#039;&gt;
      &lt;target type=&#039;serial&#039; port=&#039;0&#039;/&gt;
    &lt;/console&gt;
    &lt;input type=&#039;mouse&#039; bus=&#039;ps2&#039;/&gt;
    &lt;graphics type=&#039;vnc&#039; port=&#039;5901&#039; autoport=&#039;no&#039; keymap=&#039;ru&#039;/&gt;
    &lt;video&gt;
      &lt;model type=&#039;vga&#039; vram=&#039;9216&#039; heads=&#039;1&#039;/&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x02&#039; function=&#039;0x0&#039;/&gt;
    &lt;/video&gt;
    &lt;memballoon model=&#039;virtio&#039;&gt;
      &lt;address type=&#039;pci&#039; domain=&#039;0x0000&#039; bus=&#039;0x00&#039; slot=&#039;0x04&#039; function=&#039;0x0&#039;/&gt;
    &lt;/memballoon&gt;
  &lt;/devices&gt;
&lt;/domain&gt;
&lt;/code&gt;</code></pre></div><p>Здесь важно отметить, что запустив установку по скрипту, она (установка) уйдёт в &quot;фон&quot;, и ответить на вопросы мастера установки и нажать кнопочку &quot;Далее&quot; просто так мы не сможем. Что бы не лишать себя этой радости жизни, на своём рабочем компьютере (или любом другом, не сервере) делаем от рута:<br /># yum install virt-manager virt-viewer<br />YUM вытянет за собой все зависимости, которые потребуются для управления гостевыми системами на нашем удалённом сервере.<br />Далее запускаем virt-manager, меню &quot;Правка&quot; -&gt; &quot;Параметры&quot; -&gt; вкладка &quot;Свойства виртуальной машины&quot;, отмечаем &quot;Удалённая виртуальная машина&quot;, как показано на рисунке.</p><p><span class="postimg"><img src="http://linuxru.org/images/Vadimsky/0001.png" alt="http://linuxru.org/images/Vadimsky/0001.png" /></span></p><p>Повторюсь ещё раз: virt-manager мы поставили на машине, отличной от сервера.<br />&quot;Default storage format&quot; лучше выбрать QCOW2, позже расскажу что это такое.<br />Далее нажимаем меню &quot;Файл&quot; -&gt; &quot;Добавить соединение&quot;, и появится вот такое окно:</p><p><span class="postimg"><img src="http://linuxru.org/images/Vadimsky/0002.png" alt="http://linuxru.org/images/Vadimsky/0002.png" /></span></p><p>В строке &quot;Гипервизор&quot;, в выпадающем меню выбираемQemu-KVM. Справедливости ради хочу отметить, чтоvirt-manager может управлять иXen Server, если кто не хочет ради управления Xen Server ставить &quot;винду&quot;.<br />Далее тип подключения — я выбрал ssh, но другие варианты тоже есть.<br />Имя хоста (IP-адрес нашего сервера, или имя, если оно занесёно в DNS).<br />Имя пользователя — пользователь, от имени которого работает Qemu-KVM, он должен входить в группы libvirt, (которой изначально нет) и в группу qemu, следовательно, группу libvirt создать, а потом ввести в неё пользователя. Если пользовались моим скриптом1 , то он только создаёт группу. Вводить пользователя в группы всё равно нужно вручную коммандами:</p><p># usermod -G qemu -a vadim<br /># usermod -G libvirt -a vadim</p><p>Вместо vadim пишите своего пользователя.</p><p>Ставим галочку &quot;Подключаться автоматически&quot;, то есть при запускеvirt-manager, и жмём &quot;Подключится&quot;. Удалённая система запросит пароль пользователя, которого мы только что добавили в группы. Вводим пароль и вауля, перед нами окно virt-manager -а с нашим сервером и запущенной виртуальной машиной в нём (мы же уже запустили установку, теперь она ждёт наших команд).<br />Выделяем мышкой виртуальную машину и жмём кнопку &quot;Открыть&quot;. Всё, перед нами обычное окно установки, как если бы мы ставили систему на локальную машину.<br />Ставим гостевую систему обычным образом.<br />На этом собственно и всё. Ничего сложного. В принципе, новые гостевые системы можно ставить непосредственно из virt-manager, но лично я его использую только, что бы продолжить и завершить установку. Начинаю же с сервера, скриптом2, так как в нём более гибко можно описать параметры и пути установок. А последующую настройку уже делаю по RDP для Windows-машин или по SSH для Linux.</p><p>Так же полезно будет в окне виртуальной машины зайти в раздел &quot;Параметры виртуального оборудования&quot;. Там следует сменить предлагаемую &quot;по-умолчанию&quot; сетевую карту на e1000, если конечно ваша сеть и физический сетевой адаптер сервера поддерживает гигабит.<br />Так же полезно будет физически привязать виртуальный процессор гостевой машины к физическому процессору сервера. Делается это в разделе Processor -&gt; Pinning, в случае большого количества установок, таким образом можно равномерно распределить нагрузку между физическими ядрами сервера (это можно задать и в начале установки в скрипте2).<br />Я специально гонял тесты, перед вводом сервера в боевой строй. Здесь важнно учесть перераспределение нагрузки и роли, которые гости будут исполнять. В конечном варианте я распределил физические ядра и оперативку между гостями таким образом, что бы нагрузка на наих в течении суток (днём и ночью) была более менее равномерная, тоесть не вешал все тяжёлые дневные задачи на одно ядро в одно время суток, а равномерно распределяя по суткам и между ядрами (привязка виртуальных ядер к физическим).<br /> И так, в разделе IDE DISK1 нужно выбрать формат хранилища qcow2. После этого систему следует выключить и произвести конвертацию файла диска из формата RAW (в котором устанавливается система по-умолчанию) в формат QCOW2, что сильно повысит операции файлового ввода-вывода внутри виртуального диска (по крайней мере так написано в мануалах и других статьях, однако я сам разницу практически не заметил, да и не проводил особых тестов).</p><p>Конвертацию производим командой:<br /># qemu-img convert -f raw -O qcow2 -o preallocation=metadata /home/virtual/rapid.img /home/virtual/Rapid.qcow2&lt;/code&gt;</p><p>Ещё раз о форматах файла виртуального диска, какой использовать. Существует много мнений.<br />QCOW2 - удобен тем, что позволяет получать снапшоты (снимки) на лету, чего RAW обеспечить не может, но в тоже время RAW имеет боле простую внутреннюю структуру и меньше метаданных, за счёт чего, априори, работает быстрее. Какой использовать выбирать вам, я специальных тестов не проводил, и моё мнение относительно скорости основывается на чисто визуальном восприятии.</p><p>И так, далее запускаем гостевую систему, либо изvirt-manager -а, либо с командной строки сервера, используя<br />virsh start имя_виртуальной_машины</p><p>Получить список установленных гостевых систем можно командой</p><p># virsh list --all</p><br /><p>Конфиги:<br />...<br /></p><div class="codebox"><pre><code>#/etc/sysconfig/network-scripts/ifcfg-bridge0
DEVICE=bridge0
TYPE=Bridge
IPADDR=192.168.1.20
PREFIX=24
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
GATEWAY=192.168.1.1
DNS1=192.168.1.11
DNS2=192.168.1.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
DOMAIN=firma.local
USERCTL=no
BOOTPROTO=static
ONBOOT=yes</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/sysconfig/network-scripts/ifcfg-bridge1
DEVICE=bridge1
TYPE=Bridge
IPADDR=192.168.1.21
PREFIX=24
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
GATEWAY=192.168.1.1
DNS1=192.168.1.11
DNS2=192.168.1.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
DOMAIN=firma.local
USERCTL=no
BOOTPROTO=static
ONBOOT=yes</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
TYPE=Bonded
BOOTPROTO=none
NM_CONTROLLED=no
ONBOOT=no</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=&quot;eth0&quot;
BOOTPROTO=&quot;static&quot;
HWADDR=&quot;10:bf:48:d5:c7:00&quot;
BRIDGE=bridge0
ONBOOT=&quot;yes&quot;</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=&quot;eth1&quot;
BOOTPROTO=&quot;static&quot;
HWADDR=&quot;10:bf:48:d5:c7:01&quot;
BRIDGE=bridge1
ONBOOT=&quot;yes&quot;</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/modprobe.d/modprobe.conf
alias bond0 bonding
options bonding mode=2 miimon=100 downdelay=200 updelay=200</code></pre></div><p>...<br /></p><div class="codebox"><pre><code># /etc/sysctl.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.default.accept_redirects = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
kernel.panic = 10
net.ipv4.tcp_syncookies = 1
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.ip_local_port_range=&quot;16384 65000&quot;
net.core.rmem_default = 16777216
net.core.rmem_max = 16777216
net.core.wmem_default = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 16777216  16777216
net.ipv4.tcp_wmem = 4096 16777216  16777216
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.conf.all.accept_source_route=0
net.ipv4.tcp_keepalive_time = 1800
#net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 200000
#net.ipv4.ip_conntrack_max = 64000000
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_probes = 2
net.ipv4.tcp_synack_retries = 3
net.ipv4.tcp_syn_retries = 3
net.ipv4.tcp_timestamps=0</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/yum.repos.d/webmin.repo
[Webmin]
name=Webmin Distribution Neutral
priority=3
baseurl=http://download.webmin.com/download/yum/
enabled=1</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/yum.repos.d/rpmforge.repo
[rpmforge]
name = RHEL $releasever - RPMforge.net - dag
baseurl = [url]http://apt.sw.be/redhat/el6/en/$basearch/rpmforge[/url]
mirrorlist = [url]http://apt.sw.be/redhat/el6/en/mirrors-rpmforge[/url]
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1
protect = 0
priority=3
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
enabled=1
priority=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
enabled=1
priority=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
enabled=1
priority=2
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
priority=2
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;arch=$basearch&amp;repo=contrib
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
priority=2
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6</code></pre></div><p>...<br /></p><div class="codebox"><pre><code>#/etc/selinux/config
SELINUXTYPE=targeted
SELINUX=disabled
SETLOCALDEFS=0</code></pre></div><p>...<br />В файле /etc/libvirt/libvirtd.conf достаточно расскоментировать строку unix_sock_group = &quot;libvirt&quot;<br />В файле /etc/ssh/sshd_config расскоментировать X11Forwarding yes</p><p>Вот собственно и всё!<br />Удачи!<br />Искренне ваш, Vadimsky</p>]]></content>
			<author>
				<name><![CDATA[Vadimsky]]></name>
				<uri>https://linuxforum.ru/profile.php?id=411</uri>
			</author>
			<updated>2013-03-05T14:08:00Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=331635#p331635</id>
		</entry>
</feed>
