Репозиторий https enterprise proxmox com debian pve buster inrelease не подписан
Рассмотрим 2 варианта установки гипервизора Proxmox
Оба варианта приемлемы, поскольку Proxmox использует ядро Linux и базируется на дистрибутиве Debian. Опишу только первый вариант, поскольку установка с родного образа не требует описания.
Установка на Debian 10
Добавим репозиторий в список debian:
Цифровая подпись репозитория proxmox:
Обновим список пакетов и систему:
Установим саму систему proxmox:
После установки перегружаем сервер.
Рекомендуется удалить пакет os-prober
Пакет os-prober сканирует все разделы хоста, в том числе гостевые виртуальные машины, для создания записей GRUB с двойной загрузкой.
Если нет необходимости загрузки на сервере другой ОС кроме Proxmox VE можно удалить пакет os-prober
Сервер Proxmox готов.
Администрирование
Управление Proxmox происходит либо через веб-панель, либо через консоль.
Аутентификация Linux PAM standard authentication:
Это предупреждение об отсутствии платной подписки Proxmox на обновления. Однако можно подключить другой репозиторий для получения обновлений.
Настройка сети
Создаем по сути коммутатор (в понимании гипервизоров VMware и Hyper-V) с привязкой к сетевой карте. У Proxmox это называется Linux Bridge.
В настройках самого интерфейса ens192 удаляем галочку Autostart и значения IPv4/CIDR. Перегружаем сервер.
Этого достаточно, чтоб на гипервизоре можно было запускать контейнеры и виртуальные машины.
Кластер Proxmox
Следующим шагом будет разворачивание кластера на базе серверов Proxmox в тестовой среде.
Я выбрал установку с родного образа и все настройки были произведены уже на этапе подготовки к установке, кроме подключения бесплатного репозитория обновлений.
О тестовой среде.
О кластерах и кворуме
Кластер не существует без кворума. Кворум это по сути ноды (машины) включенные в кластер и у которых есть право голоса. Суть голосования в том, что, если происходит падение одной из нод по причине отказа или сбоя, остальные решают по принципу большинства продолжать работать кластеру или нет. Если у нас в кластере 3 машины и одна уходит в сбой, то остальные два имеют 2 голоса из 3-х и это большинство, кластер продолжает работать. А если в кластере четное количество машин, то при отказе половины кластер перестает работать. Т.е. для работоспособности кластера из n машин (нод) необходимо минимум n/2+1 доступных машин.
В ситуациях с четным количеством нод вводится понятие свидетеля. Свидетель по сути обычная машина, без наличия систем виртуализации, в нашем случае Proxmox-а. При четном количестве нод свидетель голосует, а при случае сбоя или вывода ноды из кластера, когда количество работоспособных нод становится нечетным, то голос свидетеля не учитывается и так по циклу пока не наступит минимум < n/2+1.
Я специально выбрал для тестовой среды четное количество нод (4) для демонстрации свидетеля. Свидетель будет 6-й машиной в тестовой среде на Debian.
Сетевые настройки тестовой среды
Важно! В настройках виртуального коммутатора на VMware необходимо включить Promiscuous Mode, если используете Hyper-V, то в настройках сетевого адаптера включить MAC address spoofing, иначе виртуальный коммутатор будет воспринимать только сетевую карту гипервизора Proxmox, а виртуальные машины внутри самого Proxmox не смогут отправлять пакеты наружу.
Установка Proxmox
Установка OpenMediaVault
Настройки OpenMediaVault
Настроим сеть под требования тестовой среды Принять изменения
В VMware создаём еще один диск для хранения данных. Размер соразмерный требуемому объему для установки ОС (я взял тонкий диск объемом 100Гб).
Создаем диск для общего хранилища и задаем настройки прав для доступа:
Создаем диск Монтируем диск к системе Подключаем NFS хранилище для совместного пользования всеми нодами Подключаем диск Задаем точку монтирования и права Задаем клиентов для доступа к NFS хранилищу с правами Включаем службу NFS
Подключим хранилище к первой ноде PVE1:
Настройки подключения
Для тестовой среды в качестве контента диска я выбрал все варианты, в реальной среде стоит разделять исходя из качества дисков (RAID, скорость и т.д.). Такие данные как iso образы или бэкапы можно хранить на других дисках, чем диски самих виртуальных машин или контейнеров.
Нужно заметить, что диск подключили к кластеру, а не к ноде и один и тот же общий диск не нужно подключать для каждой ноды.
Настроим репозиторий для обновлений Proxmox для каждой ноды.
После обновим необходимые пакеты на всех нодах.
Обновление Proxmox
Создаем кластер
Для полноценной демонстрации кластера необходимо создать отдельную выделенную сеть для самого кластера. В VMware создаю новый Port Group с названием ClusterNetwork и подключаю вторые сетевые карты на данный коммутатор.
Сетевые настройки для нод Proxmox – 172.16.1.211/28 – 172.16.1.214/28
Сетевые настройки кластерного трафика для Proxmox
Собираем ноды в кластер:
Выбираем созданную сеть под кластер. Будет создан кластер с одной текущей включённой нодой.
Забираем информацию для подключения остальных нод в кластер:
Переходим поочередно по всем нодам и вставляем скопированную информацию:
Выбираем сеть для кластерного трафика
Наш кластер готов.
Итого имеем кластер из 4-х нод, кластерный трафик управления проходит через изолированную сеть и можно создавать виртуальные машины. Как видно на всех нодах доступно общее хранилище.
Установка виртуальных машин
В качестве теста установим сервер на базе Linux Debian c Apache и одной простой страницей. На второй ноде создадим виртуальную машину и в качестве места хранения диска выберем общее хранилище.
Установим наш виртуальный сервер:
Виртуальный сервер готов, на нем работает наш сайт. Наша задача обеспечить доступность сервера при падении ноды на которой размещен сервер с сайтом.
У нас 4 ноды и задача при падении PVE2 сервер должен мигрировать на PVE3, если нет, то на PVE4, а на PVE1 не мигрировала.
Правила миграции в High Availability Group
Создаем группу и выставляем приоритеты. Чем выше приоритет, тем предпочтительнее нода в группе.
Создаем ресурс для высокой доступности и назначаем в группу:
Более информативно через консоль
Отправим в shutdown ноду с веб-сервером. Посмотрим на состояние кворума:
Сервер мигрировал на PVE3 (как мы и хотели), кворум– ОК, кластер жив.
Все. Кластер перестал существовать. Наш сайт недоступен.
Кворум – необходимы 3 голоса, присутствуют 2
Кластер восстановил работу. 3 голоса из необходимых 3-х. Сервер вернулся на свою ноду.
Зачем может понадобиться иметь четное количество нод, если при падении половины кластер не работоспособен? Кроме обеспечения высокой доступности с миграцией серверов при сбое нод можно использовать другой инструмент сохранности сервисов – репликации. Репликации серверов происходят по заданному расписанию и на заданные ноды.
Для кластера высокой доступности с четным количеством нод обычно используют свидетеля. Введем в наш кластер сервер-свидетель.
Свидетель в кластере
В нашем случае это обычный Debian 10 сервер который в реальной среде может выполнять и другие функции (иметь работающие службы и сервисы). Нам нужно будет установить 2 пакета.
Настроим сеть согласно условиям тестовой среды:
Установим пакеты на сервер свидетеля:
Установим пакет на всех нодах Proxmox:
В консоли PVE1 выполним команду:
На вопросы ответим – yes и далее введем необходимое количество раз пароль для соединения с нодами кластера.
Отредактируем файл /etc/corosync/corosync.conf на PVE1 и добавим следующее в секцию кворума:
Перезагрузим сервисы service и corosync-qdevice:
Сделаем аналогичные действия на всех нодах: отредактируем файл /etc/corosync/corosync.conf и перезапустим service corosync restart, service corosync-qdevice start.
Проверим свойства нашего кворума:
Отключим ноды PVE2 и PVE3:
Кластер жив при 2-х отсутствующих нодах. Сервере мигрировал на PVE4 согласно правилам перемещения.
Доступность сервисов через репликации
Рассмотрим вариант репликации с ноды на ноду на примере контейнера. Контейнер из шаблонов в котором развернута phpBB.
В качестве диска выбрано хранилище ZFS. Это важно, поскольку репликации идут только с хранилищ zfs.
Настройка репликации: на вторую ноду с zfs хранилищем и с расписанием каждые 30 мин.
И тот и другой вариант приемлемы для обеспечения доступности сервисов: для критических сервисов режим высокой доступности, для менее важных сервисов, с возможным простоем можно использовать режим репликации с последующим ручным разворачиванием сервисов на другой ноде.
На этом пока все. Повторюсь, Proxmox достаточно взрослая система и ее можно использовать в производственных средах, однако при наличии бюджета у компании все же имеет смысл присмотреться к основным игрокам этого рынка – Vmware (когда достаточно денег) или Microsoft (когда можно чуть сэкономить). Но если у вас только Linux сервера и нет вопросов с лицензированием клиентских ОС на гипервизоре в кластере, то тут опять преимущество Proxmox.
Отключаем платные источники пакетов Proxmox
Теперь выполним команду apt update в консоли системы и сможем использовать Proxmox без постоянного вывода ошибок об отсутствии платных подписок.
Включаем бесплатные источники пакетов Proxmox
По умолчанию в системе не настроены источники пакетов apt, специфичные для Proxmox-VE, которые могут использоваться для установки без покупки Enterprise подписок. Чтобы не нарушать целостность системы и не устанавливать аналогичные пакеты из других источников, рекомендуется добавить источники оригинальные для Proxmox. Для этого создаем в консоли файл /etc/apt/sources.list.d/pve-no-subscription.list и добавляем в него одну следующую строчку, указанную ниже.
Аналогично, после создания и редактирования вышеуказанного файла, выполняем команду apt update, по итогу выполнения которой, можем полноценно устанавливать новые необходимые пакеты в систему.
Используем утилиту ifupdown2
Для управления сетевыми интерфейсами из командной строки рекомендуется в системе Proxmox-VE использовать строго утилиту ifupdown2. Так, если в консоли попытаться перезагрузить настройки сетевой подсистемы с помощью systemctl restart networking, то можно получить проблемы с доступом в сеть из виртуальных машин на данном хосте. Поэтому желательно при первоначальной настройке системы установить сразу пакет ifupdown2 с помощью команды:
Теперь, чтобы перезагрузить настройки сетевой подсистемы из консоли мы просто выполняем следующую команду.
Особенности использования внешнего CEPH хранилища
Сам по себе Proxmox поддерживает CEPH внутри себя и позволяет создавать гиперконвергентные кластеры. Однако, в случае использования внешней системы хранения CEPH через протокол RBD могут возникать лишние оповещения и ошибки в работе отдельных утилит. Чтобы этого избежать, проводим небольшие манипуляции. Первым делом создаем файл /etc/ceph/ceph.conf, если его не было в системе. После чего добавляем в данный файл описание сервисов внешних мониторов CEPH, которые используются при подключение по протоколу RBD. Пример содержания данного файла привожу ниже.
Заключение
Показал в статье небольшие донастройки в системе Proxmox-VE, которые позваляют более комфортно ее эксплуатировать. При этом сам базовый функционал данной системы виртуализации нормально работает из коробки и позволяет использовать ее как хорошую альтернативу VMware vSphere.
Proxmox Virtual Environment это система виртуализации с открытым исходным кодом. В настоящее время Proxmox VE, в релизах выше 4.0 и 3.4, использует гипервизоры KVM и LXC, что позволяет запускать виртуализацию практически любой ОС. Управляется Proxmox VE через удобный веб-интерфейс. Как гипервизор Proxmox VE является высокопроизводительным, виртуальные машины с Linux работают без потерь, другие гостевые ОС вызывают минимальные потери производительности.
Установка Proxmox VE на Debian 10 Buster
В статьях на различных порталах в Интернете можно прочитать, что VPS и VDS не имеют разницы, просто различные аббревиатуры одного и того же. Однако, с моей точки зрения, есть существенное различие в предложениях провайдеров – виртуальный хост приобретён в аренду или реальный сервер в стойке.
Чтобы проверить, можно ли полноценно использовать виртуализацию Proxmox VE в облаке или на реальном хосте, в Debian 10 Buster, подключаемся к консоли сервера по ssh, в моем случае с помощью Putty RUS и вводим:
cat /proc/cpuinfo | grep '(svm|vmx)'
Если виртуализация поддерживается процессором хоста, то результат работы не пустой, а несколько строк:
Обновление системы Debian 10 Buster
Обновите Debian 10 Buster до актуальной и перезагрузите по выполнении:
sudo apt -y update
sudo apt -y upgade
После перезагрузки установите необходимые пакеты:
sudo apt -y install mc wget
Настройка файла /etc/hosts
Для нормальной установки Proxmox VE в Debian 10 в файле /etc/hosts должно быть указано краткое и доменное имя хоста. У VDS или VPS файл /etc/hosts обычно уже настроен, но проверить не мешает. Должно выглядеть так, как на скриншоте:
Для установки Proxmox VE на Debian 10 Buster необходимо добавить репозитории Proxmox VE. Репозитории Debian удалять необязательно. Чтобы больше не изменять sources.list, создайте в /etc/apt/souces.list.d файл proxmox.list, который будет содержать необходимые репозитории исключительно для Proxmox VE. Указание, что мы не используем подписку, строка pve-no-subscription:
Установите ключ репозитория и запустите обновление, чтобы подключились репозитории Proxmox VE:
sudo apt -y update
Установка пакетов Proxmox VE
Проверьте, появился ли в пакетах proxmox-ve:
sudo apt search proxmox-ve
Если появился, значит все репозитории подключены и обновлены корректно. Установите Proxmox VE, затем снова перезагрузите:
sudo apt -y install proxmox-ve
Адрес веб-интерфейса Proxmox VE актуален для моего сервера, для другого сервера будет указан так:
На этом установка Proxmox на Debian 10 завершена, дальше поговорим про настройку.
Работа с WEB-интерфейсом
Подключение к Proxmox выполняется с помощью браузера. Подключитесь по указанному адресу из любого браузера. Сертификаты сервера являются самоподписанными, поэтому браузер выдаст предупреждение безопасности. Нажмите Дополнительные и выбираем ссылку Перейти на сайт 192.168.0.166 (небезопасно). На скриншоте ниже показано выглядит WEB-интерфейс Proxmox VE:
Сначала выберите русский язык, затем введите пользователя root и пароль от суперпользователя:
Настройте хранилище. Сейчас система автоматически создала хранилище в расположении /var/lib/vz с названием local. Кликните на ссылку:
В хранилище с помощью WEB-интерфейса Proxmox можно загрузить образ диска ISO, разместить там же образ диска виртуальной машины, контейнеры и шаблоны. Так же в хранилищах хранятся snapshot – архивные копии виртуальных машин. Хорошим решением будет добавить в систему ещё одно хранилище для бэкапов, шаблонов виртуальных машин.
Создайте дополнительное хранилище. Для этого перейдите в раздел Датацентр, найдите справа от дерева серверов пункт Хранилище, кликните по нему и выберете хранилище local. На приведённом ниже скриншоте видно, что, кликнув на local в основном окне, можно редактировать типы хранимой информации. Для дальнейшей демонстрации включаю тип Резервная копия и применяю изменения:
По кнопке Добавить можно посмотреть какие типы хранилища доступны в данной инсталляции Proxmox VE.
В моей тестовой машине все реализовано на томах LVM:
Самый большой размер 122 Гб на машине pve-test примонтирован к директории /home. Нажмите Добавить, выберите Каталог, укажите имя home и путь /home:
В результате создано собственное хранилище с именем home, где и будут храниться все данные:
Настройка сети Proxmox
Создайте бэкап файла сетевых настроек. Для этого в терминале напишите:
sudo cp interfaces interfaces.work
В системе реализованы несколько способов получения доступа по сети из виртуальных машин или к виртуальным машинам. Перейдите на группу pve-test в дереве серверов, выберите справа пункт Сеть и нажмите кнопку Создать:
Из предложенных вариантов выберите Linux Bridge, чтобы создать виртуальный свитч, через который гипервизор Proxmox VE и виртуальные машины подключатся к сети:
В портах сетевого моста указано имя сетевой карты enp2s0, которой тестовая машина подключена кабелем к роутеру. В Linux принято после указания IP-адреса указывать маску подсети через знак /. Значение 192.168.0.166/24 означает, что маска подсети 255.255.255.0.
sudo cp interfaces.work interfaces
На скриншоте красным маркером обведён новый текст файла /etc/network/interfaces, который будет применён после перезагрузки. Если все прошло корректно, то через некоторое время можно снова входить в WEB-интерфейс хоста Proxmox VE.
Создание виртуальных машин
Обратите внимание, что веб интерфейс Proxmox VE позволяет создавать виртуальные машины двух типов:
- VM это полностью виртуализированная машина, созданная из ISO образа, который необходимо загрузить в хранилище Proxmox VE;
- CT – паравиртуализированная машина на ядре Linux, шаблоны которой необходимо сначала загрузить и установить в хранилище Proxmox VE.
Загрузите CT, предложенные на сайте Proxmox VE. Выберите небольшой дистрибутив, например CentOS 7, и поместите его в хранилище home:
sudo pveam update
sudo pveam available
sudo pveam download home centos-7-default_20190926_amd64.tar.xz
Параллельно можно поставить загрузку дистрибутива debian10 netinstall ISO со своего рабочего компьютера в хранилище home. Для этого выберите в WEB-интерфейсе хранилище home, тип хранения выберите ISO Images и нажмите кнопку Загрузить, в появившемся окне выберите файл образа ISO со своего компьютера и нажмите ОК.
sudo apt install mc
Шаблоны и загрузки расположены по путям хранилищ local: /var/lib/vz или home: /home/pmx. Вы можете напрямую копировать в соответствующий раздел файлы. Логическая структура размещения информации на скриншоте:
Для создания виртуальных машин необходимо создать Пул ресурсов. Для этого кликните в дереве на вкладку Датацентр, справа выберите пункт Пулы, нажмите Создать, на тестовой машине задано имя пула home, по окончании нажмите ОК:
Создание виртуального контейнера CT
Сначала создайте CT виртуальную машину из скачанного шаблона CentOS 7. Для этого нажмите кнопку Создать CT, заполните поля и нажмите ОК.
На следующей вкладке выберите хранилище home и ранее закачанный шаблон CentOS 7.
Настройки корневого диска, процессора и памяти на тестовой машине оставим как предложено гипервизором. Обратите внимание на раздел сеть:
Итак, созданный нами ранее сетевой мост vmbr0 используется в виртуальных машинах Proxmox VE для создания виртуальных сетевых интерфейсов для них. Через vmbr0 интерфейс будет подключён к роутеру сети, к которому подключена сетевая карта, на которой работает vmbr0.
В результате наших действий начинает разворачиваться контейнер, содержащий CentOS 7 и настраиваться виртуальная машина.
Вернитесь в pve-test, найдите вновь созданный контейнер c ID 100 и названием centos7 и нажмите Запуск, а затем Консоль. Откроется окно браузера, в котором видно запущенный CentOS:
Укажите имя пользователя root и пароль, который ввели при создании контейнера CT и, если все сделано верно, можно управлять виртуальной машиной. Узнайте её IP-адрес, так как роутер, подключённый к тестовому хосту, должен был его выдать:
В результате получилось запустить полноценную виртуальную машину с Linux.
Создание виртуального контейнера VM
Для создания виртуальной машины VM с любой ОС нажмите кнопку Создать VM, укажите имя создаваемой VM, выберите пул ресурсов, нажмите Далее:
На втором окне предлагается выбрать загрузочный образ виртуального CD-диска, указать тип гостевой ОС:
Если все сделано правильно, то загруженный ISO образ должен быть доступен по клику по обведённому красным полю. Этот параметр может быть настроен позже из интерфейса управления виртуальной машиной VM.
Во вкладках Система, Жёсткий диск, Процессор, Память, Сеть оставлены все значения так, как предложил гипервизор. В последней вкладке Подтверждение кликем Готово и перейдите в настройки виртуальной машины ID 101 с именем litedeb, во вкладку Оборудование:
Если все нас устраивает и ничего менять не надо, нажмите кнопку Запуск и откройте Консоль. На тестовом хосте выяснилось, что лучше эксперимент проводить на дистрибутиве Debian 10 netinstall, и поменять тип жёсткого диска со SCSI на SATA, а также увеличить размер оперативной памяти виртуальной машины. И результат работы после нажатия кнопки Запуск и подключению к Консоли:
Резервное копирование виртуальных машин
Приступим к настройке резервного копирования виртуальных машин. Для этого мы используйте хранилище home. Чуть подробнее распишем рекомендации, данные в начале статьи. Основная рекомендация: настраивайте хранилище архивных копий в другом расположении, нежели рабочие виртуальные машины, например, можно также подключить FTP или Samba хранилище. Все это легко реализуется на базе Debian 10 с Proxmox VE.
Перейдите Датацентр, pve-test, VM100, в правом меню выберите раздел Резервная копия и нажмите кнопку Создать резервную копию сейчас:
Для наших задач хватает настройки Снимок и режима сжатия GZip, так как хоть виртуальные машины и включены постоянно, но обычно есть периоды, при которых нагрузки практически нет.
Чтобы настроить планировщик резервных копий нужно перейти в дереве в Датацентр и выбрать в правом меню пункт Резервная копия и нажать кнопку Добавить. Ниже показано, как можно настроить резервирование VM100 каждый чётный день недели в 01:45 локального времени сервера, с хорошим сжатием GZIP и отправлять при ошибках уведомление по почте:
Остаётся только проводить мониторинг хранилища для резервных на оставшееся свободное место зная, что, если произойдёт непредвиденное, всё можно восстановить. Сроки восстановления из Snapshot крайне малы, однако нужно понимать, что чем сильнее сжатие, тем дольше восстанавливается виртуальная машина.
По этим же причинам, необходимо тщательно подходить к выбору размера виртуального диска, например не выделять на виртуальную машину один диск 90Gb, а три по 30Gb. Во-первых, восстанавливать меньше, если один из виртуальных дисков вышел из строя. Во-вторых, сжатие и восстановление занимает меньше времени за счёт распараллеливания ресурсов хоста Debian 10 с Proxmox VE.
Заключение
Теперь вы знаете как выполняется установка и настройка proxmox на Debian 10. Особенно интересен апгрейд Debian 10 при условии, что хост расположен в облаке и его процессор поддерживает виртуализацию. Оплачивая один VPS или VDS, мы можем развернуть внутри несколько изолированных сервисов из любого, даже самого экзотического дистрибутива.
Proxmox VE показывает себя как успешное коммерческое решение с низкой стоимостью внедрения и использования. Proxmox VE позволяет управлять кластером виртуальных машин, мигрировать их между различными хостами Proxmox VE, централизованно настраивать резервирование и многое другое.
Нет похожих записей
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
Нам нужно установить имя хоста и убедиться, что оно разрешимо через / etc / hosts .
Шаг 3: Добавьте репозиторий Proxmox VE
Все пакеты Proxmox будут извлечены из соответствующего обратного репозитория, который был добавлен в систему вручную. Здесь мы добавим Proxmox VE No-Subscription Repository.
Импортировать ключ GPG:
Затем добавьте хранилище Proxmox VE:
Теперь вы можете обновить ваш репозиторий и систему, запустив:
Добавление Proxmox VE Ceph Repository:
Это основной Ceph-репозиторий Proxmox VE и содержит пакеты Ceph для производственного использования. Вы также можете использовать этот репозиторий для обновления только клиента Ceph.
Шаг 4: Установите пакеты Proxmox VE
Это команды, выполняемые для установки пакетов Proxmox VE.
Если у вас есть почтовый сервер в вашей сети, вы должны настроить postfix как спутниковую систему , и ваш существующий почтовый сервер будет «ретрансляционным хостом», который будет направлять электронные письма, отправленные сервером proxmox, конечному получателю. Если вы не знаете, что вводить здесь, выберите только местный .
После установки перезагрузите систему Debian для загрузки с ядром Proxmox VE.
Шаг 5: Доступ к веб-интерфейсу Proxmox VE
Панель инструментов Proxmox VE выглядит следующим образом:
Выберите « PAM Authentication » и выполните аутентификацию с помощью пароля пользователя root.
После входа создайте Linux Bridge с именем vmbr0 ,
И добавьте к нему свой первый сетевой интерфейс.
Посетите веб-сайт документации Proxmox для расширенных настроек и освоения администрирования Proxmox VE.
Читайте также: