Глава 1. Понимание Proxmox VE и расширенная установка

Как мы сегодня знаем, виртуализация является старой технологией, насчитывающей десятилетия, которая впервые была реализована в 1960-х. Виртуализация служила способом логического разделения ресурсов мэйнфрейма для различных прикладных процессов. С возрастанием стоимости энергии работа на недозагруженном оборудовании больше не является роскошью. Виртуализация позволяет нам делать большее при меньших усилиях и, тем самым, сохранять энергию и средства создавая виртуальные зелёные центры обработки данных без каких- либо географических ограничений.

Гипервизор является частью программного обеспечения, оборудования или встроенного ПО, которое создаёт виртуальные машины и управляет ими. Он лежит в основе платформы или фундамента, который делает возможным построение виртуального мира. В некотором смысле, это самый существенный строительный блок всей виртуализации. Гипервизор голого железа (bare metal) выступает в роли моста между физическим оборудованием и виртуальными машинами путём создания уровня абстракции. Благодаря своим уникальным свойствам целая виртуальная машина может быть перемещена на значительное расстояние через Интернет при сохранении выполнения своей функциональности при этом. Виртуальная машина не видит напрямую аппаратные средства; вместо этого она видит уровень гипервизора, который остаётся одним и тем же вне зависимости от того, на каком оборудовании установлен гипервизор.

Proxmox Virtual Environment (VE) является гипервизором на основе кластера и одной из наиболее сохранившихся тайн в мире виртуализации. Причина проста. Он позволяет вам строить вам виртуальную инфраструктуру корпоративного бизнес- класса при небольших ценниках бизнес- уровня без жертв надёжности, производительности и простоте применения. Будь то массивный центр обработки данных для обслуживания миллионов людей, или небольшое образовательное учреждение, или домашнее обслуживание важных членов семейства, Proxmox может обрабатывать настройки удобные для любого случая.

Если вы подцепили эту книгу, несомненно, вы знакомы с виртуализацией и, возможно, хорошо осведомлены о прочих гипервизорах, таких как VMWare, Xen, Hyper-V и тому подобных. В этой и последующих главах мы увидим могущественную силу Proxmox изнутри. Мы испробуем различные сценарии и создадим сложную виртуальную среду. Мы возьмёмся за некоторые тяжёлые проблемы ежедневной рутины и покажем решения, которые могут просто сохранять ваш день в среде производства. Поэтому впрягайтесь и давайте погрузимся в виртуальный мир могучего гипервизора, Proxmox VE.

[Замечание]Замечание

{Прим. пер.: Это может показаться забавным, однако с некоторых пор стало возможным построение бесплатной среды виртуализации на основе гипервизора Hyper-V с бесплатной же системой хранения Storage Spaces, обладающей современными функциональностью и мощностью сопоставимыми, например, с Ceph. Хотя она и ограничена в масштабировании применением аппаратных технологий SAS/ FC. Остаётся дождаться смещения Storage Spaces Direct (S2D) в сферу халявного применения, чтобы имеющаяся в Непосредственно подключаемых пространствах хранения Программно определяемая шина хранения (Software Storage Bus), заменяющая собой SAS/FC, смогла составить конкуренцию системам хранения уровня Ceph!}

 Понимание функциональности Proxmox

Перед тем как углубиться, необходимо понимать почему следует выбрать Proxmox против всех остальных основных гипервизоров. Proxmox не является идеальным, однако выделяется из числа прочих претендентов с труднопобедимыми свойствами. Далее мы остановимся на некоторых функциях, которые делают Proxmox действительным переломным моментом.

  Бесплатно!

Да, Proxmox бесплатен! Чтобы быть более точным, Proxmox имеет определённые уровни, на которых редакция сообщества полностью бесплатна. Любой может просто загрузить Proxmox ISO без оплаты и получить полнофункциональный кластер без утраты отдельных свойств и при этом ничего не заплатив. Основная разница между оплаченным уровнем и уровнем подписки сообщества состоит в том, что оплатившие подписку получают обновления, которые прошли сквозь дополнительную проверку и улучшения. Если вы работает на промышленном кластере, с реальными рабочими нагрузками, настоятельно рекомендуется чтобы вы оплатили поддержку и лицензии Proxmox или продавцам Proxmox.

  Встроенный межсетевой экран

