При обработке следующих пакетов произошли ошибки pve manager proxmox ve

Hi! I'm trying to install Proxmox over Debian stretch and stuck up with the problem. After apt install proxmox-ve postfix open-iscsi I got the dependencies error: Настраивается пакет pve-firewall (3.0-5) … Job for pve-firewall.service failed because the control process exited with error code...

  • #1

Hi!
I’m trying to install Proxmox over Debian stretch and stuck up with the problem.
After apt install proxmox-ve postfix open-iscsi I got the dependencies error:

Настраивается пакет pve-firewall (3.0-5) …
Job for pve-firewall.service failed because the control process exited with error code.
See «systemctl status pve-firewall.service» and «journalctl -xe» for details.
dpkg: ошибка при обработке пакета pve-firewall (—configure):
подпроцесс установлен сценарий post-installation возвратил код ошибки 1
dpkg: зависимости пакетов не позволяют настроить пакет qemu-server:
qemu-server зависит от pve-firewall, однако:
Пакет pve-firewall пока не настроен.

dpkg: ошибка при обработке пакета qemu-server (—configure):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет proxmox-ve:
proxmox-ve зависит от qemu-server, однако:
Пакет qemu-server пока не настроен.

dpkg: ошибка при обработке пакета proxmox-ve (—configure):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет pve-manager:
pve-manager зависит от pve-firewall, однако:
Пакет pve-firewall пока не настроен.
pve-manager зависит от qemu-server (>= 1.1-1), однако:
Пакет qemu-server пока не настроен.

dpkg: ошибка при обработке пакета pve-manager (—configure):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет pve-ha-manager:
pve-ha-manager зависит от qemu-server, однако:
Пакет qemu-server пока не настроен.

dpkg: ошибка при обработке пакета pve-ha-manager (—configure):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет pve-container:
pve-container зависит от pve-ha-manager, однако:
Пакет pve-ha-manager пока не настроен.

dpkg: ошибка при обработке пакета pve-container (—configure):
проблемы зависимостей — оставляем не настроенным
При обработке следующих пакетов произошли ошибки:
pve-firewall
qemu-server
proxmox-ve
pve-manager
pve-ha-manager
pve-container

dietmar

dietmar

Proxmox Staff Member

Staff member


  • #2

So what is the output of:

# systemctl status pve-firewall.service

  • #3

root@cluster:/home/anton# systemctl status pve-firewall.service
● pve-firewall.service — Proxmox VE firewall
Loaded: loaded (/lib/systemd/system/pve-firewall.service; disabled; vendor pr
Active: failed (Result: exit-code) since Sun 2018-01-28 22:48:26 MSK; 20h ago
Process: 3778 ExecStart=/usr/sbin/pve-firewall start (code=exited, status=111)
CPU: 856ms

янв 28 22:48:26 cluster pve-firewall[3778]: ipcc_send_rec[1] failed: Connection
янв 28 22:48:26 cluster pve-firewall[3778]: ipcc_send_rec[2] failed: Connection
янв 28 22:48:26 cluster pve-firewall[3778]: ipcc_send_rec[2] failed: Connection
янв 28 22:48:26 cluster pve-firewall[3778]: ipcc_send_rec[3] failed: Connection
янв 28 22:48:26 cluster pve-firewall[3778]: ipcc_send_rec[3] failed: Connection
янв 28 22:48:26 cluster pve-firewall[3778]: Unable to load access control list:
янв 28 22:48:26 cluster systemd[1]: pve-firewall.service: Control process exited
янв 28 22:48:26 cluster systemd[1]: Failed to start Proxmox VE firewall.
янв 28 22:48:26 cluster systemd[1]: pve-firewall.service: Unit entered failed st
янв 28 22:48:26 cluster systemd[1]: pve-firewall.service: Failed with result ‘ex
lines 1-16/16 (END)

  • #4

So is there a solution to that?

  • #5

Hello! Please show your

file. firewall-pve may be unable to configure itself if there is a host configuration issue

  • #6

Quite right, Gleb. The hostname in hostnamectl command and the one in /etc/hosts must match to avoid the installation errors described in OP’s post.

Setting the hostname in Debian 9 Stretch:

Code:

hostnamectl set-hostname [your-hostname]

To check your hostname:

or just:

Last edited: Feb 23, 2018

I reciently install proxmox on Debian and the install failed. Here is the error:

 apt-get update
Hit:1 http://download.proxmox.com/debian/pve buster InRelease
Hit:2 http://security.debian.org/debian-security buster/updates InRelease
Hit:3 http://deb.debian.org/debian buster InRelease
Hit:4 http://deb.debian.org/debian buster-updates InRelease
Reading package lists... Done
root@px1:~# apt dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up pve-manager (6.3-3) ...
Job for pveproxy.service failed because the control process exited with error code.
See "systemctl status pveproxy.service" and "journalctl -xe" for details.
dpkg: error processing package pve-manager (--configure):
 installed pve-manager package post-installation script subprocess returned error exit status 1
dpkg: dependency problems prevent configuration of proxmox-ve:
 proxmox-ve depends on pve-manager; however:
  Package pve-manager is not configured yet.

dpkg: error processing package proxmox-ve (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 pve-manager
 proxmox-ve
E: Sub-process /usr/bin/dpkg returned an error code (1)

The resolution was to make sure the network was set to a static IP:

# The primary network interface
allow-hotplug enp4s0
iface enp4s0 inet static
address 192.168.0.16
        netmask 255.255.255.0
        gateway 192.168.0.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 1.1.1.1 1.0.0.1
        dns-search geekdecoder.com

The second issue was to make sure there was a host entry. Comment out the 127.0.0.1 and make sure to use the full host.domain host as below. Leaving out the end “px1” caused the issue.

#127.0.1.1      px1.geekdecoder.com     px1
192.168.0.16    px1.geekdecoder.com     px1

Установка proxmox на debian wheezy

Уже давно слышал об этой системе виртуализации (http://ru.wikipedia.org/wiki/Proxmox)…

Это система, использующая в качестве гипервизоров KVM и OpenVZ и имеющая удобный веб-интерфейс для управления.Итак, имеется прокачанный домашний компьютер с Debian Wheezy 7.3 (amd64) на борту. Когда я наконец-то собрался ставить – оказалось, что теперь, с выходом новой версии Proxmox 3.1 изменилась политика предоставления доступа к репозиториям.

Здесь (https://pve.proxmox.com/wiki/Package_repositories) можно найти описания репозиториев. Вижу, что Proxmox VE Enterprise Repository не подходит – на него платная подписка.

Официальное руководство (http://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Wheezy) настоятельно рекомендует ставить Proxmox VE No-Subscription Repository, однако пугает описание этого репозитория: “The pve-no-subscription repo can be used for testing and non-production use. Its not recommended to run on production servers as these packages are not always heavily tested and validated. As the name suggests, there is no Proxmox VE Subscription Key needed to access this repository.

Что же делать? Я решил попробовать поставить версию 3.0 – стабильный предыдущий релиз.

Добавим строку в пакетный менеджер:

echo "deb http://download.proxmox.com/debian wheezy pve" >> /etc/apt/sources.list

Дальше, проделаем, как описано в документации. Ставим ключ репозитория:

wget -O- "http://download.proxmox.com/debian/key.asc" | apt-key add -

Затем обновим список пакетов и поставим имеющиеся на данный момент обновления (я использую aptitude):

aptitude update && aptitude safe-upgrade

Ставим ядро:

aptitude install pve-firmware pve-kernel-2.6.32-26-pve

При этом система у меня поругалась:

Следующие пакеты имеют неудовлетворённые зависимости:
 pve-firmware : Конфликтует: firmware-linux-free но установлен 3.2 
                Конфликтует: firmware-linux-free:i386 который является виртуальным пакетом.
                Конфликтует: firmware-realtek но установлен 0.36+wheezy.1 
                Конфликтует: firmware-realtek:i386 который является виртуальным пакетом.
Следующие действия разрешат зависимости:

     Удалить следующие пакеты:                                          
1)     firmware-linux-free                                              
2)     firmware-realtek                                                 

     Оставить следующие зависимости неразрешёнными:                     
3)     linux-image-3.2.0-4-amd64 рекомендует firmware-linux-free (>= 3~)


Принять данное решение? [Y/n/q/?]

я принял данное решение, так как далее разработчики proxmox предлагают удалить ядро linux-image-3.2.0-4-amd64
Проверив после перезагрузки, что всё работает с ядром pve-kernel-2.6.32-26-pve, смело удаляем ядро, которое стояло по умолчанию:

aptitude remove linux-image-amd64 linux-image-3.2.0-4-amd64

Проверяем конфигурацию загрузчика:

update-grub

Теперь ставим пакеты Proxmox VE:

aptitude install proxmox-ve-2.6.32 ntp ssh lvm2 postfix ksm-control-daemon vzprocps open-iscsi bootlogd

Вводим https://ваше-имя-хоста:8006/ и радуемся!

Ошибки при установке Proxmox на Debian

[1] Proxmox: initscript rrdcached, action “start” failed

У меня установка proxmox-ve-2.6.32 и его зависимостей прервалась специфической ошибкой:

Настраивается пакет rrdcached (1.4.7-2) …
Starting RRDtool data caching daemon: rrdcachedBase directory (-b) resolved via file system links!
Please consult rrdcached '-b' documentation!
Consider specifying the real directory (/media/all/var/lib/rrdcached/db)
invoke-rc.d: initscript rrdcached, action "start" failed.
dpkg: ошибка при обработке параметра rrdcached (--configure):
 подпроцесс установлен сценарий post-installation возвратил код ошибки 5
dpkg: зависимости пакетов не позволяют настроить пакет pve-cluster:
 pve-cluster зависит от rrdcached, однако:
  Пакет rrdcached пока не настроен.

Это произошло из-за того, что я сделал каталог /var символический ссылкой с каталога, находящегося на обычном жёстком диске, в то время, как корень системы находится на SSD. Можно было, конечно, примонтировать, но мне было лень создавать отдельный раздел для /var, поэтому я использовал тот же раздел, где лежит /home. У вас не должно быть такой проблемы.

Поборол её так:

1) определяем, где хранится конфигурация

dpkg -L rrdcached

...
/etc/default/rrdcached
...

2) открываем файлы и раскоментируем параметр, указав реальное место папки без символических ссылок:

nano /etc/default/rrdcached

...
OPTS="-b /media/all/var/lib/rrdcached/db"
...

[2] Proxmox: Unable to get local IP address

Настраивается пакет pve-cluster (3.0-8) …
[....] Starting pve cluster filesystem : pve-cluster[main] crit: Unable to get local IP address
 (warning).
invoke-rc.d: initscript pve-cluster, action "start" failed.

Как поборол (rocknroothost – это моё имя хоста, вам нужно подставить своё):

cp -av /etc/hosts /etc/hosts.original

потом файл /etc/hosts приводим к виду:

---
127.0.0.1 localhost.localdomain localhost
192.168.99.99 rocknroothost.pp.ua rocknroothost pvelocalhost
---

также файл /etc/hostname приводим к виду:

---
rocknroothost
---

затем выполнить:

apt-get install -f

и установка продолжится

/etc/init.d/hostname.sh start

[3] Proxmox: failed to load

Наконец, намучившись с установкой, ввожу в браузер:
http://rocknroothost:8006/ => получаю ошибку: failed to load, проверяю, что служба работает

lsof -i tcp:8006

ломаю голову, гуглю… но это просто смешно – нужно было смотреть внимательно:
https и не http 🙂

Убрать сообщение proxmox “No Valid Subscription”

Для этого нужно всего лишь отредактировать файл pvemanagerlib.js:

Открываем:

nano /usr/share/pve-manager/ext4/pvemanagerlib.js

С помощью команды “locate pvemanagerlib.js” вы можете самостоятельно найти этот файл.

находим строку:

  if (data.status !== 'Active') {

Копируем и комментируем её (на всякий случай) и исправляем, как показано ниже:

//  if (data.status !== 'Active') {
  if (false) {

Теперь сообщение нас больше не беспокоит.

Update. в новых версиях proxmox будет такой путь: /usr/share/pve-manager/js/pvemanagerlib.js

Проблема с java plugin в proxmox

Установленный таким образом java plugin хорошо работает сам по себе, однако в случае с proxmox выдаёт ошибку:

Appication Blocked by Security Settings: Your security setting have blocked a self-signed application from running

Вот снимок экрана ошибки:

java-plugin-proxmox-blocked

Что же делать? Есть 2 решения:

[Решение 1] Установить IcedTea plugin и дальше подключать его в браузер

aptitude install icedtea-7-plugin

и так далее… Но я этого делать не стал, так как нашёл решение лучше -> следующее, “Решение 2”.

[Решение 2] Настроить Java Control Panel

/usr/lib/jvm/j2sdk1.7-oracle/bin/ControlPanel

Выполнение такой команды в терминале запускает Java Control Panel.
Если в вашем случае нет такого файла, тогда найти его можно так:

find /usr/lib/jvm/ | grep -i ControlPanel

Далее выбираем Security > Edit Site List > Add и добавляем свой путь к хосту (в моём случае это был https://aspetruk:8006)

java-plugin-proxmox-control-panel

После этого консоль в proxmox отлично заработала.

Содержание

  1. Записки IT специалиста
  2. Ошибка установки Proxmox VE 6 после получения настроек по DHCP
  3. Problems installing
  4. bounguine
  5. Работа с кластером Proxmox: установка, настройка сети, ZFS, решение распространенных проблем
  6. Установка Proxmox
  7. Установка Nginx и Let’s Encrypt сертификата
  8. Установка и настройка ZFS
  9. Репликация инстансов на соседний гипервизор
  10. Особенности сетевых настроек на Hetzner
  11. В завершении

Записки IT специалиста

Технический блог специалистов ООО»Интерфейс»

  • Главная
  • Ошибка установки Proxmox VE 6 после получения настроек по DHCP

Ошибка установки Proxmox VE 6 после получения настроек по DHCP

Плохо, когда ошибки возникают во время установки системы, еще хуже, если это такая ответственная вещь как гипервизор. А если проблема связана с железом, то становится совсем тоскливо. Именно с такой ситуацией мы столкнулись буквально на днях, установщик Proxmox VE 6 завершал свою работу с ошибкой на системе с процессором AMD Ryzen содержащим встроенное видеоядро. К счастью, Proxmox — это открытое по на базе Debian, а значит есть, как минимум, несколько вариантов решения проблемы. Один из них — исправить все на месте, прямо здесь и сейчас, именно о нем мы расскажем в данной статье.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Данной ошибке подвержены все версии Proxmox Virtual Environment 6.х и возникает она на системах, содержащих процессоры AMD со встроенным видеоядром. Причина — установщик не может запуститься в графическом режиме, а текстовый вариант установщика не предусмотрен. Внешне это проявляется так: система получает сетевые настройки по DHCP, затем долго задумывается после сообщения:

И наконец «радует» нас сообщением:

Есть два пути решения этой проблемы. Один из них, который рекомендуют разработчики Proxmox — это установить сначала Debian 10, а затем уже на него Proxmox VE, об этом мы рассказывали в статье: Установка Proxmox VE 6 в Debian 10.

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

Прежде всего переключаемся в третью консоль — tty3. Для этого используйте сочетание клавиш Alt + F3 . Уже в ней установим необходимые права на директорию временных файлов:

И обновим систему:

На все запросы отвечаем положительно.

Теперь перенастроим графическую подсистему:

Обратите внимание на регистр команд, в Linux это важно. Переместим полученный нами файл настроек в /etc:

После чего заменим в нем все вхождения amdgpu на fbdev:

Затем снова вернемся в первую консоль tty1 — Alt + F1 и запустим графическую оболочку:

В большинстве случаев это должно помочь, и установка успешно продолжится. Иначе следует прислушаться к совету разработчиков и установить сначала Debian 10, а уже на него Proxmox.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Или подпишись на наш Телеграм-канал:

Источник

Problems installing

bounguine

New Member

Hi!
I’m trying to install Proxmox over Debian stretch and stuck up with the problem.
After apt install proxmox-ve postfix open-iscsi I got the dependencies error:

Настраивается пакет pve-firewall (3.0-5) …
Job for pve-firewall.service failed because the control process exited with error code.
See «systemctl status pve-firewall.service» and «journalctl -xe» for details.
dpkg: ошибка при обработке пакета pve-firewall (—configure):
подпроцесс установлен сценарий post-installation возвратил код ошибки 1
dpkg: зависимости пакетов не позволяют настроить пакет qemu-server:
qemu-server зависит от pve-firewall, однако:
Пакет pve-firewall пока не настроен.

dpkg: ошибка при обработке пакета qemu-server (—configure):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет proxmox-ve:
proxmox-ve зависит от qemu-server, однако:
Пакет qemu-server пока не настроен.

dpkg: ошибка при обработке пакета proxmox-ve (—configure):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет pve-manager:
pve-manager зависит от pve-firewall, однако:
Пакет pve-firewall пока не настроен.
pve-manager зависит от qemu-server (>= 1.1-1), однако:
Пакет qemu-server пока не настроен.

dpkg: ошибка при обработке пакета pve-manager (—configure):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет pve-ha-manager:
pve-ha-manager зависит от qemu-server, однако:
Пакет qemu-server пока не настроен.

dpkg: ошибка при обработке пакета pve-ha-manager (—configure):
проблемы зависимостей — оставляем не настроенным
dpkg: зависимости пакетов не позволяют настроить пакет pve-container:
pve-container зависит от pve-ha-manager, однако:
Пакет pve-ha-manager пока не настроен.

dpkg: ошибка при обработке пакета pve-container (—configure):
проблемы зависимостей — оставляем не настроенным
При обработке следующих пакетов произошли ошибки:
pve-firewall
qemu-server
proxmox-ve
pve-manager
pve-ha-manager
pve-container

Источник

Работа с кластером Proxmox: установка, настройка сети, ZFS, решение распространенных проблем

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

Proxmox кластер может состоять из двух и более серверов. Максимальное количество нод в кластере равняется 32 штукам. Наш собственный кластер будет состоять из трех нод на мультикасте (в статье я также опишу, как поднять кластер на уникасте — это важно, если вы базируете свою кластерную инфраструктуру на Hetzner или OVH, например). Коротко говоря, мультикаст позволяет осуществлять передачу данных одновременно на несколько нод. При мультикасте мы можем не задумываться о количестве нод в кластере (ориентируясь на ограничения выше).

Сам кластер строится на внутренней сети (важно, чтобы IP адреса были в одной подсети), у тех же Hetzner и OVH есть возможность объединять в кластер ноды в разных датацентрах с помощью технологии Virtual Switch (Hetzner) и vRack (OVH) — о Virtual Switch мы также поговорим в статье. Если ваш хостинг-провайдер не имеет похожие технологии в работе, то вы можете использовать OVS (Open Virtual Switch), которая нативно поддерживается Proxmox, или использовать VPN. Однако, я рекомендую в данном случае использовать именно юникаст с небольшим количеством нод — часто возникают ситуации, где кластер просто “разваливается” на основе такой сетевой инфраструктуры и его приходится восстанавливать. Поэтому я стараюсь использовать именно OVH и Hetzner в работе — подобных инцидентов наблюдал в меньшем количестве, но в первую очередь изучайте хостинг-провайдера, у которого будете размещаться: есть ли у него альтернативная технология, какие решения он предлагает, поддерживает ли мультикаст и так далее.

Установка Proxmox

Proxmox может быть установлен двумя способами: ISO-инсталлятор и установка через shell. Мы выбираем второй способ, поэтому установите Debian на сервер.

Перейдем непосредственно к установке Proxmox на каждый сервер. Установка предельно простая и описана в официальной документации здесь.

Добавим репозиторий Proxmox и ключ этого репозитория:

Обновляем репозитории и саму систему:

После успешного обновления установим необходимые пакеты Proxmox:

Заметка: во время установки будет настраиваться Postfix и grub — одна из них может завершиться с ошибкой. Возможно, это будет вызвано тем, что хостнейм не резолвится по имени. Отредактируйте hosts записи и выполните apt-get update

С этого момента мы можем авторизоваться в веб-интерфейс Proxmox по адресу https:// :8006 (столкнетесь с недоверенным сертификатом во время подключения).


Изображение 1. Веб-интерфейс ноды Proxmox

Установка Nginx и Let’s Encrypt сертификата

Мне не очень нравится ситуация с сертификатом и IP адресом, поэтому я предлагаю установить Nginx и настроить Let’s Encrypt сертификат. Установку Nginx описывать не буду, оставлю лишь важные файлы для работы Let’s encrypt сертификата:

Команда для выпуска SSL сертификата:

Не забываем после установки SSL сертификата поставить его на автообновление через cron:

Отлично! Теперь мы можем обращаться к нашему домену по HTTPS.

Заметка: чтобы отключить информационное окно о подписке, выполните данную команду:

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

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

Работать с сетевой конфигурацией Proxmox можно двумя способами: через веб-интерфейс или через конфигурационный файл /etc/network/interfaces. В первом варианте вам потребуется перезагрузка сервера (или можно просто переименовать файл interfaces.new в interfaces и сделать перезапуск networking сервиса через systemd). Если вы только начинаете настройку и еще нет виртуальных машин или LXC контейнеров, то желательно перезапускать гипервизор после изменений.

Теперь создадим сетевой мост под названием vmbr1 во вкладке network в веб-панели Proxmox.


Изображение 2. Сетевые интерфейсы ноды proxmox1


Изображение 3. Создание сетевого моста


Изображение 4. Настройка сетевой конфигурации vmbr1

Настройка предельно простая — vmbr1 нам нужен для того, чтобы инстансы получали доступ в Интернет.

Теперь перезапускаем наш гипервизор и проверяем, создался ли интерфейс:


Изображение 5. Сетевой интерфейс vmbr1 в выводе команды ip a

Заметьте: у меня уже есть интерфейс ens19 — это интерфейс с внутренней сетью, на основе ее будет создан кластер.

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

Также важный этап сейчас заключается во включении форвардинга пакетов — без нее инстансы не будут получать доступ к внешней сети. Открываем файл sysctl.conf и изменяем значение параметра net.ipv4.ip_forward на 1, после чего вводим следующую команду:

В выводе вы должны увидеть директиву net.ipv4.ip_forward (если не меняли ее до этого)

Настройка Proxmox кластера

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

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

Создадим кластер через веб-панель:


Изображение 6. Создание кластера через веб-интерфейс

После создания кластера нам необходимо получить информацию о нем. Переходим в ту же вкладку кластера и нажимаем кнопку “Join Information”:


Изображение 7. Информация о созданном кластере

Данная информация пригодится нам во время присоединения второй и третьей ноды в кластер. Подключаемся к второй ноде и во вкладке Cluster нажимаем кнопку “Join Cluster”:


Изображение 8. Подключение к кластеру ноды

Разберем подробнее параметры для подключения:

  1. Peer Address: IP адрес первого сервера (к тому, к которому мы подключаемся)
  2. Password: пароль первого сервера
  3. Fingerprint: данное значение мы получаем из информации о кластере


Изображение 9. Состояние кластера после подключения второй ноды

Вторая нода успешно подключена! Однако, такое бывает не всегда. Если вы неправильно выполните шаги или возникнут сетевые проблемы, то присоединение в кластер будет провалено, а сам кластер будет “развален”. Лучшее решение — это отсоединить ноду от кластера, удалить на ней всю информацию о самом кластере, после чего сделать перезапуск сервера и проверить предыдущие шаги. Как же безопасно отключить ноду из кластера? Для начала удалим ее из кластера на первом сервере:

После чего нода будет отсоединена от кластера. Теперь переходим на сломанную ноду и отключаем на ней следующие сервисы:

Proxmox кластер хранит информацию о себе в sqlite базе, ее также необходимо очистить:

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

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

Установка и настройка ZFS

ZFS — это файловая система, которая может использоваться совместно с Proxmox. С помощью нее можно позволить себе репликацию данных на другой гипервизор, миграцию виртуальной машины/LXC контейнера, доступ к LXC контейнеру с хост-системы и так далее. Установка ее достаточно простая, приступим к разбору. На моих серверах доступно три SSD диска, которые мы объединим в RAID массив.

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

Устанавливаем требуемые зависимости:

Устанавливаем сам ZFS:

Если вы в будущем получите ошибку fusermount: fuse device not found, try ‘modprobe fuse’ first, то выполните следующую команду:

Теперь приступим непосредственно к настройке. Для начала нам требуется отформатировать SSD и настроить их через parted:

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

zpool create -f -o ashift=12 rpool /dev/sda4 /dev/sdb4 /dev/sdc4

Мы выбираем ashift=12 из соображений производительности — это рекомендация самого zfsonlinux, подробнее про это можно почитать в их вики: github.com/zfsonlinux/zfs/wiki/faq#performance-considerations

Применим некоторые настройки для ZFS:

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

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

Теперь добавим ZFS в Proxmox. Переходим в настройки датацентра (именно его, а не отдельной ноды) в раздел «Storage», кликаем на кнопку «Add» и выбираем опцию «ZFS», после чего мы увидим следующие параметры:

ID: Название стораджа. Я дал ему название local-zfs
ZFS Pool: Мы создали rpool/data, его и добавляем сюда.
Nodes: указываем все доступные ноды

Данная команда создает новый пул с выбранными нами дисками. На каждом гипервизоре должен появится новый storage под названием local-zfs, после чего вы сможете смигрировать свои виртуальные машины с локального storage на ZFS.

Репликация инстансов на соседний гипервизор

В кластере Proxmox есть возможность репликации данных с одного гипервизора на другой: данный вариант позволяет осуществлять переключение инстанса с одного сервера на другой. Данные будут актуальны на момент последней синхронизации — ее время можно выставить при создании репликации (стандартно ставится 15 минут). Существует два способа миграции инстанса на другую ноду Proxmox: ручной и автоматический. Давайте рассмотрим в первую очередь ручной вариант, а в конце я предоставлю вам Python скрипт, который позволит создавать виртуальную машину на доступном гипервизоре при недоступности одного из гипервизоров.

Для создания репликации необходимо перейти в веб-панель Proxmox и создать виртуальную машину или LXC контейнер. В предыдущих пунктах мы с вами настроили vmbr1 мост с NAT, что позволит нам выходить во внешнюю сеть. Я создам LXC контейнер с MySQL, Nginx и PHP-FPM с тестовым сайтом, чтобы проверить работу репликации. Ниже будет пошаговая инструкция.

Загружаем подходящий темплейт (переходим в storage —> Content —> Templates), пример на скриншоте:


Изображение 10. Local storage с шаблонами и образами ВМ

Нажимаем кнопку “Templates” и загружаем необходимый нам шаблон LXC контейнера:


Изображение 11. Выбор и загрузка шаблона

Теперь мы можем использовать его при создании новых LXC контейнеров. Выбираем первый гипервизор и нажимаем кнопку “Create CT” в правом верхнем углу: мы увидим панель создания нового инстанса. Этапы установки достаточно просты и я приведу лишь конфигурационный файл данного LXC контейнера:

Контейнер успешно создан. К LXC контейнерам можно подключаться через команду pct enter , я также перед установкой добавил SSH ключ гипервизора, чтобы подключаться напрямую через SSH (в PCT есть небольшие проблемы с отображением терминала). Я подготовил сервер и установил туда все необходимые серверные приложения, теперь можно перейти к созданию репликации.

Кликаем на LXC контейнер и переходим во вкладку “Replication”, где создаем параметр репликации с помощью кнопки “Add”:


Изображение 12. Создание репликации в интерфейсе Proxmox


Изображение 13. Окно создания Replication job

Я создал задачу реплицировать контейнер на вторую ноду, как видно на следующем скриншоте репликация прошла успешно — обращайте внимание на поле “Status”, она оповещает о статусе репликации, также стоит обращать внимание на поле “Duration”, чтобы знать, сколько длится репликация данных.


Изображение 14. Список синхронизаций ВМ

Теперь попробуем смигрировать машину на вторую ноду с помощью кнопки “Migrate”

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

Ошибка “Host Key Verification Failed”

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

Примите Hostkey и попробуйте ввести эту команду, она должна подключить вас к серверу:

Особенности сетевых настроек на Hetzner

Переходим в панель Robot и нажимаем на кнопку “Virtual Switches”. На следующей странице вы увидите панель создания и управления интерфейсов Virtual Switch: для начала его необходимо создать, а после “подключить” выделенные сервера к нему. В поиске добавляем необходимые сервера для подключения — их не не нужно перезагружать, только придется подождать до 10-15 минут, когда подключение к Virtual Switch будет активно.

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

Давайте разберем подробнее, что это такое. По своей сути — это VLAN, который подключается к единственному физическому интерфейсу под названием enp4s0 (он у вас может отличаться), с указанием номера VLAN — это номер Virtual Switch’a, который вы создавали в веб-панели Hetzner Robot. Адрес можете указать любой, главное, чтобы он был локальный.

Отмечу, что конфигурировать enp4s0 следует как обычно, по сути он должен содержать внешний IP адрес, который был выдан вашему физическому серверу. Повторите данные шаги на других гипервизорах, после чего перезагрузите на них networking сервис, сделайте пинг до соседней ноды по IP адресу Virtual Switch. Если пинг прошел успешно, то вы успешно установили соединение между серверами по Virtual Switch.

Я также приложу конфигурационный файл sysctl.conf, он понадобится, если у вас будут проблемы с форвардингом пакетом и прочими сетевыми параметрами:

Добавление IPv4 подсети в Hetzner

Перед началом работ вам необходимо заказать подсеть в Hetzner, сделать это можно через панель Robot.

Создадим сетевой мост с адресом, который будет из этой подсети. Пример конфигурации:

Теперь переходим в настройки виртуальной машины в Proxmox и создаем новый сетевой интерфейс, который будет прикреплен к мосту vmbr2. Я использую LXC контейнер, его конфигурацию можно изменять сразу же в Proxmox. Итоговая конфигурация для Debian:

Обратите внимание: я указал 26 маску, а не 29 — это требуется для того, чтобы сеть на виртуальной машине работала.

Добавление IPv4 адреса в Hetzner

Ситуация с одиночным IP адресом отличается — обычно Hetzner дает нам дополнительный адрес из подсети сервера. Это означает, что вместо vmbr2 нам требуется использоваться vmbr0, но на данный момент его у нас нет. Суть в том, что vmbr0 должен содержать IP адрес железного сервера (то есть использовать тот адрес, который использовал физический сетевой интерфейс enp2s0). Адрес необходимо переместить на vmbr0, для этого подойдет следующая конфигурация (советую заказать KVM, чтобы в случае чего возобновить работу сети):

Перезапустите сервер, если это возможно (если нет, перезапустите сервис networking), после чего проверьте сетевые интерфейсы через ip a:

Как здесь видно, enp2s0 подключен к vmbr0 и не имеет IP адрес, так как он был переназначен на vmbr0.

Теперь в настройках виртуальной машины добавляем сетевой интерфейс, который будет подключен к vmbr0. В качестве gateway укажите адрес, прикрепленный к vmbr0.

В завершении

Надеюсь, что данная статья пригодится вам, когда вы будете настраивать Proxmox кластер в Hetzner. Если позволит время, то я расширю статью и добавлю инструкцию для OVH — там тоже не все очевидно, как кажется на первый взгляд. Материал получился достаточно объемным, если найдете ошибки, то, пожалуйста, напишите в комментарии, я их исправлю. Всем спасибо за уделенное внимание.

Автор: Илья Андреев, под редакцией Алексея Жадан и команды «Лайв Линукс»

Источник

I am trying to install Proxmox on Debian 11, but running apt install proxmox-ve postfix open-iscsi fails:

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 criu : Depends: python-future but it is not installable
        Depends: python-ipaddr but it is not installable
        Depends: python-protobuf but it is not installable
 libpve-u2f-server-perl : Depends: perlapi-5.28.1 but it is not installable
 librados2-perl : Depends: perlapi-5.28.1 but it is not installable
 proxmox-ve : Depends: pve-qemu-kvm but it is not installable
 pve-cluster : Depends: corosync (>= 2.3.4-1) but it is not going to be installed
               Depends: libqb0 (>= 0.17.1-1) but it is not installable
               Depends: perlapi-5.28.1 but it is not installable
               Depends: libcmap4 (>= 1.99.9) but it is not going to be installed
               Depends: libcpg4 (>= 2.3.4-1) but it is not going to be installed
               Depends: libquorum5 (>= 2.3.4-1) but it is not going to be installed
 qemu-server : Depends: pve-qemu-kvm (>= 3.0.1-62) but it is not installable
               Depends: libjson-c3 (>= 0.10) but it is not installable
 spiceterm : Depends: pve-qemu-kvm but it is not installable
E: Unable to correct problems, you have held broken packages.

How can I fix this?

Stephen Kitt's user avatar

Stephen Kitt

389k53 gold badges999 silver badges1097 bronze badges

asked Jan 24, 2022 at 15:13

Ryn0's user avatar

0

It seems that the repositories referenced in your setup are incorrect. To fix this, redo the relevant step in the installation instructions:

echo "deb [arch=amd64] http://download.proxmox.com/debian/pve bullseye pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list

as root. You should also check that there are no other Proxmox references in files in /etc/apt/sources.list.d or in /etc/apt/sources.list itself.

Then, update with

apt update

(again, as root) and try the installation again.

answered Jan 24, 2022 at 17:07

Stephen Kitt's user avatar

Stephen KittStephen Kitt

389k53 gold badges999 silver badges1097 bronze badges

0

I am trying to install Proxmox on Debian 11, but running apt install proxmox-ve postfix open-iscsi fails:

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 criu : Depends: python-future but it is not installable
        Depends: python-ipaddr but it is not installable
        Depends: python-protobuf but it is not installable
 libpve-u2f-server-perl : Depends: perlapi-5.28.1 but it is not installable
 librados2-perl : Depends: perlapi-5.28.1 but it is not installable
 proxmox-ve : Depends: pve-qemu-kvm but it is not installable
 pve-cluster : Depends: corosync (>= 2.3.4-1) but it is not going to be installed
               Depends: libqb0 (>= 0.17.1-1) but it is not installable
               Depends: perlapi-5.28.1 but it is not installable
               Depends: libcmap4 (>= 1.99.9) but it is not going to be installed
               Depends: libcpg4 (>= 2.3.4-1) but it is not going to be installed
               Depends: libquorum5 (>= 2.3.4-1) but it is not going to be installed
 qemu-server : Depends: pve-qemu-kvm (>= 3.0.1-62) but it is not installable
               Depends: libjson-c3 (>= 0.10) but it is not installable
 spiceterm : Depends: pve-qemu-kvm but it is not installable
E: Unable to correct problems, you have held broken packages.

How can I fix this?

Stephen Kitt's user avatar

Stephen Kitt

389k53 gold badges999 silver badges1097 bronze badges

asked Jan 24, 2022 at 15:13

Ryn0's user avatar

0

It seems that the repositories referenced in your setup are incorrect. To fix this, redo the relevant step in the installation instructions:

echo "deb [arch=amd64] http://download.proxmox.com/debian/pve bullseye pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list

as root. You should also check that there are no other Proxmox references in files in /etc/apt/sources.list.d or in /etc/apt/sources.list itself.

Then, update with

apt update

(again, as root) and try the installation again.

answered Jan 24, 2022 at 17:07

Stephen Kitt's user avatar

Stephen KittStephen Kitt

389k53 gold badges999 silver badges1097 bronze badges

0

При обновлении Proxmox с 4.0 Beta до 4.4 не был изменен репозиторий Proxmox’а на новую версию в

/etc/apt/sources.list

нужно было заменить

deb http://download.proxmox.com/debian wheezy pve-no-subscription
на
deb http://download.proxmox.com/debian jessie pve-no-subscription

В результате нескольких обновлений с помощью apt-get upgrade и apt-get dist-upgrade возникли проблемы с зависимостями и перестал запускаться web-интерфейс, не запускался сервис pve-firewall.

Решение проблемы состояло в следующем:

  1. Попытки решить проблему автоматически при помощи

apt-get -f install
dpkg -C    #проверяет консистентность базы пакетов и осуществляет чистку (спрашивает что делать с не до конца установленными пакетами)
dpkg -V   # проверяет целостность пакетов
apt-get clean
apt-get autoremove

ничего не дали.

2. По совету с форума поддержки proxmox (правда для предыдущей ветки продукта)

  1. remove proxmox ve 3.4 packages (apt-get remove proxmox-ve-2.6.32 pve-manager corosync-pve openais-pve redhat-cluster-pve pve-cluster pve-firmware)
  2. adapt your sources.list, pointing all to jessie
  3. apt-get install pve-kernel-4.2.1-1-pve pve-firmware
  4. apt-get dist-upgrade
  5. reboot into the 4.2.1 kernel
  6. apt-get install proxmox-ve

были удалены следующие пакеты

apt-get remove pve-manager
apt-get remove pve-firmware
apt-get remove pve-cluster
apt-get remove pve-firewall

Переинсталлировать при помощи aptitude (как было так же указано на форуме) не получилось

aptitude reinstall proxmox-ve

3. При попытке поставить обратно proxmox-ve,  apt ругался на неразрешенные зависимости — говорил, что нужные пакеты не установлены (на самом деле версии не соответствовали).

В  результате хождения по зависимостям и попыток поставить их отдельно, выяснилось, что пакет python-ceph не той версии, которая нужна. После его удаления

apt-get remove python-ceph

и установки заново (установилась другая версия), apt стал ругаться на то, что pve-firewall masked.

После

systemctl unmask pve-firewall.service

и далее

apt-get install proxmox-ve
apt-get install pve-firewall
apt-get dist-upgrade
apt-get -f install

все обновилось до нужной версии и заработало.

Полезные команды

journalctl
systemctl start pve-firewall.service
systemctl status pve-firewall.service
journalctl -xn
systemctl unmask pve-firewall.service
pveversion -v
grep -A 2 'Start-Date: 2016-01-17' /var/log/apt/history.log

Интересная статья — Как откатить обновления на Debian / Ubuntu Linux в случае проблем

Подробнее о mask:

FireWall masked
How to resolve the error message below
Failed to issue method call: Unit firewalld.service is masked.

The main reason a service is masked is to prevent accidental starting or enabling of a serive.
For example firewalld can be masked with the following commad
#systemctl mask firewalld

If you ever want to start the firewalld service. you may get the error message
Failed to issue method call: Unit firewalld.service is masked.

To resolve this, unmask the firewall with the following command
#systemctl unmask firewalld

Понравилась статья? Поделить с друзьями:
  • При открытии смены произошла ошибка смена не открыта на фискальном регистраторе смена уже открыта
  • При обработке следующих пакетов произошли ошибки initramfs tools
  • При открытии смены произошла ошибка при подключении оборудования
  • При обработке следующих пакетов произошли ошибки grub pc
  • При обработке платежа произошла ошибка на госуслугах что делать