Решили с коллегой внедрить на предприятии "виртуализацию". Бешеных денег никто нам не даст, спасибо скажем за купленные сервера с процессорами, поддерживающие аппаратно битами виртуализации.
После прочтения информации решили остановиться на Proxmox VE, который основан на Debian + сопровождающие программы.
20.09.2013
nomodeset
Огребли проблему [drm:pch_irq_handler] *ERROR* PCH poison interrupt. Оказалось что Интел платформа болезненно реагирует на выдёргивание из VGA кабеля (переключение между серверами с помощью KVM тоже входит сюда). В современных линуксах идёт повальное увлечение framebuffer, хотя не понятно зачем он в серверах. Параметр nomodeset к ядру линукс выдаёт старую добрую консоль и проблема вроде как ушла.
19.03.2013
route vs ip
Впервые на ноде Proxmox VE нужно было настроить два сетевых интерфейса. Следовательно нужно было разрулить маршруты. Вроде всё просто. Все пакеты по умолчанию отправляем в Интернет и только пакеты с "нашими" адресами на наш маршрутизатор. Исторически использовалась команда route в /etc/network/interfaces.
Но с интерфейсами vmbr, цирковой номер не удался. Ну не работает указание route add ... dev vmbr0 как нужно. Оказывается, нужно использовать по возможности продвинутую команду ip.
Указал ip route add 10.0.0.0/16 via 10.0.10.1 и всё заработало как было запланировано.
auto vmbr0 iface vmbr0 inet static address 10.0.10.50 netmask 255.255.255.0 up ip route add 10.0.0.0/16 via 10.0.10.1 down ip route del 10.0.0.0/16 via 10.0.10.1 bridge_ports eth0 bridge_stp off bridge_fd 0 # auto vmbr1 iface vmbr1 inet static address 172.16.10.50 netmask 255.255.255.0 gateway 172.16.10.1 bridge_ports eth1 bridge_stp off bridge_fd 0 #
27.09.2012
Wake-On-LAN
По счастливой случайности в руки достался 8 ядерный QuadCore Intel Core i7-2600K на материнке Gigabyte GA-H67MA-USB3-B3 с 16 Гб ОЗУ. Красавец будет просто отличной нодой в кластере. Встроенная сетевая карта Realtek PCIe GBE Family Controller начала капризничать и не было доступа к сети. Оказалось мешала технология Wake-On-LAN. Отключили в BIOS и всё стало нормально!
11.07.2012
Kernel panic - not syncing: Watchdog detected hard LOCKUP on cpu
Имитировали отказ одной ноды и выход её из "строя". Хотели увидеть как при вводе новой ноды с новым железом виртуальные машины KVM корректно работают на новой ноде.
При мощной нагрузке во время restore нода выдала Kernel panic - not syncing: Watchdog detected hard LOCKUP on cpu и сдохла. Единственное, что вменяемо описывало проблему это ресурс Red Hat access.redhat.com/knowledge/solutions/133803, что печалит. Проблема, которая задевает Red Hat Enterprise Linux 6.2 и, судя по постам в Интернете, даже ядра linux 3.
Кратко суть проблемы в том, что если на процессорах Интел с поддержкой "PAUSE-loop exiting" количество виртуальных процессоров больше реальных, то возможна эта напасть. В нашем случае MS Windows 2008 c 2 процессорами в своей виртуальной машине заставляла паниковать ядро ноды с 1 реальным процессором.
10.07.2012
unable to copy ssh ID
Нашли ещё одну машину для теста, столкнулись с проблемой при вводе в кластер новой ноды:
pvecm add IP_мастера_кластера
unable to copy ssh ID
unable to copy ssh ID намекает на ssh-copy-id ... чуток повращались в этой плоскости - результат ноль.
Гуглёж даже нашёл совет на каталонском языке про pvecm expected 1
, но он не помог. Были даже ответы про мультикастинг и совет заменить управляемые коммутаторы. Помогло ... обновление всех нод до единой актуальной версии. Ну кто ж знал!
начало обучения и тестирования.
Proxmox VE и проблема с гигабитной сетевой картой
Так как Proxmox VE использует ядро из ветки 2.6.32, то возникла проблема со встроенной сетевой картой Atheros Communications Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083]
Оказалось сетевуху можно зашаманить простыми движениями. Нужно объяснить модулю ядра atl1c, что это его подопечный и он просто не знает по новым идентификаторам 1969:1083, что обслуживать железяку должен он.
Сначала лучше всё сделать ручками и только потом прописать в "автозагрузку". Так как Proxmox VE - это Debian, то sudo не используем и просто становимся root'ом через su или сразу логинемся рутом.
modprobe atl1c echo "1969 1083" > /sys/bus/pci/drivers/atl1c/new_id /etc/init.d/networking restart
У вас должен появится сетевой интерфейс eth0. Если вы на этапе установки указывали IP, маску, шлюз, то в сразу можно проверять доступность Proxmox VE в сети.
Теперь нужно наши команды поместить в "автозагрузку", чтобы при перезагрузке сервера всё делалось автоматом. Проще всего запихать строки
modprobe atl1c sleep 5 echo "1969 1083" > /sys/bus/pci/drivers/atl1c/new_id sleep 3 /etc/init.d/networking restart
в /etc/rc.local и перезагрузить сервер, чтобы убедиться в нормальной загрузке и работоспособности сетевой карты.
Связанные темы:
Оптимизация виртуальных серверов KVM. Часть 1.
Оптимизация гостевых операционных систем KVM. Часть 2.
Ускорение Убунту.
Монтирование VirtualBox образов vdi в Ubuntu.
Немає коментарів:
Дописати коментар