sonyps4.ru

Виртуальная машина centos 7. Установка системы виртуализации KVM на CentOS

Если вы читаете эту статью, то, скорее всего, отлично понимаете, зачем вам нужен веб-сервер и останавливаться на этом я не буду. Но и просто описать, как происходит установка CentOS 7 и как настроить окружение, мне показалось неинтересным. Поэтому мы возьмем Windows, VirtualBox и будем настраивать веб-сервер в виртуальной машине, в виртуальной сети. Параллельной задачей, кроме как разобраться с установкой и настройкой веб-сервера на Linux, будем создавать удобную среду на подобии OpenServer или Denwer, но со всеми преимуществами полноценного nix-сервера.

Что нам понадобится

Создаем контейнер виртуальной машины для CentOS в VirtualBox

Запускаем VirtualBox, заходим в настройки и смотрим конфигурацию виртуальной сети:

Ок, сеть 192.168.56.0/24, DHCP раздает адреса со 101 по 254. Запомним эту информацию.

Переходим к созданию контейнера для CentOS 7. Для этого нажимаем на кнопочку “Создать” и переключаемся в “Экспертный режим”.
Тип OS – Linux, Версия – RedHat (64-bit). Объем ОЗУ поставим в 512 Мб, работать будем только в консоли, так что этого нам хватит с запасом. Жесткий диск создаем новый.


Нажимаем кнопку “Создать” и определяем конфигурацию жесткого диска – можно все оставить по умолчанию: размер 8Гб (можете сразу увеличить, если понимаете, что вам не хватит), тип VDI, Динамический. Снова нажимаем кнопку “Создать”.

Контейнер для виртуальной машины создан. Немного подкорректируем настройки:

На вкладке “Система”->”Материнская плата” меняем порядок загрузки:


Ставим в “Процессорах” 2 штуки и галочку PAE/NX


Переходим в “Дисплей” и добавляем видеопамяти до 16 Мб. Ускорение графики нам ни к чему, т.к. у нас только консоль.


Переходим в носители и указываем наш образ с CentOS 7.




Сеть. Мы будем использовать 2 интерфейса. Первый в режиме bridge (сетевой мост). В селекте “Имя” выберите тот интерфейс, через который вы подключаетесь к вашему роутеру. Это позволит виртуалке получить IP из вашей домашней сети, что часто полезно и интернет она будет получать от вашего роутера. Если у вас не так (ходите в интернет без роутера), или вы планируете, что вашей виртуалке всегда нужен будет интернет – используйте NAT.


Для второго интерфейса выбираем “Виртуальный адаптер хоста” для подключения к виртуальной сети. Благодаря этому, ваш web-сервер будет доступен вне зависимости от того, в какой сети вы работаете. Если бы мы ограничились только первым адаптером, то как только вы отключитесь от вашего роутера, пришлось бы переконфигурировать сетевое соединение под новые условия. А так веб-сервер будет вам всегда доступен в виртуальной сети.


Ну и последним шагом отключим USB. Вряд ли нам понадобится.


На это собственно все, запускаем виртуальную машину.

Запуск установщика CentOS 7

Если вы все сделали правильно, у вас запустится установщик и начнется установка CentOS 7 (а если не запустился, проверьте еще раз порядок загрузки и, что в носителях у нас указан iso с дистрибутивом CentOS 7). Выбираем первый пункт – Install CentOS 7 (обратите внимание, что по умолчанию выбран второй пункт “Test this media…” – если вы выбрали его то можете подождать пока не проверятся контрольные суммы образа, а можете во время проверки нажать Esc).

На первом шаге нам предлагают выбрать язык установщика. Оставляем все как есть и нажимаем кнопку Contunue.


Второй шаг – основное меню установщика.


Настройка локализации и даты/времени

Настройки с датой/временем и языковые настройки оставим как есть. Эти моменты мы настроим потом вручную – это полезно в качестве практики. Если вы покупаете VDS, например, в Германии, трудно ожидать, что языковые настройки будут русские и время выставлено по Москве.

Выбираем профиль безопасности

Настраиваем профиль безопасности – SECURITY. Нажимаем Security Policy, выбираем Standart System Security Profile. Нажимаем кнопку “Select Profile”, затем “Done”.


Выбор диска для установки и отключение kdump

Переходим к группе SYSTEM.

Отключим механизм сбора информации о сбоях ядра KDUMP. Заходим в КDUMP, снимаем галочку с “Enable kdump” и нажимаем “Done”.

Разбиение для жесткого диска то же оставим без изменения. Нажмите “Installation destination”, выберите наш жесткий диск. Убедитесь, что установлена галочка “Automatically configure partitions” и нажимайте “Done”.


Настройка сети

Переходим к настройке сетевых интерфейсов. Нажимаем NETWORK&HOST NAME и переходим к окну конфигурации. Первым делом задайте hostname для вашего сервера – у меня это web.local, вы можете повторить за мной или же написать все что хотите.

Теперь посмотрим на список сетевых интерфейсов. Первый у нас для интернета, настройки он получает от роутера по DHCP или через NAT. Давайте включим его, установив переключатель в статус ON. Статус должен сменится на connected и интерфейс получить IP адрес.


Теперь нажмем кнопку “Configure” и на закладке “General” установим галочку “Automatically connect to the…” – для того что бы при загрузке операционной системы, интерфейс был сразу включен.
Отключаем IPv6 (конечно если вы им не пользуетесь 😉) На закладке “IPv6 Settings” ставим “Method” в Ignore. Нажимаем “Save”.

Переходим ко второму интерфейсу. Включаем, и видим что IP адрес получили уже от DCHP виртуальной сети. Но адрес который может в один прекрасный момент поменяться, нам не подходит. Давайте зададим статический. Нажимаем “Configure” и первым делом, по аналогии с первым интерфейсом, задаем автоматическое включение и отключаем IPv6. Затем переходим на закладку “IPv4 Settings”. “Method” выбираем Manual, в списке адресов Addresses нажимаем Add и добавляем IP адрес.

Помните, выше мы запомнили с вами настройки виртуальной сети? DHCP раздает адреса начиная с 56.101, следовательно нам надо выбрать адрес меньше чем 101. Я выбрал 192.168.56.80. Задаем маску подсети 24 и нажимаем “Save”. Настройка сети завершена, жмем “Done”.

Ну вот установка CentOS 7 почти закончена. Нажимаем кнопку “Begin Installation” и процесс установки запускается.


Пароль root и пользователь для работы

Пока идет установка зададим пароль администратора.

Так же можно создать учетную запись из под которой будем работать. Нажимаем “USER CREATION” и задаем логин, пароль и ставим галочку “Make this user administrator”, что поместить нашего пользователя в группу wheel. Обратите внимание – если задали пароль, который установщик посчитал слабым – то на кнопку “Done”, надо будет нажать два раза. На общедоступных серверах такие пароли конечно же ставить нельзя, но в рамках нашей задачи с паролем можно особо не мудрить.

Теперь осталось немного подождать, пока установятся все пакеты и по завершении нажать кнопку Reboot. Поздравляю, установка CentOS 7 завершена.


Запуск виртуальной машины с CentOS 7

Запуск виртуальной машины в VirtualBox возможен в трех режимах:

1. Обычный запуск. В этом случае виртуальная машина загрузится в обычном окне, которое будет тем или иным способом присутствовать у вас на рабочем столе или в свернутом виде на панели задач. Это конечно не совсем удобно, особенно когда виртуалка перехватывает мышь.
2. Запуск в фоновом режиме. В этом случае виртуальная машина запускается фоновым процессом и после того как она загрузилась, мы можем спокойно закрыть основное окно VirtualBox. Процесс останется и мы можем, например, спокойно подключится к серверу по ssh.
3. И наконец запуск в фоновом режиме с интерфейсом. Виртуальная машина загрузится в окне, но при необходимости, мы можем отправить ее в фон.

Запуск в фоне конечно очень удобен, но отсутствие всякой индикации о состоянии виртуальной машины или просто о факте такого запуска весьма напрягает. Но мир не без добрых людей и тут нам поможем утилитка . Она запускает выбранную виртуалку в фоновом режиме и помещает в трей иконку.

Нажав по иконке правой кнопкой увидим меню, с помощью которого можно управлять запущенной виртуальной машиной. Согласитесь, так это делать намного удобнее.

Подключении по ssh с помощью putty

