Pfsense установка на raid
Обновлено: 30.06.2024
Cluster
SR-IOV
P.s. Можно загрузиться в ILO с Live CD того же Linux Mint 19.x , запустить терминал, перейти в учетку root (sudo passwd root -> два раза пароль -> su - -> пароль root) и проделать рабочую процедуру, к-ая описана выше (заменить xenial на bionic в настройках репозитория, ес-но).
P.s. Напр., Asrock AB350 Pro4 при своей достачно скромной цене (в кач-ве мат. платы для сервера) умеет и amd_iommu и sr-iov - осталось только сетевую прикупить. Более того, совсем бюджетные Biostar A320MD PRO\A320MH PRO также умееют и amd_iommu и sr-iov.
Zettabyte File System (ZFS)
- Создать новую VM с размером hdd равным размеру клонируемой. Не запускать VM.
- Выполнить:
SCT Error Recovery Control
andy/blog/2015/11/09/linux-software-raid-and-drive-timeouts/
Т.е. если вы собираете zfs raid-z1*2**3* массив, то вкл. вышеописанного поможет сократить время для восстановления,
если же собираетесь использовать zfs raid-0*1**10*, то вкл. не нужно.
Open vSwitch (OVS)
Open vSwitch — программный многоуровневый коммутатор с открытым исходным текстом, предназначенный для работы в гипервизорах и на компьютерах с виртуальными машинами.
Основные возможности коммутатора:
Учёт трафика, в том числе проходящего между виртуальными машинами с использованием SPAN/RSPAN, sFlow[en] и Netflow.
Поддержка VLAN (IEEE 802.1q).
Привязка к конкретным физическим интерфейсам и балансировка нагрузки по исходящим MAC-адресам.
Работа на уровне ядра, поддержка существующих возможностей Linux по работе в качестве моста.
Поддерживает Openflow для управления логикой коммутации.
Помимо режима на уровне ядра, с меньшей производительностью open vSwitch может работать и с правами пользователя (вне ядра).
Основные области применения:
Замена обычных bridgetools.
Использование в составе Xen Server, Xen Cloud Platform, KVM, VirtualBox, QEMU, ProxMox (начиная с 2.3)
QoS, GRE-туннелирование, индивидуальные политики для виртуальных машин, а также возможность агрегации портов с распределением нагрузки.
--> Использование Open vSwitch в Proxmox:
Pfsense
Нюансы работы pfsense в Proxmox:
I've got a fresh install of 2.3.3-RELEASE-p1 (amd64), running on ovirt (kvm). My guests (only have linux guests) could ping out, but no udp or tcp.
Just selecting the "Disable hardware checksum offload" and rebooting (though I didn't check without rebooting) the pfsense instance did the trick.
I didn't need to change anything on the ovirt/kvm hypervisor - the default offload settings are in place. All guests (pfsense and the linux ones) are using virtio network drivers.
Microsoft Windows OS
->zswap
Вкратце, это технология, позволяющая оптимизировать работу ядра со swap - хранилищем избыточных страниц памяти.
Включение и использование ZSWAP в Proxmox VE и любом современном дистр-ве Linux с ядром >= 3.11
Обновляемся:
apt-get clean; apt-get update; apt-get full-upgrade -y; apt-get autoremove --purge -y; apt-get autoclean
Проверяем включено ли в ядре:
cat /boot/config-$(uname) | grep -i zswap
Если все ОК:
CONFIG_ZSWAP=y
Правим GRUB :
mkdir -vp /etc/default/grub.d
На выбор:
LZ4:
echo 'GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT zswap.enabled=1 zswap.compressor=lz4 zswap.zpool=z3fold zswap.max_pool_percent=25"' > /etc/default/grub.d/zswap.cfg
или
ZSTD:
echo 'GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT zswap.enabled=1 zswap.compressor=zstd zswap.zpool=z3fold zswap.max_pool_percent=25"' > /etc/default/grub.d/zswap.cfg
update-grub
Вкл. модули:
cp -fv /etc/initramfs-tools/modules
for module in lz4 lz4_compress zstd zstd_compress z3fold
do grep -qx "$" /etc/initramfs-tools/modules || echo "$" >> /etc/initramfs-tools/modules
done
update-initramfs -u -k all
Перезагрузка:
reboot
Проверяем:
dmesg | grep -i zswap
Должно быть:
Если выбран LZ4:
.
zswap: loaded using pool lz4/z3fold
.
Для ZSTD:
.
zswap: loaded using pool zstd/z3fold
.
Получаем статистику по ZSWAP:
Статистика:
watch -n1 grep -R . /sys/kernel/debug/zswap/
Сжатие:
cd /sys/kernel/debug/zswap
watch -n1 -x perl -E "say $(cat stored_pages) * 4096 / $(cat pool_total_size)"
Текущие настройки:
grep -R . /sys/module/zswap
Прим. Касаемо строки zswap.zpool=z3fold. По умолчанию на данный момент в linux испол-ся zbud в кач-ве memory allocator. Он обкатан и надежен и работает на любом "железе", но появился более эффективный z3fold:
The zpool parameter controls the management of the compressed memory pool, it is by default set to zbud. With the zbud data allocator, 2 compressed objects are stored into 1 page which limits the compression ratio to 2 or less. The superior z3fold allocator allows up to 3 compressed objects by page. The compression ratio with z3fold typically averages 2.7 while it is 1.7 for zbud.
Однако, следует помнить, что компрессия требует вычислительных мощностей. И чем сильнее сжатие, тем выше требования к "железу".
->FOG Project
FOG можно использовать:
Спасибо за популяризацию Proxmox.
Из мануала по вашим ссылкам:
Proxmox VE сам по себе свободен для применения. Не существует абсолютно никаких платежей включенных в загрузку простого образа ISO и установки полнофункционального кластера Proxmox без оплаты лицензий или подписок.
С официального сайта:
Starting out
€ 5,83/month (per CPU)
Отказ от подписки с точки зрения разработчиков допустим?
Отказ от подписки с точки зрения разработчиков допустим?
Все строго добровольно. Хотите платную поддержку и сверх быструю реакцию на баги - платите. Нет? Пользуйте просто так.
P.s. Вот "увидивили". Был на 146% уверен, что уж вы-то, ув. pigbrother, точно KVM "тискали" :'(
Первый тестовый виртуальный домен поднимал в далеком 2001 году на PIII (Vmware Workstation). ;),
Winows NT DC, рабочие станции Windows NT и 98, выход в интернет через RRAS с диалапом…
Сейчас в продакшн используется ESXi - выбор руководства. Мы посовещались и оно решило ;).
С KVM за довольно долгую карьеру столкнуться, как ни странно, так и не пришлось. Сейчас же хочу покрутить для собственного интереса.
Что порекомендуете - сразу 5.0 или начать с 4.4?
5-ку, ес-но. После установки - сразу обновить.
Если в будущем в продакшн соберетесь, то использовать ZFS raid от 2-ух (raid1), а лучше - 4 диска (raid10). Zfs raid идет из коробки и в самом начале установки конфигурируется.
Proxmox поддерживает nested virtualization? Хочу попробовать в ESXi. Нет под рукой свободного полноценного железа.
Все это исключительно для тестов, нормальной работы от такого мутанта никто не ждет.
Nested virtualization (вложенная виртуализация, т.е. возможность запускать гипервизор в гипервизоре) на Proxmox:
Миграция с других гипервизоров (локально).
Внимание! Формат raw - это т.н. "сырой" формат образов дисков. Перед дальнейшими операциями убедиться в наличие
свободного места.
Подключаемся по SFTP к Proxmox. В Win это можно сделать с пом. WinSCP или FAR.
Забрасываем образ(ы) диска(ов), к-ые мы хотим подкинуть к ВМ в предварительно созданную временную папку.
Прим. Если у вас ova-образ - сперва распаковываем
tar -xvf disk.ova
Конвертируем (на примере vmware .vmdk)
qemu-img convert -p -O raw disk.vmdk disk.raw
Смотрим размер получившегося
ls -ahl
Cоздаем через gui ВМ с диском(-ми) не меньшего размера. ВМ не запускать!
Смотрим что у нас получилось (у вас путь к образам дисков может быть другой)
ls -al /dev/zvol/rpool/data/
Разворачиваем образ диска в диск ВМ
dd if=/path/to/file/disk.raw of=/dev/zvol/ZFS-Pool-Name/vm-XYZ-disk-X
ZFS-Pool-Name и vm-XYZ-disk-X изменить на свои
После
qm rescan
Upd2.
Короткий вариант. Проверил - работает.
qemu-img convert -p -O raw disk.vmdk /dev/zvol/ZFS-Pool-Name/vm-XYZ-disk-X
ZFS-Pool-Name и vm-XYZ-disk-X изменить на свои
qm rescan
Запускаем ВМ. Проверяем.
Upd3.
Специально для тех, кто переходит с MS Hyper-V на Proxmox (KVM):
Подкидываем **vhdx-**образ по SFTP во временную папку на Proxmox.
Далее повторяем ранее описанное (т.е., создаем через gui ВМ с диском необх. размера, но не вкл. её! )
Команда для конвертации:
qemu-img convert -p -O raw disk.vhdx /dev/zvol/ZFS-Pool-Name/vm-XYZ-disk-X
ZFS-Pool-Name и vm-XYZ-disk-X изменить на свои
qm rescan
Запускаем ВМ. Проверяем.
Upd4.
И для догадливых (типа меня, ага 8))
Аналогично описанному выше (только наоборот ;)) можно конвертировать zfs-диски Proxmox-а во все самые распространненные форматы:
Сперва выкл. ВМ, конечно.
VHD\VHDX (Hyper-V)
qemu-img convert -p -O vhdx /dev/zvol/ZFS-Pool-Name/vm-XYZ-disk-X /path/to/file/disk.vhdx
ZFS-Pool-Name , vm-XYZ-disk-X и /path/to/file/ изменить на свои
Так что, добро пожаловать в мир открытого ПО. Для тех кто еще не решился )
Миграция Windows 2000 с динамическими дисками dynamic disc
Дано:
Старый сервер с Windows 2000 Server на программном raid1 из 2-ух дисков. На сервере живет оч. важное для клиента ПО.
Задача:
(Бережно) перенести в Proxmox VE (KVM)
- Linux ничего "не знает" о динамических дисках Windows, что не дает возможность использовать "в лоб" Clonezilla и Partclone для миграции локально или по сети.
- Windows 2000 не имеет в своем составе службу Volume Shadow Copy, что не позволяет использовать, напр., Disk2vhd для промежуточной миграции в vhd(x) и дальнейшего переноса на PVE.
Решение:
Нам понадобятся Clonezilla Live, Gparted Live, драйверы на сетевой адаптер Intel e1000.
Мигрируем удаленно.
Предупреждение. Все ниже описанное вы делаете на свой страх и риск. Внимательно проверяйте какие диски копируете и куда принимаете. Крайне желательно иметь резервные копии данных.
И так. Как сказал один оч. известный и достойный Человек: "Поехали!"
Принимающая сторона:
На Proxmox создаем ВМ с размером диска как у отдающей стороны.
Загружаемся с SystemRescueCD в эту ВМ.
Настраиваем сет. параметры (net-setup имя-интерфейса) или получаем их по dhcp. Проверить полученные\настроенные сет. параметры - ip a s
На отдающей стороне:
Загружаемся с SystemRescueCD.
Настраиваем сет. параметры (net-setup имя-интерфейса) или получаем их по dhcp. Проверить полученные\настроенные сет. параметры - ip a s
Запускаем на принимающей стороне:
nc -w10 -vvnlp 19000 | pigz -5 -dfc | cat > /dev/disk-name, где :
-w10 - время ожидания данных в сек. на приним. стороне (меняется на ваше усмотрение).
19000 - номер порта, к-ый слушает netcat и принимает на него данные от отдающей стороны (меняется на ваше усмотрение)
pigz -5 - степень сжатия (меняется на ваше усмотрение)
disk-name - имя диска внутри ВМ (меняете на свое)
Считаем до трех и запускаем на отдающей стороне:
pv /dev/disk-name | pigz -5 -fc | nc -vvn remote-server-ip 19000, где:
disk-name - имя диска, к-ый вы хотите передать (узнается по fdisk -l)
pigz -5 - степень сжатия (меняется на ваше усмотрение)
remote-server-ip - ip-адрес\имя удаленного сервера-приемника
19000 - номер порта удаленного сервера-приемника
Всё. Скрещиваем пальцы, чтобы линк между отдающей и принимающей сторонами не упал и ждем окончания процесса.
После удачного окончания выкл. ВМ на принимающей стороне. Извлекаем в gui из вирт. привода SystemRescueCD и пробуем загрузиться.
Пример с SSH (кому необходима секьюрность):
Принимающая сторона:
Создаем ВМ с размером диска как у отдающей стороны.
Загружаемся с SystemRescueCD в эту ВМ.
Настраиваем сет. параметры (net-setup имя-интерфейса) или получаем их по dhcp. Проверить полученные\настроенные сет. параметры - ip a s
Смотрим какие диски у нас есть - fdisk -l. Запоминаем\записываем имя нужного нам диска.
Более ничего на принимающей стороне делать\запускать не надо.
На отдающей стороне:
Загружаемся с SystemRescueCD.
Настраиваем сет. параметры (net-setup имя-интерфейса) или получаем их по dhcp. Проверить полученные\настроенные сет. параметры - ip a s
Запускаем команду:
pv /dev/disk-name | pigz -5 -fc | ssh remote-server-ip "cat > /dev/disk-name", где :
disk-name - имя диска на принимающей стороне, к-ое мы внимательно выбрали и запомнили ранее
remote-server-ip - ip\имя примающей стороны
Ожидаем удачного окончания процесса передачи. После выкл. ВМ на принимающей стороне. Извлекаем в gui из вирт. привода SystemRescueCD и пробуем загрузиться.
Читайте также: