Proxmox - Аварийные ситуации и пути решения проблем: различия между версиями

Материал из support.qbpro.ru
Нет описания правки
 
Строка 1: Строка 1:
В этой статье будет отражаться опыт решения тех или иных проблем в эксплуатации гипервизоров Proxmox.
В этой статье будет отражаться опыт решения тех или иных проблем в эксплуатации гипервизоров Proxmox.
 
<br>
{| class="wikitable"
|+ СИСТЕМНЫЕ КАТАЛОГИ И ФАЙЛЫ PROXMOX
! ТИП
! НАЗНАЧЕНИЕ
! ПУТЬ
|-
|Каталог
|Конфигурация '''Proxmox'''
|/etc/pve/
|-
|Каталог
|Конфигурации Файрволлов (firewoll) в том числе и хостовой Ноды '''Proxmox'''
|/etc/pve/firewall/
|-
|Каталог
|Конфигурации нод
|/etc/pve/nodes/'''nodename'''
|-
|Файл
|Конфигурации контейнеров '''LXC''' в ноде
|/etc/pve/nodes/'''nodename'''/lxc/'''id_lxc'''.conf
|-
|Файл
|Конфигурации виртуальных машин '''VM''' в ноде
|/etc/pve/nodes/'''nodename'''/qemu-server/'''id_vm'''.conf
|-
|-
|Файл
|Конфигурация '''Нод''' в кластере (corosync)
|/etc/pve/corosync.conf
|-
|Файл
|Конфигурация '''НОСИТЕЛЕЙ зарегистрированных в НОДАХ''' в кластере (storage)
|/etc/pve/storage.cfg
|-
|Файл
|Конфигурация пользователей в '''Кластере''' или '''Ноде'''
|/etc/pve/user.cfg
|-
|База Sqlite
|Конфигурация '''Кластера''' с нодами или без них если не поднят HA
|/var/lib/pve-cluster/config.db
|-
|Каталог
|Конфигурации '''FireWoll''' текущей ноды
|/var/lib/pve-firewall
|-
|}
==Удаление вышедшей из строя ноды из кластера==
==Удаление вышедшей из строя ноды из кластера==
* Для начала удалим ее из кластера, для этого с любой другой ноды в консоли выполняем команду:
* Для начала удалим ее из кластера, для этого с любой другой ноды в консоли выполняем команду:

Текущая версия от 18:21, 6 марта 2024

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

СИСТЕМНЫЕ КАТАЛОГИ И ФАЙЛЫ PROXMOX
ТИП НАЗНАЧЕНИЕ ПУТЬ
Каталог Конфигурация Proxmox /etc/pve/
Каталог Конфигурации Файрволлов (firewoll) в том числе и хостовой Ноды Proxmox /etc/pve/firewall/
Каталог Конфигурации нод /etc/pve/nodes/nodename
Файл Конфигурации контейнеров LXC в ноде /etc/pve/nodes/nodename/lxc/id_lxc.conf
Файл Конфигурации виртуальных машин VM в ноде /etc/pve/nodes/nodename/qemu-server/id_vm.conf
Файл Конфигурация Нод в кластере (corosync) /etc/pve/corosync.conf
Файл Конфигурация НОСИТЕЛЕЙ зарегистрированных в НОДАХ в кластере (storage) /etc/pve/storage.cfg
Файл Конфигурация пользователей в Кластере или Ноде /etc/pve/user.cfg
База Sqlite Конфигурация Кластера с нодами или без них если не поднят HA /var/lib/pve-cluster/config.db
Каталог Конфигурации FireWoll текущей ноды /var/lib/pve-firewall

Удаление вышедшей из строя ноды из кластера

  • Для начала удалим ее из кластера, для этого с любой другой ноды в консоли выполняем команду:
pvecm delnode "Имя_Ноды"
  • Проверяем список нод:
pvecm nodes

Если в ответ получаем ошибку:

cluster not ready - no quorum?
  • Значит у вас в кластере всего меньше 3 нод осталось, в этом случае у вас не будет возможности выполнить бэкап, запустить или остановить виртуальные машины. Проблема решается следующей командой:
pvecm e 1
  • На оставшихся нодах кластера необходимо проверить и удалить папку с названием выбывшей ноды из /etc/pve/nodes:
rm /etc/pve/nodes/"Имя_Ноды"
  • Необходимо удалить строчку с ключом выбывшей ноды из файла /etc/pve/priv/authorized_keys:
nano /etc/pve/priv/authorized_keys

в самом конце строки вы увидите имя ноды, эту строчку и удаляйте. CTRL+O, CTRL+X - сохранить и выйти

  • Чтобы нода пропала из списка узлов кластера, перезагрузим службу:
systemctl restart pve-cluster

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

  • Для начала удалим ее из кластера, для этого с любой другой ноды в консоли выполняем команду:
pvecm delnode "Имя_Ноды"
  • На выбывающей ноде останавливаем службы:
systemctl stop pve-cluster
systemctl stop corosync
  • Из-за ошибок в кластере pmxcfs может становиться недоступной, при этом будут возникать ошибки при попытке доступа к каталогу /etc/pve.

Для получения доступа к /etc/pve выполним команду:

pmxcfs -l
  • Удаляем конфиг старого кластера и содержимое папки:
rm /etc/pve/corosync.conf
rm -r /etc/corosync/*
killall pmxcfs
  • Запускаем службу кластера:
systemctl start pve-cluster
  • Проверяем и убеждаемся, что от прежнего кластера не осталось и следа, виртуальные машины на месте.

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

pvecm nodes
  • Если в ответ получаем ошибку:
cluster not ready - no quorum?
  • Значит у вас в кластере всего 2 ноды осталось, в этом случае у вас не будет возможности выполнить бэкап, запустить или остановить виртуальные машины. Проблема решается следующей командой:
pvecm e 1
  • На оставшихся нодах кластера необходимо проверить и удалить папку с названием выбывшей ноды из /etc/pve/nodes:
rm /etc/pve/nodes/"Имя_Ноды"
  • Необходимо удалить строчку с ключом выбывшей ноды из файла /etc/pve/priv/authorized_keys:
nano /etc/pve/priv/authorized_keys

в самом конце строки вы увидите имя ноды, эту строчку и удаляйте.
CTRL+O, CTRL+X - сохранить и выйти
Чтобы нода пропала из списка узлов кластера, перезагрузим службу:

systemctl restart pve-cluster
  • На этом пока все, материал по мере возникновения проблем будет дописываться.

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

Делается всё быстро и на ходу.

  • Останавливаем службы:
systemctl stop pve-cluster
systemctl stop corosync
  • Удаляем конфиг старого кластера и содержимое папки:
rm /etc/pve/corosync.conf
rm -r /etc/corosync/*
killall pmxcfs
  • Запускаем службу кластера:
systemctl start pve-cluster

Обновляем web страничку и убеждаемся, что кластера как не бывало, машинки все на месте и работают.

Источники