Proxmox руководство на русском

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

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

К счастью, попробовать как работает виртуализация достаточно просто. Мы покажем, как создать сервер в виртуальной среде, например, для переноса CRM-системы, используемой в компании. Практически любой физический сервер можно превратить в виртуальный, но вначале необходимо освоить базовые приемы работы. Об этом и пойдет речь ниже.

Как это устроено

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

  • Гипервизор – специальное программное обеспечение, которое позволяет создавать виртуальные машины и управлять ими;
  • Виртуальная машина (далее VM) – это система, представляющая собой логический сервер внутри физического со своим набором характеристик, накопителями и операционной системой;
  • Хост виртуализации — физический сервер с запущенным на нем гипервизором.

Для того чтобы сервер мог работать полноценным хостом виртуализации, его процессор должен поддерживать одну из двух технологий – либо Intel® VT, либо AMD-V™. Обе технологии выполняют важнейшую задачу — предоставление аппаратных ресурсов сервера виртуальным машинам.

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

Внедрение виртуализации дает возможность иметь в наличии несколько запущенных копий одного сервера. Критический сбой или ошибка, в процессе внесения изменений в такую копию, никак не повлияет на работу текущего сервиса или приложения. При этом также снимаются две основные проблемы – масштабирование и возможность держать «зоопарк» разных операционных систем на одном оборудовании. Это идеальная возможность совмещения самых разных сервисов без необходимости приобретения отдельного оборудования для каждого из них.

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

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

  • VMware ESXi
  • Microsoft Hyper-V
  • Open Virtualization Alliance KVM
  • Oracle VM VirtualBox

Они все достаточно универсальны, однако, у каждого из них имеются определенные особенности, которые следует всегда учитывать на этапе выбора: стоимость развёртывания/обслуживания и технические характеристики. Стоимость коммерческих лицензий VMware и Hyper-V весьма высока, а в случае возникновения сбоев, решить проблему с этими системами собственными силами очень непросто.

KVM же напротив, полностью бесплатен и достаточно прост в работе, особенно в составе готового решения на базе Debian Linux под названием Proxmox Virtual Environment. Именно эту систему мы можем порекомендовать для первоначального знакомства с миром виртуальной инфраструктуры.

Как быстро развернуть гипервизор Proxmox VE

Установка чаще всего не вызывает никаких вопросов. Скачиваем актуальную версию образа с официального сайта и записываем его на любой внешний носитель с помощью утилиты Win32DiskImager (в Linux используется команда dd), после чего загружаем сервер непосредственно с этого носителя. Наши клиенты, арендующие у нас выделенные серверы, могут воспользоваться двумя еще более простыми путями – просто смонтировав нужный образ непосредственно из KVM-консоли, либо используя наш PXE-сервер.

Программа установки имеет графический интерфейс и задаст всего лишь несколько вопросов.

  1. Выбираем диск, на который будет выполнена установка. В разделе Options можно также задать дополнительные параметры разметки.

  2. Указываем региональные настройки.

  3. Указываем пароль, который будет использоваться для авторизации суперпользователя root и E-mail адрес администратора.

  4. Указываем сетевые настройки. FQDN обозначает полностью определенное имя домена, например, node01.yourcompany.com.

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

    Веб-интерфейс управления станет доступен по адресу

    https://IP_адрес_сервера:8006

Что нужно сделать после установки

Есть несколько важных вещей, которые следует выполнить после установки Proxmox. Расскажем о каждой из них подробнее.

Обновить систему до актуальной версии

Для этого зайдем в консоль нашего сервера и отключим платный репозиторий (доступен только тем, кто купил платную поддержку). Если этого не сделать — apt сообщит об ошибке при обновлении источников пакетов.

  1. Открываем консоль и редактируем конфигурационный файл apt:
    nano /etc/apt/sources.list.d/pve-enterprise.list
  2. В этом файле будет всего одна строка. Ставим перед ней символ #, чтобы отключить получение обновлений из платного репозитория:
    #deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise
  3. Сочетанием клавиш Ctrl + X выполняем выход из редактора, отвечая Y на вопрос системы о сохранении файла.
  4. Выполняем команду обновления источников пакетов и обновления системы:
    apt update && apt -y upgrade

Позаботиться о безопасности

Мы можем порекомендовать установить популярнейшую утилиту Fail2Ban, защищающую от атак методом перебора паролей (брутфорс). Принцип ее работы заключается в том, что если злоумышленник превысит определенное количество попыток входа за указанное время с неверным логином/паролем, то его IP-адрес будет заблокирован. Срок блокировки и количество попыток можно указать в конфигурационном файле.

Исходя из практического опыта, за неделю работы сервера с открытым ssh-портом 22 и внешним статическим IPv4-адресом, было более 5000 попыток подобрать пароль. И около 1500 адресов утилита успешно заблокировала.

Для выполнения установки приводим небольшую инструкцию:

  1. Открываем консоль сервера через веб-интерфейс или SSH.
  2. Обновляем источники пакетов:
    apt update
  3. Устанавливаем Fail2Ban:
    apt install fail2ban
  4. Открываем конфигурацию утилиты на редактирование:
    nano /etc/fail2ban/jail.conf
  5. Изменяем переменные bantime (количество секунд на которые будет блокироваться злоумышленник) и maxretry (количество попыток ввода логина/пароля) для каждого отдельного сервиса.
  6. Сочетанием клавиш Ctrl + X выполняем выход из редактора, отвечая Y на вопрос системы о сохранении файла.
  7. Перезапускаем службу:
    systemctl restart fail2ban

Проверить статус работы утилиты, например, снять статистику блокировок заблокированных IP-адресов с которых были попытки перебора паролей SSH, можно одной простой командой:

fail2ban-client -v status sshd

Ответ утилиты будет выглядеть примерно так:

root@hypervisor:~# fail2ban-client -v status sshd
INFO   Loading configs for fail2ban under /etc/fail2ban
INFO     Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO     Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO   Using socket file /var/run/fail2ban/fail2ban.sock
Status for the jail: sshd
|- Filter
|  |- Currently failed: 3
|  |- Total failed:     4249
|  `- File list:        /var/log/auth.log
`- Actions
   |- Currently banned: 0
   |- Total banned:     410
   `- Banned IP list:

Аналогичным способом можно закрыть от подобных атак Web-интерфейс, создав соответствующее правило. Пример такого правила для Fail2Ban можно найти в официальном руководстве.

Начало работы

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

Настроить дисковые накопители

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

ВНИМАНИЕ! Приведенный ниже пример дисковой разметки можно использовать только для тестовых целей. Для эксплуатации в реальных условиях мы настоятельно рекомендуем использовать программный или аппаратный RAID-массив, чтобы исключить потерю данных при выходе дисков из строя. О том, как правильно приготовить дисковый массив к работе и как действовать в случае аварийной ситуации мы расскажем в одной из следующих статей

Предположим, что физический сервер имеет два диска — /dev/sda, на который установлен гипервизор и пустой диск /dev/sdb, который планируется использовать для хранения данных виртуальных машин. Чтобы система смогла увидеть новое хранилище, можно воспользоваться самым простым и эффективным методом — подключить его как обычную директорию. Но перед этим следует выполнить некоторые подготовительные действия. В качестве примера посмотрим, как подключить новый диск /dev/sdb, любого размера, отформатировав его в файловую систему ext4.

  1. Размечаем диск, создавая новый раздел:
    fdisk /dev/sdb
  2. Нажимаем клавишу o или g (разметить диск в MBR или GPT).
  3. Далее нажимаем клавишу n (создать новый раздел).
  4. И наконец w (для сохранения изменений).
  5. Создаем файловую систему ext4:
    mkfs.ext4 /dev/sdb1
  6. Создаем директорию, куда будем монтировать раздел:
    mkdir /mnt/storage
  7. Открываем конфигурационный файл на редактирование:
    nano /etc/fstab
  8. Добавляем туда новую строку:
    /dev/sdb1	/mnt/storage	ext4	defaults	0	0
  9. После внесения изменений сохраняем их сочетанием клавиш Ctrl + X, отвечая Y на вопрос редактора.
  10. Для проверки, что все работает, отправляем сервер в перезагрузку:
    shutdown -r now
  11. После перезагрузки проверяем смонтированные разделы:
    df -H

Вывод команды должен показать, что /dev/sdb1 смонтирован в директорию /mnt/storage. Это значит, что наш накопитель готов к работе.

Добавить новое хранилище в Proxmox

Авторизуемся в панели управления и заходим в разделы ДатацентрХранилищеДобавитьДиректория.

В открывшемся окне заполняем следующие поля:

  • ID — название будущего хранилища;
  • Директория — /mnt/storage;
  • Содержимое — выделяем все варианты (поочередно щелкая на каждом варианте).

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

Создать виртуальную машину

Для создания виртуальной машины выполняем следующую последовательность действий:

  1. Определяемся с версией операционной системы.
  2. Заранее закачиваем ISO-образ.
  3. Выбираем в меню Хранилище только что созданное хранилище.
  4. Нажимаем СодержимоеЗагрузить.
  5. Выбираем из списка ISO-образ и подтверждаем выбор нажатием кнопки Загрузить.

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

Создаем нашу первую виртуальную машину:

  1. Нажимаем Создать VM.
  2. Заполняем поочередно параметры: ИмяISO-ImageРазмер и тип жесткого дискаКоличество процессоровОбъем оперативной памятиСетевой адаптер.
  3. Выбрав все желаемые параметры нажимаем Завершить. Созданная машина будет отображена в меню панели управления.
  4. Выбираем ее и нажимаем Запуск.
  5. Переходим в пункт Консоль и выполняем установку операционной системы точно таким же образом, как и на обычный физический сервер.

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

Настроить автозапуск

По умолчанию Proxmox автоматически не запускает машины, но это легко решается буквально двумя щелчками мыши:

  1. Щелкаем по названию нужной машины.
  2. Выбираем вкладку ОпцииЗапуск при загрузке.
  3. Ставим галочку напротив одноименной надписи.

Теперь, в случае перезагрузки физического сервера, VM будет запущена автоматически.

Для продвинутых администраторов имеется еще и возможность указать дополнительные параметры запуска в разделе Start/Shutdown order. Можно явным образом указать в каком порядке следует запускать машины. Также можно указать время, которое должно пройти до старта следующей VM и время задержки выключения (если операционная система не успеет завершить работу, гипервизор принудительно ее выключит через определенное количество секунд).

Заключение

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

Proxmox VE — это действительно очень мощный и удобный инструмент для любого системного администратора; главное не бояться экспериментировать и понять, как это действительно работает.

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

Proxmox VE Administration Guide


  • Оглавление
  • УстановкаProxmox VE

Введение

  1. Централизованное управление
  2. Гибкое хранение
  3. Интегрированное резервное копирование и восстановление
  4. Кластер высокой доступности
  5. Гибкая настройка сети
  6. Встроенный брандмауэр
  7. Почему с открытым исходным кодом
  8. Ваши преимущества с Proxmox VE
  9. Получение помощи
  10. История проекта
  11. Улучшение документации Proxmox VE
  12. Перевод Proxmox VE

Proxmox VE — это платформа для запуска виртуальных машин и контейнеров. Он основан на Debian Linux и имеет полностью открытый исходный код. Для максимальной гибкости мы внедрили две технологии виртуализации: виртуализация уровня ядра — виртуальные машины (KVM) и виртуализацию уровня операционной системы — контейнеры (LXC).
Одной из главных целей проекта было максимально упростить администрирование. Вы можете использовать Proxmox VE на одном узле или собрать кластер из нескольких узлов. Все задачи управления могут быть выполнены с помощью нашего веб-интерфейса управления, и даже начинающий пользователь может установить и настроить Proxmox VE в течение нескольких минут.

Источник - документация Proxmox VE

  1. Централизованное управление

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

    Уникальный дизайн Multi-Master
    Интегрированный веб-интерфейс управления дает вам полный обзор всех ваших гостевых виртуальных машин KVM и контейнеров Linux, а так же всего вашего кластера. Вы можете легко управлять своими виртуальными машинами и контейнерами, хранилищем или кластером с помощью графического интерфейса. Нет необходимости устанавливать отдельный, сложный и дорогой сервер управления.
    Файловая система кластера Proxmox (pmxcfs)
    Proxmox VE использует уникальную файловую систему кластера Proxmox (pmxcfs), управляемую базой данных файловую систему для хранения файлов конфигурации. Это позволяет хранить конфигурацию тысяч виртуальных машин. С помощью corosync эти файлы реплицируются в режиме реального времени на всех узлах кластера. Эта файловая система хранит все данные внутри базы данных на диске, тем не менее, копия данных находится в оперативной памяти, которая обеспечивает максимальный размер хранилища 30 МБ — что более чем достаточно для тысяч виртуальных машин. Proxmox VE — единственная платформа виртуализации, использующая эту уникальную кластерную файловую систему.
    Веб-интерфейс управления
    Proxmox VE прост в использовании. Задачи управления могут быть выполнены через встроенный веб-интерфейс управления — нет необходимости устанавливать отдельный инструмент управления или какой-либо дополнительный центр управления с огромными базами данных. Инструментарий multi-master позволяет управлять всем кластером с любого узла кластера. Централизованное веб-управление, основанное на JavaScript Framework (Ex-tJS), дает вам возможность управлять всеми функциями из графического интерфейса пользователя, а также просматривать историю и системные журналы каждого отдельного узла. Это включает в себя выполнение заданий резервного копирования или восстановления, живую миграцию или действия, инициируемые HA(высокая доступность).
    Командная строка
    Для опытных пользователей, которые привыкли к удобству консоли Unix или Windows Powershell, Proxmox VE предоставляет интерфейс командной строки для управления всеми компонентами вашей виртуальной среды. Этот интерфейс командной строки имеет интеллектуальное завершение по клавише <Tab> и полную документацию в виде справочных страниц UNIX.
    REST API
    Proxmox VE использует RESTful API. Мы выбираем JSON в качестве основного формата данных, и весь API-интерфейс формализован с помощью JSON-Schema. Это позволяет быстро и легко интегрировать сторонние инструменты управления, такие как пользовательские среды размещения.
    Администрирование на основе ролей
    Вы можете тонко настроить доступ ко всем объектам (таким как виртуальные машины, хранилища, узлы и т. д.), используя управление пользователями и правами доступа на основе ролей. Это позволяет вам определять привилегии и помогает вам контролировать доступ к объектам. Эта концепция также известна как списки контроля доступа: Каждое разрешение определяет субъекта (пользователя или группу) и роль (набор привилегий) для определенного пути.
    Способы аутентификации
    Proxmox VE поддерживает различные способы аутентификации, такие как Microsoft Active Directory, LDAP, стандартная аутентификация Linux PAM или встроенный сервер аутентификации Proxmox VE.
  2. Гибкое хранение

    Модель хранения Proxmox VE очень гибкая. Образы виртуальных машин могут храниться в одном или нескольких локальных хранилищах или в общем хранилище, таком как NFS (Network File System) и в SAN (Storage Area Network). Ограничений нет, вы можете сконфигурировать столько определений хранилищ, сколько захотите. Вы можете использовать все технологии хранения, доступные для Debian Linux.
    Одним из основных преимуществ хранения виртуальных машин в общем хранилище является возможность оперативной миграции работающих машин без простоев, поскольку все узлы в кластере имеют прямой доступ к образам дисков виртуальных машин.
    В настоящее время мы поддерживаем следующие типы сетевых хранилищ:

    • LVM Group (поддержка сети с iSCSI targets)
    • iSCSI target
    • NFS Share
    • CIFS Share
    • Ceph RBD
    • Прямое использование iSCSI LUN
    • GlusterFS

    Поддерживаются следующие типы локальных хранилищ:

    • LVM Group (локально поддерживаемые устройства, такие как блочные устройства, FC устройства, DRBD и т. д.)
    • Каталог (хранилище на существующей файловой системе)
    • ZFS
  3. Интегрированное резервное копирование и восстановление

    Интегрированный инструмент резервного копирования ( vzdump ) создает последовательные снимки запущенных контейнеров и гостевых машин KVM. Он в основном создает архив данных VM или CT, который включает файлы конфигурации VM/CT.
    Живое («на лету») резервное копирование KVM работает для всех типов хранилищ, включая образы виртуальных машин в NFS, CIFS, iSCSI LUN, Ceph RBD. Новый формат резервного копирования оптимизирован для быстрого и эффективного хранения резервных копий виртуальных машин (разреженные файлы, данные из порядка, минимизированный ввод/вывод).

  4. Кластер высокой доступности

    Многоузловой кластер HA Proxmox VE позволяет определять высокодоступные виртуальные серверы. В основе кластера Proxmox VE HA лежат проверенные технологии Linux HA, обеспечивающие стабильные и надежные службы высокой доступности.

  5. Гибкая настройка сети

    Proxmox VE использует модель сетевого моста. Все виртуальные машины могут совместно использовать один мост, как если бы кабели виртуальной сети от каждого гостя были подключены к одному коммутатору. Для подключения виртуальных машин к внешнему миру мосты подключаются к физическим сетевым картам и им назначается конфигурация TCP/IP.
    Для дальнейшей гибкости доступны VLAN (IEEE 802.1q) и bonding/aggregation сетей. Таким образом, можно построить сложные, гибкие виртуальные сети для хостов Proxmox VE, используя всю мощь сетевого стека Linux.

  6. Встроенный Брандмауэр

    Встроенный брандмауэр позволяет фильтровать сетевые пакеты на любом интерфейсе виртуальной машины или контейнера. Общие наборы правил брандмауэра могут быть сгруппированы в «группы безопасности»

  7. Почему с открытым исходным кодом

    Proxmox VE использует ядро Linux и базируется на дистрибутиве Debian GNU / Linux. Исходный код Proxmox VE выпущен под лицензией GNU Affero General Public License, версия 3. Это означает, что вы можете в любое время проверить исходный код или внести свой вклад в проект самостоятельно.
    В Proxmox мы стремимся использовать программное обеспечение с открытым исходным кодом, когда это возможно. Использование программного обеспечения с открытым исходным кодом гарантирует полный доступ ко всем функциям , а также высокую безопасность и надежность. Мы считаем, что каждый должен иметь право доступа к исходному коду программного обеспечения, чтобы запускать его, изменять и отправлять изменения обратно в проект. Каждый может внести свой вклад, в то время как Proxmox гарантирует, что продукт всегда соответствует профессиональным критериям качества.
    Программное обеспечение с открытым исходным кодом также помогает снизить расходы и делает вашу базовую инфраструктуру независимой от одного поставщика.

  8. Ваши преимущества с Proxmox VE

    • Программное обеспечение с открытым исходным кодом
    • Отсутствие блокировки со стороны поставщика
    • Ядро Linux
    • Быстрая установка и простота в использовании
    • Веб-интерфейс управления
    • REST API
    • Большое активное сообщество
    • Низкие затраты на администрирование и простое развертывание.
  9. Получение Помощи

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

    • Список рассылки для пользователей: Список пользователей PVE
    • Основным каналом связи для разработчиков является:
      Список рассылки для разработчиков: Обсуждение разработки PVE
    Коммерческая поддержка
    Proxmox Server Solutions Gmbh также предлагает коммерческие планы абонентского обслуживания Proxmox VE. Системные администраторы со стандартным планом подписки могут получить доступ к выделенному порталу поддержки с гарантированным временем ответа, где разработчики Proxmox VE могут помочь им в случае возникновения проблемы. Пожалуйста, свяжитесь с отделом продаж Proxmox для получения дополнительной информации или скидок.
    Баг-Трекер
    Мы также запускаем публичный трекер ошибок на https://bugzilla.proxmox.com. Если вы когда-либо обнаружите проблему, вы можете отправить туда отчет об ошибке. Это позволяет легко отслеживать его статус, и вы получите уведомление, как только проблема будет решена.
  10. История проекта

    Проект стартовал в 2007 году, за ним последовала первая стабильная версия в 2008 году. В то время мы использовали OpenVZ для контейнеров и KVM для виртуальных машин. Возможности кластеризации были ограничены, а пользовательский интерфейс был простым (серверная веб-страница).
    Но мы быстро разработали новые функции с использованием стека кластеров Corosync, и внедрение новой кластерной файловой системы Proxmox (pmxcfs) стало большим шагом вперед, поскольку полностью скрывает сложность кластера от пользователя. Управлять кластером из 16 узлов так же просто, как управлять одним узлом.
    Мы также представили новый REST API с полной декларативной спецификацией, написанной на JSON-Schema. Это позволило другим людям интегрировать Proxmox VE в свою инфраструктуру и облегчило предоставление дополнительных услуг.
    Кроме того, новый REST API позволил заменить исходный пользовательский интерфейс современным приложением HTML5 с использованием JavaScript. Мы также заменили старый код консоли VNC на основе Java на noVNC. Таким образом, вам нужен только веб-браузер для управления виртуальными машинами.
    Поддержка различных типов хранилищ — еще одна важная задача. Примечательно, что Proxmox VE был первым дистрибутивом, который по умолчанию поставлял ZFS для Linux в 2014 году. Еще одной важной вехой стала возможность запуска и управления хранилищем Ceph на узлах гипервизора. Такие установки чрезвычайно рентабельны.
    Когда мы начинали, мы были в числе первых компаний, предоставляющих коммерческую поддержку KVM. Сам проект KVM непрерывно развивался и в настоящее время является широко используемым гипервизором. Новые функции добавляются с каждым выпуском. Мы разработали функцию оперативного резервного копирования KVM, которая позволяет создавать резервные копии с помощью snapshot в любом типе хранилища.
    Самым заметным изменением в версии 4.0 стал переход с OpenVZ на LXC. Контейнеры теперь тесно интегрированы и могут использовать те же функции хранения и сети, что и виртуальные машины.

  11. Улучшение документации Proxmox VE

    В зависимости от того, какую проблему вы хотите решить, вы можете использовать различные средства коммуникации для связи с разработчиками.
    Если вы заметили ошибку в текущей документации, используйте Proxmox bug tracker и предложите альтернативный текст/ формулировку.
    Если вы хотите предложить новый контент, это зависит от того, что вы хотите документировать:
    • если содержание является специфичным для вашей установки, статья wiki является лучшим вариантом. Например, если вы хотите задокументировать конкретные параметры для гостевых систем, например, какая комбинация драйверов Qemu лучше всего работает с менее популярной ОС, это идеально подходит для статьи в вики.
    • если вы считаете, что содержание вашего контента является достаточно общим, чтобы представлять интерес для всех пользователей, вам следует попытаться включить его в справочную документацию. Справочная документация написана в удобном для использования asciidoc document format. Для редактирования официальной документации необходимо клонировать репозиторий git по адресу git://git.proxmox.com/git и затем следовать документу README.adoc.
    Улучшать документацию так же просто, как редактировать статьи в Википедии, и является интересным шагом в разработке большого проекта с открытым исходным кодом.


    Примечание
    Если вы заинтересованы в работе с кодовой базой Proxmox VE, Wiki-документация для разработчиков покажет вам, с чего начать.

  12. Перевод Proxmox VE

    Многие пользователи говорят на языке, отличном от английского, и мы полагаемся на их вклад, который сделает Proxmox VE доступным для пользователей по всему миру. Мы всегда рады приветствовать новых локализаторов и приглашаем вас помочь в создании Proxmox VE.
    Наши языковые файлы доступны в виде git-репозитория. Если вы знакомы с git, мы будем рады видеть ваш вклад в соответствии с нашей документацией для разработчиков.
    Тем не менее, перевод не требует специальных технических навыков. Вы можете получить языковые файлы без настройки среды разработки здесь. Щелкните правой кнопкой мыши по ссылке «raw» на вашем языке и выберите «Сохранить ссылку как …». Не стесняйтесь отправлять ваш перевод напрямую в office(at)proxmox.com с подписанным лицензионным соглашением для авторов.
    Мы используем gettext для перевода Proxmox VE. В результате фактическая задача перевода состоит в том, чтобы записать перевод msgid в msgstr под ним. Такие инструменты, как Poedit, делают этот процесс более удобным, особенно для тех, кто не является программистом.


  • Оглавление
  • УстановкаProxmox VE

Вводный Курс В Proxmox Ve (1)

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

Blog

Основная информация

В случае небольшого опыта, как подобрать сервер для виртуализации и настроить его, объяснят специалисты технической поддержки провайдера timeweb.cloud. Но и самому желательно разбираться в терминах и технологиях, применяемых на удаленных серверах. Это упростит задачу перехода с физической на облачную IT-инфраструктуру или изначально развернуть мощности на базе удаленного ЦОД. Плюс позволит общаться с технарями провайдера на «одном языке».

Основные термины:

  1. Гипервизор. Специальные программы, предназначенные для создания виртуальных машин, их настройки, запуска, резервного копирования, восстановления, переноса на другой сервер. В качестве гипервизора Proxmox использует KVM и LXC.
  2. Виртуальная машина. Система, представляющая собой программный сервер с собственным набором «железа» (процессором, оперативной памятью, накопителем, сетевой картой и т.д.). При функционировании занимает часть реальных мощностей физического сервера. Такие системы принято сокращенно называть VM.
  3. Хост виртуализации. Непосредственно тот самый физический сервер, на базе которого будет проведено развертывание виртуальной машины или нескольких VM. От его параметров зависит, насколько мощными станут логические компьютеры. Например, если на нем стоит 24-ядерный процессор, есть возможность создания такого же количества 1-ядерных систем.

Обязательное требование к хостам — их процессор должен поддерживать хотя бы одну технологию виртуализации: Intel VT или AMD-V (это аппаратная поддержка выделения ресурсов на логические компьютеры). Интересная особенность такой системы заключается в прямом доступе ко всему имеющемуся «железу» из любой VM. При этом они остаются изолированными друг от друга, имеют индивидуальные настройки.

Возможности решения

Если объяснять виртуализацию проще, для чайников, то стоит упомянуть, что гипервизор играет роль «контроллера». Программа распределяет аппаратные ресурсы, приоритеты между VM, эмулирует необходимое с учетом стандартов, принятых в установленной операционной системе. Никаких ограничений по выбору операционной системы с Proxmox VE нет (Windows 7/10, Linux и т.д.).

Особенности виртуальных машин:

  1. Критический сбой, ошибки в работе одной VM никак не влияют на остальные.
  2. Масштабирование осуществляется простым копированием виртуального сервера
  3. Поломка «железа» не влияет на сохранность системы, главное — иметь резервную копию.
  4. Одну и ту же VM легко развернуть на сервере любого производителя.

Последнее заметно упрощает задачу по модернизации оборудования ЦОД. Провайдер меняет любое «железо» на более современное без необходимости учитывать совместимость с ПО. За счет применения тех же дисковых массивов вроде RAID 5, Proxmox вообще не заметит замену одного или несколько накопителей. Виртуализация физических серверов работает бесшовно, чтобы обеспечить заявленную доступность уровня Tier 3 (не менее 99,9%).

Пользуются популярностью несколько гипервизоров: VMware ESXi, Microsoft Hyper-V, Oracle VM VirtualBox, Open Virtualization Alliance KVM. Каждый продукт имеет свои особенности и различную стоимость. При сравнении цена играет важную роль, здесь однозначно выигрывает KVM в составе готового решения на базе Debian Linux — это Proxmox Virtual Environment или Proxmox VE. Отчасти потому, что оно полностью бесплатно, да еще и имеет открытый исходный код.

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

Последовательность действий:

  1. Заказать аренду выделенного сервера у провайдера.
  2. Смонтировать скачанный образ в качестве сменного диска.
  3. Выбрать диск, куда будет произведена установка продукта.
  4. В разделе Option задать дополнительные параметры (по необходимости).
  5. Внести региональные настройки, в нашем случае – Russia.
  6. Задать пароль для авторизации суперпользователя, указать email.
  7. Указать домен, IP-адрес сервера, маску подсети, основной шлюз и DNS-сервер.
  8. Перезагрузить компьютер кликом на кнопку Reboot.

Если речь идет о развертывании системы из ISO-образа на базе Debian, а не инсталляции файлом Proxmox Debian Install, последний пункт обязателен. В любом случае лучше это сделать, чтобы исключить вероятные сбои из-за другого софта, который пользователь ставил в ту же сессию. Остается запустить Proxmox и заняться настройкой виртуальной машины. Адрес веб-интерфейса выглядит следующим образом:

https://IP_адрес_сервера:8006

Первые действия после установки

Перед эксплуатацией продукта рекомендуется провести обновление до актуальной версии и внести настройки безопасности. Это обеспечит наличие всех предусмотренных разработчиком функций и отсутствие проблем (релизы как раз и обновляют ради добавления новых возможностей, устранения выявленных ошибок в коде).

Обновление приложения

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

1. Открыть консольное окно и следом файл конфигурации apt на редактирование:

nano /etc/apt/sources.list.d/pve-enterprise.list

2. Поставить символ # перед единственной строчкой, внесенной в него:

#deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise

3. Выйти из редактора комбинацией клавиш <CTRL + X>, ответив Y на запрос о принятии изменений.

Теперь можно выполнить обновление источников пакетов:

apt update

Рекомендуется скачивать новые версии всех имеющихся пакетов:

apt -y upgrade

Безопасность сетевого соединения

Шаг следующий — позаботиться о безопасности Proxmox Virtualization Environment. Все-таки VM чаще всего используют юридические лица, а у них масса информации, которую желательно хранить вне публичного доступа (коммерческие, персональные данные клиентов и т.д.). Как минимум нужно обезопасить систему от взлома путем перебора паролей, так называемого брутфорса. Эту задачу решит популярная утилита Fail2Ban.

Принцип работы такой защиты основан на контроле количества попыток авторизации. Если некто превысит указанный лимит, его IP-адрес заблокируется. Число попыток и период бана системный администратор указывает в конфигурационном файле. Существует статистика: всего за 7 дней работы сервера с открытым портом 22 и внешним IP-адресом происходит до 5 000 попыток подбора пароля.

Последовательность действий при установке Fail2Ban:

1. Открыть серверную консоль в браузере или в приложении SSH.

2. Обновить источники пакетов:

apt update

3. Инсталлировать саму программу:

apt install fail2ban

4. Открыть файл конфигурации для изменения содержимого:

nano /etc/fail2ban/jail.conf

5. Изменить переменные bantime – период в секундах для блокировки IP-адреса злоумышленника, и maxretry – число попыток авторизоваться. По каждому сервису это делается отдельно.

6. Выйти из редактора с сохранением изменений. Выполняется операция нажатием клавиш <CTRL + X> и подтверждением кнопкой Y.

7. Перезапустить службу:

systemctl restart fail2ban

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

fail2ban-client -v status sshd

Ответ выглядит следующим образом:

root@hypervisor:~# fail2ban-client -v status sshd
INFO   Loading configs for fail2ban under /etc/fail2ban
INFO     Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO     Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO   Using socket file /var/run/fail2ban/fail2ban.sock
Status for the jail: sshd
|- Filter
|  |- Currently failed: 4
|  |- Total failed:     4327
|  `- File list:        /var/log/auth.log
`- Actions
|- Currently banned: 0
|- Total banned:    516
`- Banned IP list:

Начало работы

Программное обеспечение Proxmox сразу готово к виртуализации машин на базе Windows Server, Ubuntu, CentOS 8 или других платформ. Но ряд настроек рекомендуется все-таки сделать до того, как будет развернута первая VM. Например, рационально саму программу и созданные виртуальные машины хранить на разных накопителях. Такой шаг повышает отказоустойчивость системы, дает возможность немного увеличить производительность комплекса.

Настройка дисковых накопителей

То же относится к хранению резервных копий. Их важно размещать отдельно от других файлов, это позволит оперативно восстанавливать VM даже при серьезных аппаратных сбоях на физическом сервере. Таковые практически исключены благодаря использованию дисковых массивов типа RAID 5 и 10, но лучше предусмотреть дополнительную защиту от рисков потери данных. Тестировать нижеприведенные команды лучше на платформе, где еще нет важной информации.

В качестве примера возьмем систему с двумя дисками. Пусть на /dev/sda будет установлен гипервизор Proxmox, а /dev/sdb останется пустым, на нем пользователь развернет виртуальные машины. При настройке разделения рекомендуется подключить хранилище в виде обычной директории. 

Последовательность действий:

1. Разметить диск созданием на нем нового раздела:

fdisk /dev/sdb

2. Нажать клавишу O для его разметки в систему MBR или G для выбора GBT.

3. Нажатием кнопки N создать новый раздел.

4. Кнопкой W сохранить внесенные изменения.

5. Создать файловую систему ext4:

mkfs.ext4 /dev/sdb1

6. Сгенерировать директорию, куда будет смонтирован раздел:

mkdir /mnt/storage

7. Открыть конфигурацию для изменения содержимого редактором:

nano /etc/fstab

8. Внести в него новую строчку со следующим содержимым:

/dev/sdb1 /mnt/storage ext4 defaults 0 0

9. Сохранить изменения нажатием комбинации <CTRL + X> с подтверждением операции за счет клика по Y.

10. Отправить сервер на перезагрузку для принятия новых настроек:

shutdown -r now

11. Проверить ранее подключенные разделы:

df -H

Последняя команда должна отобразить информацию, что /dev/sdb1 был смонтирован в директорию /mnt/storage. Если все нормально, можно продолжать работу. 

Подключение нового хранилища данных

Теперь новое хранилище нужно подключить к программе Proxmox. Процедура выполняется через панель управления. В ней нужно зайти в раздел «Директория», он находится по пути «Датацентр» – «Хранилище – «Добавить».

После открытия окна нужно заполнить несколько полей:

  1. ID – наименование подключаемого хранилища.
  2. Директория – внести значение /mnt/storage.
  3. Содержимое – выделить все предлагаемые варианты, последовательно кликнув на каждый из них.

Завершающий шаг включает нажатие на кнопку «Добавить». Теперь можно приступать к развертыванию виртуалки с выбранной операционной системой.

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

Предварительно понадобится скачать ISO-образ с нужной операционкой (из любого источника).  Его желательно проверить локально, чтобы убедиться в работоспособности и по необходимости приобрести лицензионный ключ для активации после установки. Затем образ следует смонтировать в систему через меню «Хранилище». В нем нужно нажать «Содержимое» – «Загрузить», затем выбрать файл и кликнуть «Загрузить».

Image3

Следующие шаги:

  1. Нажать «Создать VM».
  2. Заполнить параметры: имя, ISO-Image, размер и тип жесткого диска, количество процессоров, объем оперативной памяти, сетевой адаптер.
  3. После заполнения указанных полей нужно нажать на «Завершить» и убедиться в том, что после этого в списке появилась только что созданная виртуальная машина.
  4. Выбрать ее и нажать «Запуск».
  5. Перейти в пункт «Консоль» и выполнить инсталляцию операционной системы в такой же последовательности, как при установке на физический сервер.

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

Настройка автозапуска

По умолчанию гипервизор Proxmox не запускает VM автоматически, а это желательно, чтобы при перезапуске сервера виртуальная машина стартовала вместе с другим установленным софтом. Сделать это легко – достаточно выбрать виртуальную машину из списка, выбрать вкладку «Опции», а в ней «Запуск при загрузке». В открывшемся окне нужно поставить галочку напротив соответствующей надписи. Это включит автозагрузку, перезапуск программы или сервера не требуется.

Если в гипервизоре установлено несколько виртуальных машин, есть возможность указать, в какой последовательности их запускать после перезагрузки сервера (эти настройки скрыты в разделе Start/Shutdown). Например, программа позволяет указать время задержки в секундах между стартом каждой следующей VM. То же относится к выключению систем, потому что операционка не всегда успевает корректно завершить все процессы, и требуется чуть продлить время отключения.

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

В официальной документации к Proxmox предлагается настройка сети виртуальных машин в двух вариантах: с использованием моста и маршрутизации. Все сетевые параметры настраиваются на уровне ноды, для этого нужно перейти на нужный сервер, открыть меню «Система» – «Сеть». Именно там и скрыты сетевые параметры. По умолчанию в VM используется конфигурация «Внешняя сеть», и она оправдывает свое применение.

Image5

Пользователь обращается к виртуальным машинам как к самому обычному узлу локальной сети – от просмотра содержимого дисков до копирования, создания, удаления и редактирования файлов. База всех виртуальных сетей в Proxmox — сетевой мост (Linux Bridge) vmbr. Он допускает создание до 4095 таких устройств, подключение физических и виртуальных адаптеров. Все сетевые настройки осуществляются внутри VM, как будто на физическом сервере.

Пользователю нужно назначить IP-адрес интерфейсу моста, не забыв указать и адрес шлюза, опцию автозапуска и краткий комментарий о назначении сетевого узла. Настройка DNS осуществляется в отдельном пункте: «Система» – «DNS». После сохранения изменений останется внутри виртуальной машины выбрать нужный мост и задать ему подходящие сетевые настройки. Например, указать, что их следует получать автоматически от DHCP-сервера внешней сети.

Заключение

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

Proxmox VE, несмотря на бесплатность, считается довольно мощным и удобным инструментом. Главное, самому разобраться во всех тонкостях настройки системы и не бояться экспериментировать (естественно, на тестовой платформе, с обязательным резервированием основных VM).

Здравия всем! Оставлю здесь заметку о установке и настройке Proxmox 7, чтобы в дальнейшем снова не искать информацию в различных источниках. Proxmox 7 это дистрибутив основанный на Debian GNU/Linux и использующий технологии KVM и LXC для виртуализации основных ОС.

Введение

В своей домашней лаборатории я использую виртуализацию Hyper-V на Windows 10. Но вот появилась возможность перенести лабораторию на отдельную машину и решил посмотреть в сторону Proxmox. У Hyper-V есть главный недостаток, он не умеет пробрасывать USB внутрь виртуалок. А KVM это умеет делать из коробки. Также Proxmox просто устанавливается и имеет удобную панель управления через браузер.

Proxmox можно поставить 2 способами. Первый и простой это просто скачать с официального сайта актуальную версию Proxmox VE 7.2 . Второй способ, это поставить Debian 11 и уже потом поставить Proxmox VE. Главное отличие этих способов, что по умолчанию, установщик Proxmox не поддерживает mdraid и ext4

Запись образа

В операционной системе Windows 10 воспользуемся программой Rufus и запишем образ в режиме DD-образ.

Установка

Вставим готовую загрузочную флэшку в наш компьютер и загрузимся с нее.

Соглашаемся с соглашением

Настраиваем место установки. Я сделаю зеркало из двух дисков. Доступен либо zfs raidz-1, либо btrfs raid1. По скольку это тестовая лаборатория, я решил попробовать btrfs raid1

Дальше

На этом установка Proxmox закончена и система нам предлагает зайти на web страницу

Базовая настройка Proxmox после установки

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

Выбираем в списке русский язык и логинимся в систему.

Убираем всплывающее окно о подписке

Это окно будет появляться при каждом входе в систему. Если оно вас раздражает, его можно отключить. Делаем резервную копию файла:

cp /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js.bak

Выполняем команду

sed -i "s/getNoSubKeyHtml:/getNoSubKeyHtml_:/" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js

Команда заменяет нужную переменную getNoSubKeyHtml:, на ошибочную getNoSubKeyHtml_: и окно более нам не мешает. Для применения настроек перезагрузим сервер

reboot

Настройка репозитория для обновлений

У нас нет платной подписки, поэтому удалим платный репозиторий из списка. Для этого открываем консоль сервера.

Мы попадаем в классическую командную строку Linux. Настроим систему поставив mc

apt install mc

После чего отредактируем и удалим платный репозиторий

mcedit /etc/apt/sources.list.d/pve-enterprise.list

и комментируем текущую строку

#deb https://enterprise.proxmox.com/debian/pve bullseye pve-enterprise

Откроем файл со списком репозиториев

mcedit /etc/apt/sources.list

Добавим в в конец репозиторий без подписки

# PVE pve-no-subscription repository provided by proxmox.com,
deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription

Обновим репозитории

apt update


root@pve1:~# apt update
Hit:1 http://ftp.ru.debian.org/debian bullseye InRelease
Hit:2 http://ftp.ru.debian.org/debian bullseye-updates InRelease
Hit:3 http://security.debian.org bullseye-security InRelease
Hit:4 http://download.proxmox.com/debian/pve bullseye InRelease
Reading package lists... Done          
Building dependency tree... Done
Reading state information... Done
40 packages can be upgraded. Run 'apt list --upgradable' to see them.
root@pve1:~# 

Видим, что можно обновить пакеты. Обновляемся

apt upgrade -y

Если обновилось ядро или firmware, рекомендую перезагрузить сервер.

reboot

Заключение

В данной заметке я старался максимально просто показать базовую установку и настройку Proxmox 7.2. Чтобы заметка была компактной, решил разбить её на несколько частей

Обновлено Обновлено:
Опубликовано Опубликовано:

Используемые термины: Proxmox VE, Linux.

В данной инструкции мы пошагово разберем способы установки Proxmox VE, базовую настройку и создание виртуальной машины. Proxmox основан на Debian — поэтому установку будем выполнять на данный дистрибутив Linux. В данной инструкции работа ведется на Proxmox версии 6.

Системные требования
Установка Proxmox
    Из готового образа
    Установка на Debian
    Проверка установки
Базовая настройка
    Как загрузить ISO-образ
    Создание сетей
        Bridge
        NAT
        Сеть между виртуалками
Создание виртуальной машины
Настройка виртуальной машины
    Базовые настройки
    Добавление диска
    Добавление сетевого адаптера
    Установка гостевого агента
Удаление виртуальной машины
Тюнинг Proxmox
    Предупреждения об отсутствии подписки
    Правильный сертификат
Создание нового пользователя
Ubuntu и CentOS
Решение возможных проблем
Дополнительная информация

Системные требования

Требования разделены на минимальные и рекомендованные:

  Минимальные Рекомендованные
Процессор 64bit с поддержкой технологии виртуализации Intel VT или AMD-V
Память 1 Гб 2 Гб для системы + для виртуальных машин.
Дополнительно, если используется хранилище Ceph или ZFS, 1 Гб на наждый ТБ данных.
Накопитель HDD SSD или NVMe
Сеть Сетевой адаптер Минимум, 2 сетевых адаптера на 10 Гбит/сек.

Поддержка виртуализации Intel VT или AMD-V может быть отключена на материнской плате. Для проверки заходим в БИОС — находим раздел настройки процессора (как правило, в пункте меню Advanced) — проверяем, что технология виртуализации (Intel VT, AMD-V, Virtualization Technology, VMX) включена (Enabled). Если мы хотим протестировать платформу и устанавливаем ее на виртуальную машину, то в ее настройках включаем поддержку технологии виртуализации. Например, в VMware ESX 6 в настройке виртуальной машины на вкладке Virtual Hardware раскрываем CPU и ставим галочку Expose hardware assisted virtualization to the guest OS:

Включение виртуализации для виртуальной машины в VMware ESX 6

Установка

Есть два варианта установки Proxmox VE — использовать готовый образ или установка на Debian. Мы рассмотрим оба.

Установка готового образа ISO

1. Переходим на страницу загрузки Proxmox официального сайта. Загружаем дистрибутив, например, Proxmox VE 6.1:

Загрузка дистрибутива Proxmox

2. Если установка выполняется на виртуальную машину, монтируем образ. Если нет — создаем установочную флешку, например, с помощью WinSetupFromUsb или загрузочный диск с помощью InfraRecorder.

3. Загружаем сервер с установочного ISO — мы увидим окно приветствия Proxmox — выбираем пункт меню Install Proxmox VE:

Welcome to Proxmox VE

4. Принимаем лицензионное соглашения, кликнув по I agree.

5. Выбираем диск, на который будет установлена система:

Выбираем диск, на который будет установлен Proxmox

* при необходимости, кликаем по Options и задаем настройки файловой системы и размера раздела.

6. Пишем страну, временную зону, язык раскладки клавиатуры по умолчанию:

Пишем страну, временную зону, язык раскладки клавиатуры по умолчанию

7. Вводим дважды пароль, который будет использоваться для пользователя root:

Новый пароль для root

8. Прописываем сетевые настройки:

Сетевые настройки Proxmox

* где:

  • Management Interface: сетевой интерфейс для управления сервером виртуальных машин.
  • Hostname (FQDN): имя хоста для сервера.
  • IP Address: IP-адрес нашего сервера.
  • Netmask: маска подсети для сервера.
  • Gateway: шлюз по умолчанию.
  • DNS Server: сервер DNS.

9. В окне «Summary» проверяем введенные данные и кликаем по Install. Начнется процесс установки, который займет не более 10 минут.

10. После установки мы должны увидеть «Installation Successful» — перезагружаем сервер, кликнув по кнопке Reboot.

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

Установка на Debian

Если мы решили установить Proxmox на уже установленный Debian, выполняем следующую инструкцию.

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

1. Имя сервера должно разрешаться по его IP-адресу. Для этого либо добавляем А-запись в DNS, либо настраиваем на сервере файл hosts:

nano /etc/hosts

… и добавляем:

192.168.1.55 proxmox.dmosk.local   proxmox

* где 192.168.1.55 — IP-адрес нашего сервера; proxmox — имя сервера; dmosk.local — наш домен, если используется.

2. Добавляем репозитории, которые будем устанавливать для установки  Proxmox PE и дополнительных компонентов:

nano /etc/apt/sources.list

deb http://mirror.yandex.ru/debian/ buster main non-free contrib
deb-src http://mirror.yandex.ru/debian/ buster main non-free contrib
deb http://download.proxmox.com/debian/pve buster pve-no-subscription

Чтобы мы могли работать с репозиторием proxmox добавляем в систему цифровую подпись:

wget http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg

Обновляем список пакетов:

apt update

3. Устанавливаем Proxmox PE и компоненты:

apt install proxmox-ve open-iscsi

* где proxmox-ve — собственно, сам гипервизор; open-iscsi — iSCSI-клиент для подключения iSCSI-target-ов.

4. Перезагружаем сервер:

systemctl reboot

Проверка установки

В браузере открываем панель управления системой виртуализации по адресу https://<IP-адрес сервера>:8006. В открывшемся окне выбираем язык, вводим логин и пароль от пользователя root:

Входим в панель управления Proxmox

Должно открыться окно управления.

Начальная настройка

Чтобы начать использовать Proxmox и создать первую виртуальную машину, внесем небольшие настройки и подготовим гипервизор к работе.

1. Загрузка образов

Кликаем по Датацентр — и дважды по storage:

Открываем хранилище Proxmox

* мы можем создать отдельное хранилище для образов ISO. Для этого переходим в раздел ДатацентрХранилищеСоздатьКаталог.

Переходим в раздел Содержимое и кликаем по Загрузить:

Кликаем по Загрузить в Proxmox

В открывшемся окне выбираем ISO-образ системы, который будем устанавливать в качестве гостевой и кликаем по Загрузить. Ждем окончания копирования файла на сервер.

2. Создание сети для виртуальных машин

Мы рассмотрим примеры создания 2-х режимов сети — Bridge и NAT.

Независимо от способа установки Proxmox, необходимо подключиться к хосту по SSH и установить пакет ifupdown2 командой:

apt install ifupdown2

* ifupdown2 — утилита для конфигурации сетевого интерфейса (по сути, аналог ifupdown, написанный на языке Python).

… в противном случае, при попытке применить сетевые настройки мы получим ошибку you need ifupdown2 to reload networking (500).

Bridge

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

Работать с режимом Bridge нужно очень осторожно. Любое неправильное действие и удаленный доступ к серверу будет потерян. Если работы ведутся на удаленном сервере, рекомендуется сначала потренироваться на какой-нибудь локальной машине.

Также стоит отметить, что при установке PVE из установочного ISO-образа, один Bridge уже будет создан.

Для создания бриджа в панели управления кликаем по нашему серверу Proxmox — переходим в раздел СистемаСеть — обратите внимание, чтобы в системе не было bridge-интерфейсов:

Переход к созданию сетевого интерфейса в Proxmox

… иначе, создавать его не обязательно.

Открываем настройки сетевого интерфейса, через который будет работать наш мост и удаляем шлюз:

Удаляем шлюз из настроек сетевого адаптера

* если мы не сделаем этого, то при настройке Bridge мы получим ошибку Parameter verification failed. (400). gateway: Default gateway already exists on interface ‘ens160’.

Нажимаем Создать и выбираем Linux Bridge:

Создание нового Bridge интерфейса

В открывшемся окне заполняем поля IPv4/CIDR, Шлюз (IPv4), Порты сетевого моста:

Создание нового Bridge интерфейса

* в данном примере мы задаем IP-адрес, на котором будет работать Proxmox (чтобы ничего не перепутать, можно задать IP-адрес физического интерфейса, который будет задействован под Bridge); маска указывается в нотации CIDR и в нашем примере это 24 или 255.255.255.0; в качестве физического интерфейса наш bridge будет использовать ens160.

… нажимаем Создать

Кликаем по Apply Configuration, чтобы применить сетевые настройки:

Создание нового Bridge интерфейса

Подтверждаем действия.

NAT

Данный режим сети активно применяется в случае аренды сервера, где количество IP-адресов лимитировано. В данном случае, все виртуальные машины будут находисться за NAT, в качестве которого выступает сам Proxmox.

Сам интерфейс мы делаем из панели управления. Но чтобы виртуальные машины могли выходить в Интернет через сеть NAT, необходимо на самом хосте включить редирект и маскарадинг.

Создание нового bridge-интерфеса

Итак, кликаем по нашему серверу Proxmox — переходим в раздел СистемаСеть — нажимаем Создать и выбираем Linux Bridge:

Создание нового Bridge интерфейса для NAT

Оставляем имя vmbr1 или пишем любое другое, прописываем IP-адрес с маской сети, в которой будут находиться серверы за NAT:

Настройки при создании Bridge интерфейса для NAT

Нажимаем Создать. Применяем настройки:

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

Сеть настроена.

Настройка ядра и брандмауэра

Подключаемся к серверу по SSH. Открываем на редактирование файл настройки ядра:

nano /etc/sysctl.d/99-sysctl.conf

… и добавляем разрешение на редирект:

net.ipv4.ip_forward=1

После применяем настройки:

sysctl -p /etc/sysctl.d/99-sysctl.conf

Добавляем правило в брандмауэр:

iptables -t nat -I POSTROUTING -s ‘192.168.122.0/24’ -o vmbr0 -j MASQUERADE

* в данном примере мы создали правило для маскарадинга всех пакетов из подсети 192.168.122.0/24 и для исходящего интерфейса vmbr0. Обратите внимание, что если у нас будет другая подсеть и исходящий интерфейс для сети Интернет, то нужно будет задать другие значения.

Ставим утилиту для сохранения правил iptables:

apt install iptables-persistent

… и сохраняем правила в процессе установки или командой:

netfilter-persistent save

Наш NAT настроен.

Сеть между виртуалками

Данная сеть — частный случай NAT без выхода в Интернет. Мы должны создать бридж с отдельной подсетью без шлюза. При добавлении виртуальным машинам данного сетевого адаптера мы сможем настроить их взаимодействие по внутренней сети.

Создаем бридж, как делали это ранее:

Создание нового Bridge интерфейса для внутреннего трафика

Настраиваем новый интерфейс — задаем имя или оставляем тот, что предложит система, а также указываем IP-адрес:

Создание нового Bridge интерфейса для внутреннего трафика

Создаем интерфейс. Готово — при создании или редактировании виртуалок, мы можем указывать с качестве интерфейса созданный бридж (в данном примере, vmbr2) для изоляции их в отдельную подсеть 192.168.150.0/24.

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

Базовая настройка закончена — можно опробовать наш гипервизор в деле. 

В правой верхней части панели управления кликаем по Создать VM:

Кликаем по Создать VM

В открывшемся окне снизу сразу ставим галочку Расширенный:

Ставим галочку расширенный

Задаем имя виртуальной машине и ставим галочку Запуск при загрузке (если хотим, чтобы виртуалка запускалась автоматически с сервером PVE):

Задаем имя и включаем запуск виртуальной машины при запуске сервера PVE

* в данном примере мы задали имя FS. При желании, также можно изменить VM ID, но он проставляется автоматически и имеет правильное значение.

Выбираем загруженный нами ISO-образ, с которого будем ставить операционную систему, задаем тип гостевой операционной системы и ее версию:

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

* в данном примере мы будем устанавливать Linux Ubuntu. Среди списка операционных систем также доступны Microsoft Windows, Solaris и Other.

На вкладке Система можно оставить все значения по умолчанию:

Системные настройки можно не трогать

* в некоторых случаях, необходимо выбрать другую видеокарту (при установке систем с GUI), а также особый вариант БИОС.

Задаем размер жесткого диска:

Задаем размер для жесткого диска

* 16 Гб для Ubuntu достаточно, однако, для наших задач расчет должен быть индивидуальным для каждой создаваемой виртуальной машины.

Мы можем задать количество процессоров и ядер:

Задаем количество процессоров и ядер для ВМ

* в данном примере мы создаем виртуалку с 2 процессорами, каждый из который с 2 ядрами, итого, 4. Для ненагруженных систем можно оставить значение по умолчанию.

Выделяем память:

Укажем объем оперативной памяти

* наша Ubuntu будет работать с 2 Гб оперативной памяти.

Выбираем созданный нами бридж — либо для получения прямого адреса из сети, либо для NAT:

Выбираем сетевой адаптер, через который будет работать сеть виртуальной машины

* в данном примере, мы указали vmbr0 для подключения к сети напрямую.

Ставим галочку, чтобы виртуальная машина сразу запустилась после создания:

Разрешив запуск машины после ее создания

… и нажимаем Готово. Ждем окончания процесса и переходим к консоли:

Подключаемся к консоли сервера

Мы должны увидеть загрузку с ISO-образа.

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

После создания виртуальной машины нам может понадобиться ее изменить. Рассмотрим процесс настройки на примере изменения некоторых параметром, а также добавления диска и сетевого адаптера.

Полезные настройки

Для начала, переходим к виртуальной машине — Параметры:

Переходим к параметрам виртуальной машины

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

  • Имя — имя виртуальной машины.
  • Запуск при загрузке — для серверов данный параметр должен быть активирован.
  • Порядок загрузки — позволяет определить, с какого устройства должна запуститься виртуалка в первую очередь.

Для изменения параметра, просто кликаем по нему дважды, меняем значение и нажимаем OK.

Добавление дискового накопителя

Переходим в подраздел Оборудование — кликаем по Добавить и выбираем Жесткий диск:

Добавляем жесткий диск

В открывшемся окне задаем размер диска и нажимаем OK.

Для увеличения размера имеющегося диска устанавливаем на него курсов и кликаем по Изменить размер диска:

Увеличиваем размер диска

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

Добавление сетевого адаптера

Переходим в подраздел Оборудование — кликаем по Добавить и выбираем Сетевое устройство:

Добавляем сетевой адаптер

Как при создании ВМ, выбираем тип сетевого адаптера (бридж или нат) и нажимаем Добавить.

Установка гостевого агента

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

В гипервизоре переходим в Параметры, находим пункт QEMU Guest Agent и кликаем по нему:

Кликаем по пункту QEMU Guest Agent

Ставим галочку Use QEMU Guest Agent и нажимаем OK:

Включаем гостевого агента для виртуальной машины

Для применения настройки нужно выключить и включить виртуальную машину.

Теперь подключаемся к виртуальной машине и устанавливаем утилиту. В зависимости от типа Linux команды будут отличаться.

а) DEB-based:

apt update

apt install qemu-guest-agent

б) RPM-based:

yum install qemu-guest-agent

Установка завершена.

Для запуска сервиса выполняем:

systemctl enable qemu-guest-agent —now

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

Подробнее процесс описан на странице https://pve.proxmox.com/wiki/Qemu-guest-agent.

Удаление виртуальной машины

Для удаления виртуальной машины, сначала ее отключаем — это можно сделать из операционной системы или из панели управления, нажав на стрелку вниз рядом с ВыключитьОстановка:

Выключаем виртуальную машину

После кликаем по ДополнительноУдалить:

Удаление виртуальной машины

В открывшемся окне мы должны подтвердить свои намерения удалить виртуальную машину, вписав ее идентификатор:

Добавляем сетевой адаптер

* если мы поставим галочку Purge, то виртуальная машина будет удалена полностью вместе с виртуальным диском.

Кликаем по Удалить — готово.

Тюнинг сервера PVE

Внесем несколько изменений, которые сделают работу с Proxmox VE удобнее.

Отключение предупреждения об отсутствии подписки

Каждый раз при заходе в панель управления мы будем видеть такое предупреждение:

Предупреждение об отсутствии подписки

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

  1. Отключим платный репозиторий для получения пакетов proxmox.
  2. Отредактируем файл js для отключения данного сообщения.

И так, в SSH открываем на редактирование репозиторий proxmox:

nano /etc/apt/sources.list.d/pve-enterprise.list

Приводим его к виду:

#deb https://enterprise.proxmox.com/debian/pve buster pve-enterprise
deb http://download.proxmox.com/debian/pve stretch pve-no-subscription

* мы закомментировали репозиторий pve-enterprise и добавили pve-no-subscription.
** при большом желании, можно удалить файл репозитория с именем pve-enterprise.list и создать новый — кому как будет удобнее.

Добавляем gpg-ключ для репозитория:

apt-key adv —keyserver keyserver.ubuntu.com —recv-keys 0D9A1950E2EF0603

После обновим список пакетов:

apt update

Последнее — редактируем файл /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js (перед этим его сохраняем):

cp /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js /usr/share/javascript/proxmox-widget-toolkit/backup_proxmoxlib.js

sed -i «s/getNoSubKeyHtml:/getNoSubKeyHtml_:/» /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js

* данной командой мы находим getNoSubKeyHtml в файле /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js и меняем на getNoSubKeyHtml_.

Закрываем окно браузера с Proxmox, если оно было открыто и запускаем его снова. Входим в систему — сообщение не должно появиться.

Сертификаты

Сервер PVE устанавливается с самоподписанным сертификатом. Это означает, что при подключении к панели управления мы будем видеть предупреждение от системы безопасности. Чтобы браузер принимал сертификат, он должен соответствовать следующим требованиям:

  • Быть выдан доверенным центром сертификации или зарегистрированным в вашей локальной сети, например, локальный AD CS.
  • Быть для доменного имени, по которому мы заходим в панель управления.
  • Иметь актуальные даты начала действия и окончания.

При этом, мы не должны заходить в панель управления по IP-адресу — в противном случае, независимо от сертификата, мы все-равно, получим предупреждение.

И так, сам сертификат можно купить, запросить бесплатно у Let’s Encrypt или создать с использованием локального центра сертификации, например, по данной инструкции. После у нас есть, как минимум, два способа загрузить его.

а) Установка сертификата с помощью графического интерфейса

Получив сертификат, открываем панель управления PVE и переходим к серверу — СистемаСертификаты — кликаем по Загрузить пользовательский сертификат:

Переходим к загрузке сертификатов

В открывшемся окне заполняем поля для закрытого и открытого ключей:

Загружаем ключи

… и нажимаем Загрузить. Система предупредит, что загрузится с новым сертификатом — необходимо закрыть вкладку в браузере и открыть консоль управления снова. Если сертификат загружен правильный, мы не увидим предупреждения.

б) Установка сертификата из командной строки

После развертывания Proxmox создается 2 файла в каталоге /etc/pve/nodes/<имя ноды> (например, /etc/pve/nodes/pve/) с именами pve-ssl.key и pve-ssl.pem. Их нужно заменить.

Сначала создадим их копию:

mkdir -p /backup/proxmox/ssl

cp /etc/pve/nodes/pve/pve-ssl.* /backup/proxmox/ssl/

Предположим, что мы получили сертификаты с помощью Let’s Encrypt и они находятся по пути /etc/letsencrypt/live/pve.dmosk.ru. Тогда копируем нужны ключи:

cp /etc/letsencrypt/live/pve.dmosk.ru/fullchain.pem /etc/pve/nodes/pve/pve-ssl.pem

cp /etc/letsencrypt/live/pve.dmosk.ru/privkey.pem /etc/pve/nodes/pve/pve-ssl.key

Возможно, вы подумаете, что для сертификатов Let’s Encrypt лучше создавать симлинки, вместо копирования файлов. Однако, для каталога /etc/pve создается FUSE файловая система, которая не поддерживает симлинки.

Перезапускаем сервисы:

systemctl restart pvestatd pvedaemon pve-cluster corosync

Создание нового пользователя

При установке PVE создается пользователь root. Рассмотрим процесс добавления еще одного через командную строку.

Подключаемся по SSH или открываем консоль из панели управления. Создаем пользователя в системе:

useradd user

* где user — имя создаваемого пользователя.

После создаем нового пользователя в Proxmox:

pveum useradd user@pam

* в данном примере мы создали пользователя user в области pam.

Задаем пароль:

pveum passwd user@pam

Задаем роль для созданного пользователя, например, административную:

pveum aclmod / -user user@pam -role Administrator

* весь список ролей можно посмотреть в панели администрирования в разделе ДатацентрРазрешенияРоли.

Ubuntu и CentOS

Возможно, кому-то захочется установить Proxmox именно на Ubuntu или CentOS. К сожалению, разработчики остановились на Debian. Возможно, есть неофициальные обходные пути установки Proxmox на другие дистрибутивы Linux, однако такой путь не является приемлемым для продуктивной среды. Для настройка виртуализации на Ubuntu и CentOS предлагаю инструкции:

1. Установка и настройка KVM на CentOS 7

2. Настройка KVM на Ubuntu Server

Возможные ошибки

Рассмотрим некоторые ошибки, с которыми столкнулся я.

Falling back to a fallback locale

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

Причина: это связано с настройками локали в вашей системе. Скорее всего, среди вариантов языковых настроек не перечислен en_US.UTF-8.

Решение: исходя из причины, нам нужно правильно настроить локаль. Это можно сделать в интерактивном режиме командой:

dpkg-reconfigure locales

После выбираем нужные локали, например: en_US.UTF-8 и ru_RU.UTF-8.

Также можно просто отредактировать файл:

vi /etc/locale.gen

Необходимо снять комментарий с en_US.UTF-8:


en_US.UTF-8 UTF-8

После вводим:

locale-gen

Настраиваем формат времени и определяем язык интерфейса:

export LC_TIME=ru_RU.utf8

update-locale LANG=en_US.UTF-8

Гостевая служба помечена как masked

Мы можем заметить, что служба qemu-guest-agent не запускается со статусом masked:

  qemu-guest-agent.service
   Loaded: masked (/dev/null; bad)
   Active: inactive (dead)

Причина: в некоторых операционных системах (я столкнулся в Astra Linux) по умолчанию сервис qemu-guest-agent маскируется.

Решение: маскировку можно снять простой командой:

systemctl unmask qemu-guest-agent

После перечитываем конфигурацию daemon-reload:

systemctl daemon-reload

Можно разрешить запуск сервиса и стартовать его:

systemctl enable qemu-guest-agent —now

Читайте также

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

1. Настройка кластера Proxmox VE.

2. Конвертирование виртуального диска Proxmox в диск VMware.

3. Включение вложенной виртуализации в Proxmox.

Понравилась статья? Поделить с друзьями:
  • Должностная инструкция руководителя пто в строительстве
  • Энтеросгель цена в пензе инструкция по применению взрослым
  • Банкротство ооо в 2022 году пошаговая инструкция
  • Должностная инструкция советника председателя совета директоров
  • Руководство умвд по городу краснодару