PROXMOX 5 — различия между версиями

Материал из megapuper
Перейти к: навигация, поиск
 
(не показано 5 промежуточных версий этого же участника)
Строка 65: Строка 65:
 
   gateway 94.130.18.193
 
   gateway 94.130.18.193
 
   pointopoint 94.130.18.193
 
   pointopoint 94.130.18.193
 
+
 
  auto vmbr0
 
  auto vmbr0
 
  iface vmbr0 inet static
 
  iface vmbr0 inet static
Строка 124: Строка 124:
  
 
Добавляем ноду в кластер, для этого логинимся на ноду, которую добавляем. На ноде не должно быть виртуалок, чтобы не было конфликтов VM ID
 
Добавляем ноду в кластер, для этого логинимся на ноду, которую добавляем. На ноде не должно быть виртуалок, чтобы не было конфликтов VM ID
  pvecm add IP_ADDRESS_CLUSTER
+
  pvecm add IP_ADDRESS_CLUSTER (или pvecm add IP_ADDRESS_CLUSTER --use_ssh)
  
  
Строка 166: Строка 166:
  
  
Удаляем ноду из кластера. Отключаем ноду перед удалением и больше НИКОГДА не включаем её в таком виде(в существующей сети кластера). Если включим ноду, кластеру хана. Логинимся на любую ноду отличную от удаляемой. После выключения удаляемой ноды делаем
+
Удаляем ноду из кластера.<br />
 +
Отключаем ноду перед удалением и больше НИКОГДА не включаем её в таком виде(в существующей сети кластера). Если включим ноду, кластеру хана. После выключения удаляемой ноды делаем
 
  pvecm delnode pm03
 
  pvecm delnode pm03
  
Строка 186: Строка 187:
  
 
Конфиг на хосте
 
Конфиг на хосте
 +
auto enp0s31f6
 +
iface enp0s31f6 inet static
 +
  address 94.130.18.241
 +
  netmask 255.255.255.255
 +
  gateway 94.130.18.193
 +
  pointopoint 94.130.18.193
 +
 
  auto vmbr0
 
  auto vmbr0
 
  iface vmbr0 inet static
 
  iface vmbr0 inet static
  address 94.130.18.241
+
  address 94.130.18.241
  netmask 255.255.255.192
+
  netmask 255.255.255.255
  gateway 94.130.18.193
+
  bridge_ports none
  pointopoint 94.130.18.193
+
  bridge_stp off
  bridge_ports eth0
+
  bridge_fd 0
  bridge_stp off
+
  up ip route add 94.130.2.136/32 dev vmbr0
  bridge_fd 0
+
  up ip route add 94.130.2.137/32 dev vmbr0
  # route 94.130.18.192/26 via 94.130.18.193
+
  up ip route add 94.130.2.138/32 dev vmbr0
  up route add -net 94.130.18.192 netmask 255.255.255.192 gw 94.130.18.193 dev vmbr0
+
  up ip route add 94.130.2.139/32 dev vmbr0
 
+
  up ip route add 94.130.2.140/32 dev vmbr0
  # additional subnet networks
+
  up ip route add 94.130.2.141/32 dev vmbr0
  up ip route add 94.130.2.136/29 dev vmbr0
+
  up ip route add 94.130.2.142/32 dev vmbr0
 +
  up ip route add 94.130.2.143/32 dev vmbr0
  
  
Конфиг в LXC контейнере
+
В web-интерфейсе, добавляем ip и шлюз для контейнера (94.130.2.143/32 94.130.2.241)<br />
auto eth0
+
Конфиг в LXC контейнере получится такой
iface eth0 inet static
 
  address 172.16.10.12
 
  netmask 255.255.255.0
 
 
 
  auto eth1
 
  auto eth1
 
  iface eth1 inet static
 
  iface eth1 inet static
  address 94.130.2.137
+
  address 94.130.2.143
  netmask 255.255.255.248
+
  netmask 255.255.255.255
  pointopoint 94.130.18.241
+
  # --- BEGIN PVE ---
  up route add default gw 94.130.18.241
+
  post-up ip route add 94.130.18.241 dev eth1
 
+
  post-up ip route add default via 94.130.18.241 dev eth1
 
+
  pre-down ip route del default via 94.130.18.241 dev eth1
После этого заходим в web-интерфейс, добавляем ip и шлюз в контейнере (94.130.2.137/29 94.130.2.137)<br />
+
  pre-down ip route del 94.130.18.241 dev eth1
 
+
# --- END PVE ---
Проверяем настройки сети
 
auto eth0
 
iface eth0 inet static
 
  address 172.16.10.12
 
  netmask 255.255.255.0
 
   
 
auto eth1
 
iface eth1 inet static
 
  address 94.130.2.137
 
  netmask 255.255.255.248
 
  # --- BEGIN PVE ---
 
  post-up ip route add 94.130.18.241 dev eth1
 
  post-up ip route add default via 94.130.18.241 dev eth1
 
  pre-down ip route del default via 94.130.18.241 dev eth1
 
  pre-down ip route del 94.130.18.241 dev eth1
 
  # --- END PVE ---
 
  pointopoint 94.130.18.241
 
  up route add default gw 94.130.18.241
 
  
  
Строка 245: Строка 232:
  
 
В конфиге KVM прописываем
 
В конфиге KVM прописываем
allow-hotplug eth0
 
iface eth0 inet static
 
        address 172.16.10.12
 
        netmask 255.255.255.0
 
        # dns-* options are implemented by the resolvconf package, if installed
 
        dns-nameservers 8.8.8.8
 
        dns-search encry.ru
 
 
 
  auto eth1
 
  auto eth1
 
  iface eth1 inet static
 
  iface eth1 inet static
        address 94.130.2.139
+
  address 94.130.2.139
        netmask 255.255.255.248
+
  netmask 255.255.255.255
        pointopoint 94.130.18.241
+
  up ip route add 94.130.18.241 dev eth1
        gateway 94.130.18.241
+
  up ip route add default via 94.130.18.241 dev eth1

Текущая версия на 14:59, 15 ноября 2019

Устанавливаем на чистый минимальный Debian Stretch. Разбивка дисков примерно следующая:

/dev/sda1 /boot ext4 512M
[lvm] vg0 / ext4
[lvm] vg0 swap swap
[lvm] vg0 /var/lib/vz ext4


ОБЯЗАТЕЛЬНО УКАЗЫВАЕМ НУЖНЫЙ HOSTNAME, ПОТОМУ-КАК ЕСЛИ МЕНЯТЬ ЕГО В УСТАНОВЛЕННОМ PROXMOX-е БУДУТ ПРОБЛЕМЫ.


Перед началом установки редактируем /etc/hosts Указываем рабочий ip сервера вместо 127.0.0.1, например

172.16.10.1 pm01.test.ru pm01

и удаляем записи IPv6.


Добавляем репозитории с софтом Proxmox

echo "deb http://download.proxmox.com/debian/pve stretch pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list
wget http://download.proxmox.com/debian/proxmox-ve-release-5.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-5.x.gpg


Синхронизируем репозитории и доводим ОС до актуального состояния. При этом из репозитория proxmox установится несколько системных библиотек

apt update
apt dist-upgrade -y


Смотрим какое pve ядро есть на данный момент и ставим его вместе с pve-firmware(проприетарные дровишки для разного оборудования).

apt search pve-kernel
apt -y install pve-kernel-4.13.13-5-pve pve-firmware


Далее избавляемся от стокового ядра, чтобы сразу грузиться в ядро от proxmox.

dpkg -l | grep linux-image | awk {"print $2"}
apt -y remove --purge --auto-remove linux-image-4.9.0-5-amd64 linux-image-amd64


Обновляем конфиг загрузчика

update-grub


Перегружаемся и проверяем

uname -a
Linux pm09 4.13.13-5-pve #1 SMP PVE 4.13.13-38 (Fri, 26 Jan 2018 10:47:09 +0100) x86_64 GNU/Linux


Ставим основной софт для proxmox

apt install proxmox-ve ssh postfix ksm-control-daemon systemd-sysv


Прописываем бриджи на интерфейсах, примерно так

auto enp0s31f6
iface enp0s31f6 inet static
  address 94.130.18.241
  netmask 255.255.255.255
  gateway 94.130.18.193
  pointopoint 94.130.18.193

auto vmbr0
iface vmbr0 inet static
  address 94.130.18.241
  netmask 255.255.255.255
  bridge_ports none
  bridge_stp off
  bridge_fd 0

auto vmbr1
iface vmbr1 inet static
 address 172.16.10.1
 netmask 255.255.255.0
 bridge_ports eth1
 bridge_stp off
 bridge_fd 0


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

sysctl -w net.ipv4.ip_forward=1

В файрволе проксмокса должно быть правило postrouting

$IPT -t nat -A POSTROUTING -s 172.16.10.0/24 ! -d 172.16.10.0/24 -j MASQUERADE


Ребутимся и пробуем заходить https://94.130.18.241:8006 с рутовыми данными


Заводим кластер(имя НЕЛЬЗЯ сменить позже)

pvecm create CLUSTER-NAME


Проверяем статус

pvecm status

Quorum information
------------------
Date:             Thu Jun 29 13:46:19 2017
Quorum provider:  corosync_votequorum
Nodes:            1
Node ID:          0x00000001
Ring ID:          1/4
Quorate:          Yes

Votequorum information
----------------------
Expected votes:   1
Highest expected: 1
Total votes:      1
Quorum:           1  
Flags:            Quorate 

Membership information
----------------------
    Nodeid      Votes Name
0x00000001          1 172.16.10.1 (local)


Добавляем ноду в кластер, для этого логинимся на ноду, которую добавляем. На ноде не должно быть виртуалок, чтобы не было конфликтов VM ID

pvecm add IP_ADDRESS_CLUSTER (или pvecm add IP_ADDRESS_CLUSTER --use_ssh)


Проверяем статус кластера

pvecm status

Quorum information
------------------
Date:             Thu Jun 29 13:57:38 2017
Quorum provider:  corosync_votequorum
Nodes:            3
Node ID:          0x00000001
Ring ID:          1/12
Quorate:          Yes

Votequorum information
----------------------
Expected votes:   3
Highest expected: 3
Total votes:      3
Quorum:           2  
Flags:            Quorate 

Membership information
----------------------
    Nodeid      Votes Name
0x00000001          1 172.16.10.1 (local)
0x00000002          1 172.16.10.2
0x00000003          1 172.16.10.3


Посмотреть только список нод

pvecm nodes

Membership information
----------------------
    Nodeid      Votes Name
         1          1 pm01 (local)
         2          1 pm02
         3          1 pm03


Удаляем ноду из кластера.
Отключаем ноду перед удалением и больше НИКОГДА не включаем её в таком виде(в существующей сети кластера). Если включим ноду, кластеру хана. После выключения удаляемой ноды делаем

pvecm delnode pm03


Если всё пройдёт хорошо, увидим что нода удалилась

pvecm nodes

Membership information
----------------------
    Nodeid      Votes Name
         1          1 pm01 (local)
         2          1 pm02


Подробнее про кластер здесь https://pve.proxmox.com/wiki/Cluster_Manager


Подключение дополнительных ip-подсетей. Куплена подсеть 94.130.2.136/29 (min 94.130.2.137 max 94.130.2.142)

Конфиг на хосте

auto enp0s31f6
iface enp0s31f6 inet static
  address 94.130.18.241
  netmask 255.255.255.255
  gateway 94.130.18.193
  pointopoint 94.130.18.193

auto vmbr0
iface vmbr0 inet static
  address 94.130.18.241
  netmask 255.255.255.255
  bridge_ports none
  bridge_stp off
  bridge_fd 0
  up ip route add 94.130.2.136/32 dev vmbr0
  up ip route add 94.130.2.137/32 dev vmbr0
  up ip route add 94.130.2.138/32 dev vmbr0
  up ip route add 94.130.2.139/32 dev vmbr0
  up ip route add 94.130.2.140/32 dev vmbr0
  up ip route add 94.130.2.141/32 dev vmbr0
  up ip route add 94.130.2.142/32 dev vmbr0
  up ip route add 94.130.2.143/32 dev vmbr0


В web-интерфейсе, добавляем ip и шлюз для контейнера (94.130.2.143/32 94.130.2.241)
Конфиг в LXC контейнере получится такой

auto eth1
iface eth1 inet static
  address 94.130.2.143
  netmask 255.255.255.255
# --- BEGIN PVE ---
  post-up ip route add 94.130.18.241 dev eth1
  post-up ip route add default via 94.130.18.241 dev eth1
  pre-down ip route del default via 94.130.18.241 dev eth1
  pre-down ip route del 94.130.18.241 dev eth1
# --- END PVE ---


Если требуется подключить внешний ip к KVM-виртуалке, делаем следующее:

В web-интерфейсе добавляем два сетевых адаптера для виртуалки(НЕ ПУТАЕМ ГДЕ КАКОЙ БРИДЖ)
Kvm net1.jpg


В конфиге KVM прописываем

auto eth1
iface eth1 inet static
  address 94.130.2.139
  netmask 255.255.255.255
  up ip route add 94.130.18.241 dev eth1
  up ip route add default via 94.130.18.241 dev eth1