Работать с сервером намного удобнее используя ssh-клиент. Вот уже многие годы стандартом для win систем остается putty. Подробно на всех настройках этого клиента я останавливаться не буду, давайте просто подключимся к нашему серверу. Запускаем putty и вводим в “HostName” IP адрес нашего сервера 192.168.56.80. Подключатся к нему мы будем постоянно, поэтому давайте сохраним этот IP в списке. В “Saved Sessions” вводим название и нажимаем кнопку “Save”. А что бы подключится – нажимаем “Open”.


и видим строку приглашения нашего сервера:

После того как установка CentOS 7 завершена – нам надо сделать немало настроек, что бы подстроить сервер под себя. Об этом следующей части.


Задача : установить CentOS 7 на виртуальную машину Hyper-V второго поколения (Generation 2). Предварительно зайдите на официальный сайт CentOS и скачайте iso-образ нужной версии системы.

1. Создание виртуальной машины

Создадим новую виртуальную машину в Hyper-V. Дадим ей имя, например VM-CentOS.

На следующем шаге укажем, что это будет виртуальная машина второго поколения (Generation 2).

Затем "Configure Networking" - выбираем Connection - LAN.

Теперь "Connect Virtual Hard Disk" - выбираем создание нового диска (Create a virtual hard disk) и устанавливаем его размер, имя и расположение. Например, VM-CentOS.vhdx.

Далее "Installation Options" - выбираем установку системы из имиджа (Install an OS from a bootable image file), который необходимо скачать в виде iso-файла с официального сайта CentOS, и указываем пусть к нему (Image file iso).

Виртуальная машина создана.

По правой клавише перейдите в настройки машины (Settings). В блоке Hardware вберите Firmware и снимите флажок "Enable Secure Boot ".

Если этого не сделать, то при запуске будет следующая ошибка: "Boot Failed. EFI SCSI Device. Failed Secure Boot Verification ."

2. Установка CentOS 7 на созданную виртуальную машину

Теперь запускаем машину (Start). Будет отображено приветственное окно инсталлятора системы CentOS. Если необходимо, добавим русский язык.

Теперь можно произвести предварительную настройку.

Перейдем по кнопке "Клавиатура". Здесь можем поменять параметры раскладок, если нужно (например английский язык поднять наверх, сменить клавиши раскладки, например на сочетание "Ctrl+Shift").

По кнопке "Выбор программ" переходим в выбор программного обеспечения, где можно указать, какие пакеты будут предустановлены заранее. Эти параметры сильно зависят от того, для чего в дальнейшем планируется использовать данную систему. Если важна производительность, то можно выбрать "Минимальную установку", а в дальнейшем "доустановить" все необходимые компоненты.

При планировании применения машины под CentOS для хостинга сайтов можно установить параметр "Стандартный веб-сервер", добавить также, например, "Поддержка PHP", "Клиент MariaDB" и другие.

Если же необходим графический интерфейс, то можно выбрать "Окружение GNOME" или "KDE Plasma Workspaces", добавить к нему "Офисный пакет" и т.п.

Теперь зададим параметры сети. Переходим на "Сеть и имя узла", задаем имя узла и включаем сеть по верхней правой кнопке-переключателю.

Теперь нажимаем "Начать установку".

Пока в фоновом режиме идет установка, установим необходимые пароля для доступа.

Нажимаем "Пароль root" и устанавливаем пароль учетной записи администратора.

При необходимости создаем пользователя.

Теперь дожидаемся окончания установки CentOS 7.

Нажимаем "Завершить настройку" и ожидаем окончания процесса установки. После этого будет предложено произвести перезагрузку.

3. Проверка поколения виртуальной машины

После перезагрузки введем ранее созданный логин-пароль.

Примечание для тех, кто устанавливает Linux систему в первый раз: пароль при вводе на экране не отображается.

Далее проверим, действительно ли созданная виртуальная машина является машиной второго поколения (Generation 2). Для этого запустим на гипервизоре Windows PowerShell и выполним следующую команду (вместо "VM-CentOS" введите имя своей машины):

Get-vm VM-CentOS | fl name,generation

Убеждаемся, что указано Generation 2. Установка завершена.

Мониторинг HTTP запросов веб-сервера IIS с помощью Fiddler

Kooboo. Урок 1: Вводная часть

В продолжение игрищ с организацией виртуальной винды на выделенном серваке, решил попробовать на вкус KVM, ибо до этого момента как то всегда за глаза хватало продуктов VMware и VirtualBox. А тут на одном из форумов вычитал гневную тираду какого то товарища на счет того, что только идиоты ставят VirtualBox там где можно поставить KVM.

Ну и решил посмотреть. Надо сказать, что в моем понимании, VIrtualBox ставится чуть муторней чем KVM, но управляется проще и нет геморроев с настройкой сетки, хотя функциональностью он возможно и уступает. Чего не скажешь про ESXi. Но обо всем по порядку.

Ставил стандартно на CentOS 6.7, т.ч телодвижения начинаем с обновления системы:
# yum -y update

Смотрим поддерживается ли процессором аппаратная виртуализация, т.к KVM для своей работы требует поддержки Intel VT или AMD-V
# egrep -i "vmx|svm" --color=always /proc/cpuinfo
в выводе должен присутствовать либо vmx либо svm

Смотрим статус контроля доступа SELinux
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 24
Policy from config file: targeted

теоретически он может помешать при доступе к дискам, поэтому его надо либо корректно настроить на работу с папкой имиджей, либо отрубить, что мне естественно проще – в файле /etc/selinux/config меняем значение параметра SELINUX на disabled и перегружаем машину
SELINUX=disabled

Импортируем GPG ключи для пакетов
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
Ставим весь фарш: сам kvm, API управления виртуалками libvirt, приблуду для создания виртуалок virtinst и гипервизор qemu-kvm
# yum -y install kvm libvirt python-virtinst qemu-kvm

Запускаем libvirt и прописываем модуль автозагрузку
# /etc/init.d/libvirtd start
# chkconfig libvirtd on

Проверяем как KVM установился и стартанул (в выводе должно быть 0 ошибок)
# virsh -c qemu:///system list
Id Name State
—————————————————-

Устанавливаем сетевой мост, для подключения гостевых машин к внешней сетке и ужасному, страшному энторнету
# yum install bridge-utils

Создаем конфиг сетевого моста, аналогичный настройкам сетевого интерфейса, но с небольшой разницей:
# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-br0

###### /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=bridge
ONBOOT=yes
BOOTPROTO=none
NM_CONTROLLED=yes
IPADDR=SERVER_IP
PREFIX=24
GATEWAY=GW_IP
DNS1=8.8.8.8
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=”System br0″
##################
затем редактируем настройки основного интерфейса, комментируя парметры BOOTPROTO, IPADDR, PREFIX, GATEWAY, DNS1 и прописывая сетевой мост
###### /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
#BOOTPROTO=none
HWADDR=01:2e:32:ab:9f:1e
#IPADDR=SERVER_IP
#PREFIX=24
#GATEWAY=GW_IP
#DNS1=8.8.8.8
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=”System eth0″
BRIDGE=br0
##################

Теперь рестартим сетку и смотрим что получилось - у нас должны показываться 4 интерфейса:
br0 с основным IP
eth0 без IP
lo 127.0.0.1
virbr0 с внутренним IP виртуального рутера

проверяем состояние нашего сетевого моста:
# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.002215ab999d no eth0
virbr0 8000.52540052c0e1 yes virbr0-nic

теоретически можно ускорить работу сетевого моста, добавлением в файл /etc/sysctl.conf следующих параметров:
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

Теперь переходим к созданию директории для хранения имиджей виртуалок и образов дистов iso
# mkdir /usr/vm/iso
# mkdir /usr/vm/vm-images

по дефолту все имиджи машин, образы дисков и прочее хранится в /var/lib/libvirt/ но я решил выпендриться и порезал диск в лучших олдскульных традициях разбиения, поэтому учитывайте этот момент при установке сервера, либо же придется удалять оригинальные хранилища и линковать, как мне, на /usr

# rm -Rf /var/lib/libvirt/images
# ln -s usr/vm/iso /var/lib/libvirt/images

После всей этой подготовки, пытаемся создать виртуальную машину под Windows 7 с 2 виртуальными процами, 4Gb оперативки, 30Gb HDD, хранения имиджа в папке /usr/vm/vm-images и имиджем windows7.iso который мы скачали ранее в папку /usr/vm/iso

# virt-install --connect=qemu:///system -n win7 -r 4096 --vcpus=2 --disk path=/usr/vm/vm-images/win7.img,size=30 -c /usr/vm/iso/windows7.iso --vnc --noautoconsole --os-type windows --os-variant win7 --accelerate --network=bridge:br0 --hvm

Если все нормально, то увидим процесс создания диска. На этой торжественной ноте можно переходить к настройке машины, и тут кроется самая настоящая засада, т.к если вы работаете из под винды, то из вариантов есть либо управление через ming сквозь putty-ssh, но для этого требуются X Windows на стороне сервера, либо же совершенно не понятная тулза virtual viewer, которуя я так и не смог заставить работать. Поэтому все что я смог найти- это либо этот внешний сервис, позволяющий подцепить свою KVM к их админке; либо же ставить свою веб-админку на базе Webmin Cloudmin GPL.

Тут надо заметить, что строка инициализиции сетки –network=bridge:br0 позволит использовать на виртуальной машине паблик IP, тогда как если вы хотите сидеть в виртуальной локалке и выходить из неё в инет, то надо ставить другой оператор –network=bridge:virbr0 что я упустил при установке, т.ч потом пришлось менять руками в файле настройки виртуальной машины /etc/libvirt/qemu/win7.xml.

Управление машиной в CLI осуществляется через virsh (virtual shell) в который мы попадаем из командной строки shell:
# virsh --connect qemu:///system
Welcome to virsh, the virtualization interactive terminal.
Type: ‘help’ for help with commands
‘quit’ to quit
virsh # list –all
Id Name State
—————————————————-
2 win7 running
virsh # shutdown win7
Domain win7 is being shutdown
virsh # start win7
Domain win7 started

CentOS является одной из популярных систем на базе Linux, и по этой причине многие пользователи хотят с ней познакомиться. Устанавливать ее в качестве второй операционной системы на свой ПК - вариант не для каждого, но вместо этого можно поработать с ней в виртуальной, изолированной среде под названием VirtualBox.

Скачать CentOS можно совершенно бесплатно. Для удобства пользователей разработчики сделали 2 вариации дистрибутива и несколько способов закачки.

Сама операционная система есть в двух версиях: полная (Everything) и урезанная (Minimal). Для полноценного знакомства рекомендуется скачать полную версию - в урезанной нет даже графической оболочки, и для обычного домашнего использования она не предназначена. Если же вам нужна урезанная, на главной странице CentOS нажмите «Minimal ISO» . Оно скачивается ровно такими же действиями, что и Everything, загрузку которой мы рассмотрим ниже.

Скачать версию Everything можно через torrent. Поскольку примерный размер образа составляет порядка 8 ГБ.
Для скачивания выполните следующее:


Шаг 2: Создание виртуальной машины для CentOS

В VirtualBox каждая устанавливаемая операционная система нуждается в отдельной виртуальной машине (VM). На этом этапе выбирается тип системы, которая будет установлена, создается виртуальный накопитель и настраиваются дополнительные параметры.


На этом установка VM заканчивается.

Шаг 3: Настройка виртуальной машины

Этот этап необязателен, но будет полезен для некоторых базовых настроек и общего ознакомления с тем, что можно изменить в VM. Для входа в настройки нужно нажать правой кнопкой мыши по виртуальной машине и выбрать пункт «Настроить» .

Во вкладке «Система» - «Процессор» можно увеличить количество процессоров до 2. Это даст некоторый прирост к производительности CentOS.

Перейдя в «Дисплей» , можете добавить некоторое количество МБ к видеопамяти и включить 3D-ускорение.

Остальные настройки можно выставить по своему усмотрению и возвращаться к ним в любой момент, когда машина не запущена.

Шаг 4: Установка CentOS

Основной и последний этап: инсталляция дистрибутива, который уже был скачан.

  1. Выделите кликом мыши виртуальную машину и нажмите на кнопку «Запустить» .

  2. После запуска VM нажмите на папку и через стандартный системный проводник укажите место, куда вы скачали образ ОС.

  3. Запустится установщик системы. При помощи стрелки вверх на клавиатуре выберите пункт «Install CentOS Linux 7» и нажмите Enter .

  4. В автоматическом режиме будут произведены некоторые операции.

  5. Начнется запуск инсталлятора.

  6. Запустится графический установщик CentOS. Сразу же хотим заметить, что у этого дистрибутива один из самых проработанных и дружелюбных установщиков, поэтому работать с ним будет очень просто.

    Выберите ваш язык и его разновидность.

  7. В окне с параметрами настройте:
  8. Нажмите на кнопку «Начать установку» .

  9. Во время установки (состояние отображается в нижней части окна как прогресс-бар) вам будет предложено придумать пароль root и создать пользователя.

  10. Впишите пароль для прав root (суперпользователя) 2 раза и нажмите «Готово» . Если пароль будет простым, кнопку «Готово» потребуется нажать дважды. Не забудьте сперва переключить раскладку клавиатуры на английский язык. Текущий язык можно увидеть в правом верхнем углу окна.

  11. Впишите желаемые инициалы в поле «Полное имя» . Строка «Имя пользователя» будет заполнена автоматически, но ее можно изменить вручную.

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

    Придумайте пароль для учетной записи и нажмите «Готово» .

  12. Дождитесь установки ОС и нажмите на кнопку «Завершить настройку» .

  13. Будут выполнены еще кое-какие настройки в автоматическом режиме.

  14. .

  15. Появится загрузчик GRUB, который по умолчанию через 5 секунд продолжит загрузку ОС. Можно сделать это вручную, не дожидаясь таймера, нажав на Enter .

  16. Появится окно загрузки CentOS.

  17. Снова отобразится окно с настройками. На этот раз нужно принять условия лицензионного соглашения и настроить сеть.

  18. Поставьте галочку в этом коротком документе и нажмите «Готово» .

  19. Чтобы включить интернет, нажмите на параметр «Сеть и имя узла» .

    Кликните на регулятор, и он сдвинется вправо.

  20. Нажмите на кнопку «Завершить» .

  21. Вы попадете на экран входа в учетную запись. Кликните на нее.

  22. Переключите раскладку клавиатуры, введите пароль и нажмите «Войти» .

Теперь вы можете начинать пользоваться операционной системой CentOS.

Установка CentOS - одна из самых простых, и может быть без труда выполнена даже новичком. Эта операционная система по первым впечатлениям ощутимо может отличаться от Windows и быть непривычной, даже если вы ранее пользовались Ubuntu или MacOS. Однако в освоении этой ОС не возникнет особых сложностей благодаря удобному окружению рабочего стола и расширенному набору приложений и утилит.

KVM — это инфраструктура виртуализации для Linux, для которой процессор с аппаратным расширением виртуализации может принимать гостевые системы.

KVM — это удобное решение для тестирования различных операционных систем, если у вас нет возможности приобретать дорогостоящие и энергоемкие физические устройства.

В приведенном ниже руководстве представлена установка и настройка KVM (QEMU) вместе с конфигурацией Linux Bridge в операционной системе CentOS7 / RedHat7.

1. Проверьте поддержку виртуализации оборудования процессора

Наш процессор должен поддерживать аппаратную виртуализацию (VT-x), чтобы стать Hypervisor KVM и хостом виртуальных машин (гостевые операционные системы):

# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 2 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 42 Model name: Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz Stepping: 7 CPU MHz: 800.000 BogoMIPS: 4988.58 Virtualization: VT-x L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 3072K NUMA node0 CPU(s): 0-3

2. Отключите и остановите NetworkManager

Известно, что NetworkManager вызывает проблемы при работе с Linux Bridge, поэтому для нас лучше отключить его:

# systemctl stop NetworkManager # systemctl disable NetworkManager Removed symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service. Removed symlink /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service. Removed symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.

3. Установите пакеты, связанные с KVM

# yum install qemu-kvm qemu-img libvirt libvirt-python libvirt-client virt-install virt-viewer virt-manager

4. Запустите и включите демон libvirtd

# systemctl enable libvirtd # systemctl start libvirtd

5. Установите общесистемные привилегии для KVM

Нам нужно добавить нашего обычного пользователя tuxfixer в группу kvm, чтобы он мог запустить virt-manager

# usermod -a -G kvm tuxfixer

Нам также необходимо установить правила polkit (policy kit) для KVM.
Редактируем файл 49-polkit-pkla-compat.rules:

# vim /etc/polkit-1/rules.d/49-polkit-pkla-compat.rules

и добавьте следующее:

Polkit.addRule(function(action, subject) { if (action.id == "org.libvirt.unix.manage" && subject.isInGroup("kvm")) { return polkit.Result.YES; } });

6. Создайте мост KVM Linux Bridge (модемный сетевой интерфейс гипервизора KVM с сетевыми интерфейсами VM)