Proxmox VE поставляется с надёжным межсетевым экраном, замечательно готовым к настройке. Этот межсетевой экран может быть настроен для защиты всего кластера вплоть до каждой виртуальной машины. Параметры настройки для ВМ дают вам возможность настраивать каждую ВМ индивидуально создавая персонализированные правила межсетевого экрана, выдающуюся возможность в виртуальной среде со множеством владельцев. Мы изучим эту функциональность подробнее в Главе 8. Межсетевой экран Proxmox.

  Open vSwitch

Лицензируемый в соответствии с лицензией Apache 2.0, Open vSwitch является виртуальным коммутатором, разработанным для применения в виртуальных средах со множеством серверов. Open vSwitch расширяет функционалиность стандартного моста Linux в постоянно меняющейся виртуальной среде. Proxmox полностью поддерживает Open vSwitch, что даёт вам возможность создавать замысловатую виртуальную среду в течение всего этого времени, уменьшая накладные расходы управления виртуальной сетевой средой. Подробнее об Open vSwitch на openvswitch.org/.

Мы изучим управление Open vSwitch для Proxmox в Главе 7. Сетевая среда виртуальных сетей.

  Графический интерфейс пользователя

Proxmox поставляется с замечательным полностью функциональным пользовательским графическим интерфейсом, или GUI. GUI позволяет администратору управлять и настраивать практически все аспекты кластера Proxmox. GUI был разработан с соблюдением сохранения простоты с функциями и свойствами разделёнными на меню для более простой навигации. Следующий экранный снимок демонстрирует пример инструментальной панели GUI Proxmox:

 

Рисунок 1



Мы препарируем инструментальную панель GUI Proxmox в Главе 2. Обзор графического интерфейса Proxmox.

  KVM

KVM, или виртуальная машина на основе ядра (Kernel-based virtual machine) является модулем ядра, который добавляет в Linux полную виртуализацию для создания изолированных, полностью независимых виртуальных машин. ВМ KVM никаким образом не зависят от операционной системы хоста, однако им необходимо включение свойств виртуализации в BIOS {Прим. пер.: firmware}. KVM делает доступным для виртуальных машин большое разнообразие операционных систем, например, Linux и Windows. Proxmox предоставляет очень стабильную среду для ВМ на основе KVM. Мы изучим как создавать ВМ KVM, а также как управлять ими в Главе 5. Виртуальные машины KVM.

  Контейнеры Linux или LXC

Недавно представленные в Proxmox 4.0 контейнеры Linux делают доступными множество экземпляров Linux на одном и том же хосте Linux. Все контейнеры зависят от операционной системы Linux хоста и только разновидности Linux могут быть виртуализированы в качестве контейнеров. Не существует контейнеров для операционной системы Windows. {Прим. пер.: можно поспорить с автором и предложить Docker for Windows, например, см. Windows Containers on Windows Server}. LXC замещает имевшиеся ранее OpenVZ, которые применялись первыми контейнерами в методе виртуализации в предыдущих версиях Proxmox. {Прим. пер.: см. Преобразование OpenVZ в LXC.} Для знакомства с LXC и получения подробностей отсылаем вас к linuxcontainers.org.

Подробнее мы изучим как создавать контейнеры LXC и управлять ими в Главе 7. Сетевая среда виртуальных сетей.

  Встраиваемые модули хранения

В стандартной поставке Proxmox VE поддерживает разнообразные системы хранения для размещения образов виртуальных дисков, шаблонов ISO, резервных копий и тому подобного. Все подключаемые модули совершенно стабильны и великолепно работают с Proxmox. Будучи способными выбирать различные системы хранения, системный администратор получает гибкость усиленной поддержки существующими хранилищами в сетевой среде. Касательно Proxmox VE 4.0 поддерживаются следующие подключаемые модули (plugin) хранилищ:

  • точки монтирования локальных каталогов

  • iSCSI

  • группы LVM

  • совместные ресурсы NFS

  • GlusterFS

  • Ceph RBD

  • ZFS

Различные системы хранения и типы файлов, которые они могут хранить, мы подробнее изучим в Главе 4. Системы хранения.

  Энергичное сообщество

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

 Базовая установка Proxmox

