KVM & OpenVZ виртуализация и облачные вычисления с использованием Proxmox VE

Автор оригинала: Falko Timme
  • Перевод
Вступление

Proxmox Virtual Environment (Proxmox VE) — система виртуализации с открытым исходным кодом, основанная на Debian GNU/Linux. Разрабатывается австрийской фирмой Proxmox Server Solutions GmbH, спонсируемой Internet Foundation Austria.
В качестве гипервизоров использует KVM и OpenVZ. Соответственно, способна выполнять любые поддерживаемые KVM ОС (Linux, *BSD, Windows и другие) с минимальными потерями производительности и Linux без потерь.
Управление виртуальными машинами и администрирование самого сервера производятся через веб-интерфейс либо через стандартный интерфейс командной строки Linux.
Для создаваемых виртуальных машин доступно множество опций: используемый гипервизор, тип хранилища (файл образа или LVM), тип эмулируемой дисковой подсистемы (IDE, SCSI или VirtIO), тип эмулируемой сетевой карты, количество доступных процессоров и другие.
ru.wikipedia.org/wiki/Proxmox_Virtual_Environment

Важно знать, что:

— Proxmox VE использует только x86_64 архитектуру.
— Для использования KVM Ваш процессор должен поддерживать аппаратную виртуализацию (Intel VT или AMD-V). Для OpenVZ аппаратная виртуализация не требуется.

Конфигурация кластера

В этой статье мы будем создавать кластер из двух машин.
Конфигурация будет такой:

Master server1.example.com IP 192.168.0.100
Slave server2.examle.com IP 192.168.0.101

Скачать сам дистрибутив можно по этому адресу: pve.proxmox.com/wiki/Downloads

P.S Дистрибутив распространяется по лицензии GPL
Создание и управление виртуальными машинами будет происходить на master сервере.


Установка master & slave серверов

Приступим к установке master сервера (server1.example.com, IP 192.168.0.100)

После загрузки CD жмем Enter



Принимаем лицензионное соглашение



Далее жмем Install



Заполняем поля с Страну, выбираем Часовой пояс, и раскладку клавиатуры



Указываем Пароль пользователя root, подтверждения пароля, и почтовый адрес



Теперь приступаем к конфигурации сети нашего кластера, в данном случае у нас Hostname server1.example.com

IP 192.168.0.100
NETMASK 255.255.255.0
GATEWAY 192.168.0.1
DNS 145.253.2.75



Если Вы уже заметили то при установке дистрибутив не требует создания разделов. Он сам автоматически создает разделы используя LVM. Это сделано потому что Proxmox дает возможность делать backups наших snapshot виртуальных машин.



После окончания установки жмем Reboot



Control Panel

Как только система загрузилась попасть в нее можно по http или https (При обращении к протоколу http будете автоматически переброшены на https)
В нашем случае мы набираем 192.168.0.100 и попадаем в раздел администрирования нашим кластером, заполняем Username и Password



Главная страница нашей веб морды



Удостоверившись, что наш сервер работает переходим к установке slave сервера или же ноды, процесс установки идентичен процессу установки master, только указываем имя сервера и IP адреса соответственно как мы упомянули выше. В нашем случае slave сервер будет иметь имя server2.example.com c IP адресом 192.168.0.101



После успешного процесса установки slave сервера, заходим по SSH на наши сервера server1.example.com и server2.example.com и выполним несколько команд:

server1:

pveca -c
server1:~# pveca -c
Generating public/private rsa key pair.
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ce:bf:a2:cd:69:23:e4:78:fc:05:db:fc:55:ef:52:1d root@server1
cluster master successfully created
server1:~#


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

pveca -l
server1:~# pveca -l
CID----IPADDRESS----ROLE-STATE--------UPTIME---LOAD----MEM---ROOT---DATA
1 : 192.168.0.100 M A 00:14 0.00 5% 1% 0%
server1:~#


server2:

pveca -a -h 192.168.0.100
server2:~# pveca -a -h 192.168.0.100
Generating public/private rsa key pair.
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ea:ad:21:fc:5d:9b:af:ab:fb:0d:72:72:c7:94:23:ca root@server2
The authenticity of host '192.168.0.100 (192.168.0.100)' can't be established.
RSA key fingerprint is 7c:17:8c:35:9c:be:60:6b:56:97:2a:0b:72:60:57:09.
Are you sure you want to continue connecting (yes/no)? <-- yes
Warning: Permanently added '192.168.0.100' (RSA) to the list of known hosts.
root@192.168.0.100's password: <-- root password of server1.example.com
cluster node successfully created
server2:~#


Еще раз проверяем состояние нашего кластера

server2:

pveca -l
This should display both servers in the output:
server2:~# pveca -l
CID----IPADDRESS----ROLE-STATE--------UPTIME---LOAD----MEM---ROOT---DATA
1 : 192.168.0.100 M S 00:15 0.00 5% 1% 0%
2 : 192.168.0.101 N S 00:04 0.08 15% 1% 0%
server2:~#


Выведеный результат нам показывает что сервер с IP адресом 192.168.0.100 у нас Master(M), а сервер с IP 192.168.0.101 у нас Node(N)

Теперь вернемся в Proxmox CP(Central Panel) и добавим шаблоны для наших будущих виртуальных машин. Для добавления шаблона перейдем в раздел Appliance Templates. Во кладке Downloads представлен список шаблонов предоставляемых в рамках проекта Proxmox VE. Указаны названия дистрибутивов, версия и тип виртуализации. Но сразу хочу пояснить про один нюанс. Ссылки в списке битые. Поэтому шаблон мы будем сначала скачивать и добавлять вручную.



Страница для скачивания доступна по этому адресу download.proxmox.com/appliances

Выбираем нужный нам шаблон, скачиваем на свой PC, переходим на вкалдку Local и загружаем его. Также по мимо теплейтов можно загружать и ISO образы для KVM виртуализации.



Создание OpenVZ контейнер

Для создания контейнера перейдем в раздел Virtual Machines > Create…





Type — Контейнер OpenVZ
Template — Шаблон для ВМ
Hostename — имя хоста к примеру vm1.example.com
Memory (MB) — Объем памяти
Swap (MB) — Общем виртуальной памяти
Password — пароль пользователя root
Confirm Password — подтверждение пароля
VMID — идентификатор
Cluster Node — выбираем кластер, в нашем случае он 1
Start at boot -автоматический запуск контейнера
Disk space — объем дисковой системы.
Virtual Network — Выбираем venet и задаем IP адрес для нашей VM
DNS domain — домен (example.com)
Первичный DNS сервер
Вторичный DNS сервер

Далее нажимаем Create.



Во вкладке List должен отобразится созданная нами VM
При выборе контейнера можно контролировать состояние работы VM, статус загрузки контейнера и т.д. Также можно запустить VNC control.





Создание виртуальных машин на удаленных системах в кластере
Для создания VM на удаленных системах в кластере нужно проделать тоже самое что было описано выше, только вместо server1(192.168.0.100) пункта Cluster Node выбранным свойством которого было выберем server2(192.168.0.101).



Если зайти заново во вкладку List то мы уже обнаружим что на сервере server2 тоже создалась виртуальная машина.



По KVM писать не стал т.к. процесс создания контейнера точно такой же как и для OpenVZ.


Ссылки на проекты
Proxmox VE: pve.proxmox.com/wiki/Main_Page
OpenVZ: wiki.openvz.org
KVM: kvm.qumranet.com/kvmwiki

P.S.
Если Вы обнаружили ошибки или же не точность в переводе, пожалуйста пишите в ЛС, буду исправлять.
Поделиться публикацией
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама

Комментарии 19

    0
    В общем-то, ProxMox настолько прост, что особенно в таких инструкциях и не нуждается. Но все равно, спасибо за труд, может кому-то пригодится.
    А я все жду версию 2.0, много плюшек обещают, особенно по части интерфейса.
      +1
      Возможно не каждый знает об этом продукте, вот я и решил сделать перевод как показатель простоты.
      0
      Использую Proxmox VE в офисе около года на двух не брендированых intel серверах, все очень нравиться, единственное в версии 1.7 не работал автоматический бекап виртуалок, но после обновления мастера и ноды до версии 1.8 все стало нормально. Ждемс версии 2.0 в которой обещают интерфейс на ext js + восстановление из web интерфейса и автоматическое резервирование.
        0
        а как они мигарцию квм сделали без шаред сторейджа?
          0
          Вроде никак, нужно останавливать. С шаред работает.
            0
            Без выделенного shared — можно, просто объединить диски машин в кластере в DRBD, создать поверх LVM, и хранить образы ВМ там. Миграция вполне работает, более того, работает live-миграция, т.е. все без остановки ВМ переезжает на другой хост кластера.
              0
              >можно, просто объединить диски машин в кластере в DRBD
              ну это для системы тоже самое
                0
                Не понял ответа. Shared, как таковой, за счет DRBD будет, но под него не потребуется выделенной железки — это неплохо.

                Т.е., можно сэкономить в схеме на внешнем выделенном хранилище, это хорошо. Плохо, что на такое хранилище не положишь ничего, что требует высокой нагрузки на диск. Но тут уж каждый выбирает по задаче.
                  0
                  я имел ввиду что для ОС это будет выглядить как шаред)

                  > Плохо, что на такое хранилище не положишь ничего, что требует высокой нагрузки на диск.

                  ну запись в DRBD ограничена скоростью сети между нодами
                  если сеть ОК, то скоростью дисков + оверхед на процесах самого DRBD
                  а чтение теоретически такое же как и с локальных
            0
            FAilover хотя бы примитивный есть?
              0
              Обещают в версии 2.0
              0
              Да, классная штука. Если нужно быстро развернуть пару виртуалок на openvz — самое оно. KVM не пробовал, особой нужды пока не было.
                0
                ИМХО, но все же лучше настроить вручную KVM и OpenVZ чем использовать надстройку над ними.
                  0
                  Почему? Если с надстройкой в разы удобнее.
                  А если виртуалок полсотни и больше, то вручную уже не прокатит ))
                    0
                    Когда настраиваешь вручную, то изучаешь тонкости LVM, DRBD, KVM и всего остального. А когда используешь интегратор — только мышкой щелкаешь. А случись чего, придется лезь в мануалы в срочном порядке. Это как WinAD — поставит каждый, а сервак воскресит только специалист (особенно если на нем уникальные роли). Кроме того, иногда не хватает возможностей интеграторов и приходится приделывать к ним костыли.
                  0
                  Есть еще такая старенькая вещь как HyperVM (не путать с MS Hyper-V) умеет примерно тоже, только OpenVZ или XEN.
                    0
                    Жаль, что про KVM не рассказали, у KVM есть именно live-миграция, без остановки ВМ.
                      0
                      В статье было только стандартное применение. Но если наткнусь на интересные реализации по KVM то обязательно опубликую.
                      0
                      Используем Proxmox как альтернативу VMware.

                      Гостевые системы на Proxmox работают отзывчивее чем на ESXi 4.1, iSCSI работает быстрее, не нужен допольнительный координирующий сервер (для полноценной работы VMware нужен vCenter Server), не нужен тяжеловесный клиент (есть web интерфейс) и плюс к этому получается большая экономия железа при исопльзовании DRBD.

                      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                      Самое читаемое