В этом уроке мы хотим, чтобы виртуальные машины получали свои IP-адреса из той же сети, где подключен хост KVM Hypervisor, поэтому мы подключим его основной сетевой интерфейс (em1) к сетевым интерфейсам VM.

Для этого нам нужно создать Linux Bridge из интерфейса em1 на хосте KVM Hypervisor.

Текущая конфигурация сети Hypervisor (сразу после установки KVM):

# ip a 1: lo: mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6::1/128 scope host valid_lft forever preferred_lft forever 2: em1: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether d0:67:e5:33:15:3f brd ff:ff:ff:ff:ff:ff inet 192.168.2.3/24 brd 192.168.2.255 scope global dynamic em1 valid_lft 73193sec preferred_lft 73193sec inet6 fe80::d267:e5ff:fe33:153f/64 scope link valid_lft forever preferred_lft forever 3: wlp3s0: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00:24:d7:f4:dc:e8 brd ff:ff:ff:ff:ff:ff 4: virbr0: mtu 1500 qdisc noqueue state DOWN link/ether 52:54:00:b7:22:b3 brd ff:ff:ff:ff:ff:ff inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 valid_lft forever preferred_lft forever 5: virbr0-nic: mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 500 link/ether 52:54:00:b7:22:b3 brd ff:ff:ff:ff:ff:ff

Файл конфигурации ifcfg-em1 (до создания моста KVM Linux Bridge):

# cat /etc/sysconfig/network-scripts/ifcfg-em1 DEVICE="em1" TYPE="Ethernet" BOOTPROTO="none" NAME="em1" ONBOOT="yes" HWADDR="D0:67:E5:33:15:3F" IPADDR=192.168.2.3 PREFIX=24 GATEWAY=192.168.2.1 PEERDNS="no" NM_CONTROLLED="no"

Для настройки сети KVM мы будем использовать приложение virt-manager, которое является удобным интерфейсом GUI для интерфейса командной строки KVM.

Примечание. Интерфейс virbr0 был создан автоматически вместе с установкой KVM и представляет виртуальную сеть, существующую «внутри» среды KVM с NAT (трансляция сетевых адресов).

Поскольку мы не нуждаемся в NAT в среде KVM (мы хотим скрыть интерфейс Hypervisor), мы можем удалить существующую виртуальную сеть KVM на основе интерфейса virbr0.

Запустите virt-manager от пользователя root:

# virt-manager

… должно появиться окно virt-manager:

Правый щелчок на QEMU/KVM -> Details -> Virtual Networks -> Disable network: “default” -> Delete network: “default” based on virbr0

Теперь мы можем подключить интерфейс Hypervisor KVM (em1):

Щелкните правой кнопкой мыши:QEMU/KVM -> Details -> Network Interfaces -> Add Interface :

  • Interface type: Bridge
  • Interface name: br-em1
  • Start mode: on boot
  • Activate now: enabled
  • IP settings: copy configuration from ’em1′
  • Bridge settings: STP on, delay 0.00 sec

… нажмите Finish, чтобы переопределить существующую конфигурацию и создать KVM Linux Bridge.

Теперь мы можем проверить вновь созданный Linux Bridge (br-em1):

Проверьте текущую конфигурацию IP (теперь IP назначается br-em1, а em1 действует теперь только как интерфейс):

# ip a 1: lo: mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6::1/128 scope host valid_lft forever preferred_lft forever 2: em1: mtu 1500 qdisc pfifo_fast master br-em1 state UP qlen 1000 link/ether d0:67:e5:33:15:3f brd ff:ff:ff:ff:ff:ff 3: wlp3s0: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00:24:d7:f4:dc:e8 brd ff:ff:ff:ff:ff:ff 6: br-em1: mtu 1500 qdisc noqueue state UP link/ether d0:67:e5:33:15:3f brd ff:ff:ff:ff:ff:ff inet 192.168.2.3/24 brd 192.168.2.255 scope global br-em1 valid_lft forever preferred_lft forever inet6 fe80::d267:e5ff:fe33:153f/64 scope link valid_lft forever preferred_lft forever

Проверьте настройку моста:

# brctl show bridge name bridge id STP enabled interfaces br-em1 8000.d067e533153f yes em1

Теперь KVM Linux мост настроен, и мы можем продолжить установку виртуалки.



Загрузка...