Установка узла Proxmox достаточно прямолинейна. Просто примите параметры по умолчанию, выберите локализацию и введите информацию о сетевой среде для установки Proxmox VE. Мы можем подытожить процесс установки в следующих этапах:

  1. Загрузите ISO с официального сайта Proxmox и подготовьте диск с образом (proxmox.com/en/downloads). {Прим. пер.: если хотите воспользоваться загрузкой с USB- устройства, примените одно из средств для переноса ISO на флеш-носитель с сохранением возможности загрузки, например: http://unetbootin.github.io/, или http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-windows.}

  2. Загрузите узел с этого диска и нажмите Enter для начала установки с установочным GUI. Вы можете устанавливать Proxmox с диска USB.

  3. Пройдите по всем приглашениям на ввод для выбора параметров или типов информации.

  4. После завершения установки получите доступ к инструментальной панели GUI Proxmox с применением полученного IP адреса, например:

    
    https://<proxmox_node_ip>:8006
     	   
  5. В некоторых случаях может потребоваться открыть в межсетевом экране порт для доступности GUI через порт 8006. {Прим. пер.: Так как, скорее всего, в данной установке вы не используете зарегистрированный в уполномоченном центре ключ SSL (TLS), а применяете собственный, вы получите предупреждение от браузера об отсутствии у данного ключа подтверждения полномочия и должны внести в свой браузер исключение для данной ссылки. Подробнее: см. раздел 1.3 Первичная регистрация в уже указанном переводе книги 4-в-1.}

 Параметры расширенной установки

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

Общая практика для диска операционной системы состоит в применении зеркального массива RAID с применением интерфейса контроллера. Это предоставляет избыточность дисков на случай, если откажет один из них. Тот же уровень избыточности может быть достигнут с применением массива RAID на программной основе, например, такой как ZFS {Прим. пер.: подробнее, см. RAID-Z против обычного RAID.} В настоящее время Proxmox предлагает параметры для выбора массива на основе ZFS для диска операционной системы при начале вашей установки. Подробнее о ZFS, если вы ещё не знакомы с ней, можете ознакомиться в en.wikipedia.org/wiki/ZFS. {Прим. пер.: также рекомендуем наши переводы книг Майкла В. Лукаса и Аллана Джуда Мастерство FreeBSD: ZFS (2015) и и Мастерство FreeBSD: ZFS для профессионалов (2016). Весь перечень переводов приведён на странице сайта http://CloudComputing.mdl.ru.}

[Замечание]Замечание

Существует распространённая просьба объяснить почему следует выбирать RAID ZFS на программной основе вместо проверенного RAID на базе аппаратных средств. Простой ответ заключается в гибкости. RAID на базе оборудования замыкается или полностью зависит от интерфейса контроллера RAID, который создавал данный массив, в то время как RAID ZFS на программной основе не зависит ни от какого типа аппаратных средств и этот массив легко может быть перенесён на различные аппаратные узлы. В случае отказа RAID контроллера будет утрачен весь массив созданный этим контроллером, если у вас нет контроллера с идентичным интерфейсом на замену. Массив ZFS будет потерян только если все диски или максимально допустимое число дисков будут утрачены в вашем массиве.

Помимо ZFS, в тех же расширенных параметрах мы также можем выбирать типы других файловых систем, например, ext3, ext4 или xfs. Следующий снимок экрана показывает интерфейс установки со страницей Target Harddisk:

 

Рисунок 2



Кликните Options как показано на предыдущем снимке экрана для открытия расширенного набора параметров для вашего жёсткого диска. Следующий экранный снимок показывает окно параметров после нажатия на кнопку Options:

 

Рисунок 3



В предыдущем экранном снимке мы выбрали ZFS RAID1 для зеркалирования и два диска, Harddisk 0 и Harddisk 1, соответственно, для установки Proxmox. Если мы выберем одну из файловых систем, таких как ext3, ext4 или xfs вместо ZFS, блок диалога Harddisk options будет выглядеть как следующий снимок экрана, то есть, другой набор параметров:

 

Рисунок 4



Выбранная файловая система даёт нам следующие дополнительные параметры:

  • hdsize: Это общий объём диска, который будет использован при установке Proxmox.

  • swapsize: Определяет размер раздела подкачки.

  • maxroot: Определяет максимальный размер для применения к разделу root.

  • minfree: Определяет минимум свободного пространства, которое должно оставаться после вашей установки Proxmox.

  • maxvz: Определяет максимальный размер для раздела данных. Обычно это /var/lib/vz.

 Отладка установки Proxmox

Средства отладки являются частью любой хорошей операционной системы. Proxmox имеет средства отладки, которые помогут вам в случае отказа при установке. Некоторыми обычными причинами являются не поддерживаемое оборудование, конфликты между устройствами, ошибки образов ISO и тому подобное. Режим отладки протоколирует и отображает активность в реальном времени. В случае отказа стандартной установки мы можем запустить установку Proxmox в режиме отладки из интерфейса основной установки, как это отображено на следующем снимке экрана:

 

Рисунок 5



Режим отладочной установки присоединит нас к следующему приглашению. Чтобы начать установку нам нужно нажать Ctrl + D. Если в процессе установки появится ошибка, мы можем просто нажать Ctrl + C чтобы вернуться назад в эту консоль чтобы продолжить расследование:


Proxmox startup
mountinting proc filesystcn 
mountinting sys filesysten 
commandline: BOOT_IMAGE=/boot/linux26 ro ramdisk_size=16777216 rw quiet splash=verbose proxdebug 
loading drivers: i2_pilx4 shpchp pata_acpi 8250_fintek floppy nac_hid input_leds serio_raw psmouse pcspkr 
searching for cdrom 
testing cdrom /dev/sr0 
found proxnox cdrom 
Debugging node (type exit or CTRL-D to continue startup) 
/ #
 	   

В этой консоли мы можем проверить наш журнал установки при помощи следующей команды:


# cat /tmp/install.log
 	   

В меню основной установки мы можем нажать e для входа в режим редактирования для изменения информации нашей загрузки, как это показано на следующем снимке экрана:

 

Рисунок 7



Иногда может оказаться необходимым изменение информации вашей загрузки при отказе в работе нормальной загрузки. Существует типичный случай, при котором Proxmox не способен отобразить видео вывод из- за UEFI или из- за не поддерживаемого режима разрешения. При этом процесс загрузки может прерваться. Один из способов продолжить загрузку состоит в добавлении параметра nomodeset изменив вашу загрузку. После редактирования загрузчик будет выглядеть следующим образом:


linux/boot/linux26 ro ramdisk_size=16777216 rw quiet nomodeset
 	   

 Персональная настройка заставки Proxmox

При построении персонального решения Proxmox может потребоваться замена голубого экрана заставки по умолчанию на что-то более привлекательное для идентификации компании или подразделения, к которому относится этот сервер. В данном разделе мы увидим как просто встроить любое изображение в ваш фоновый экран заставки.

Образ экрана заставки должен быть в формате .tga и должен иметь фиксированные стандартные размеры, например, 640 x 480, 800 x 600 или 1024 x 768. Если у вас нет никакого программного обеспечения поддержки рисунков в формате .tga, вы можете просто преобразовать некое изображение jpg, gif или png в .tga с использованием любого свободного конвертера изображений (например, http://image.online-convert.com/convert-to-tga).

Когда нужное вам изображение готово в формате .tga, следующие шаги встроят вашу картинку в качестве экранной заставки Proxmox:

  1. Скопируйте своё изображение .tga в каталог /boot/grub.

  2. Измените файл grub в /etc/default/grub добавив следующий код и кликнув save:

    
    GRUB_BACKGROUND=/boot/grub/<image_name>.tga
     	   
  3. Для обновления настройки grub выполните следующую команду:

    
    # update-grub
     	   
  4. Выполните перезагрузку.

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

 

Рисунок 8


Изображение дружелюбности www.techcitynews.com

Также вы можете изменить цвет шрифта чтобы сделать его более отличительным в зависимости от применяемого персонального изображения. Для изменения цвета шрифта откройте для редактирования файл темы debian в /etc/grub.d/05_debian_theme и найдите следующую строку кода:


set_background_image "${GRUB_BACKGROUND}" || set_default_theme
 	   

Измените эту строку, добавив цвет шрифта, как это показано в следующем формате. В нашем примере мы изменяем цвет шрифта на чёрный, а цвет выделения на светло голубой:


set_background_image "${GRUB_BACKGROUND}" "black/black" "light-blue/black" || set_default_theme
 	   

По завершению внесения необходимых изменений обновите grub и выполните перезагрузку, чтобы увидеть внесённые изменения.

 Выводы

В данной главе мы рассмотрели почему Proxmox является хорошим вариантом гипервизора, какие расширенные параметры установки доступны в процессе её выполнения и почему мы выбираем RAID на основе программного обеспечения для диска операционной системы. Мы также рассмотрели стоимость Proxmox, параметры хранения и гибкость сетевой среды при использовании Open vSwitch. Мы изучили присутствие средств отладки и параметры персонализации экрана заставки Proxmox.

В следующей главе мы ближе рассмотрим GUI Proxmox и увидим как прост он для централизованного управления кластером Proxmox из веб- браузера.