Стоит ли использовать Proxmox в этом случае?

Стоит ли использовать Proxmox в этом случае?

По сути, мне нужно разместить веб-приложение, работающее на PHP, а также базу данных MySQL с высокой доступностью.

Будет два сервера в разных центрах обработки данных.

И я думаю, стоит ли нам использовать Proxmox с двумя виртуальными машинами: одну для веб-приложения, другую для базы данных.

Или мне просто установить Debian, собрать все воедино и закончить на этом.

HA для веб-сервера обрабатывается экземпляром HaProxy, который находится на другом сервере. HA базы данных будет обрабатываться ProxySQL в HA (по сути, сервер MysQL и ProxySQL будут на одном сервере), но моим приложениям нужно знать, к какому ProxySQL они должны подключаться.

Если я использую Proxmox, то сделать это с помощью Keepalived довольно просто, поскольку все будет использовать внутренние IP-адреса, и это нормально.

Но если я использую Debian, то это будут публичные IP-адреса, а хостинг, который я использую (OVH), позволяет это делать, так называемые плавающие IP-адреса, но переключение занимает около 5 минут, поэтому сайт не работает в течение 5 минут.

Используя proxmox, я также имею другие преимущества: я могу раскручивать серверы для обновлений, а затем просто переключаться и т. д., ничего не сломав. Использование Debian напрямую подразумевает переформатирование сервера и т. д.

Конечно, использование Proxmox немного снизит производительность, но я думаю, что это незначительно.

У каждого решения есть свои плюсы и минусы, и я не совсем уверен, в каком направлении двигаться.

Так виртуализация или голое железо?

Серверы:

CPU: Xeon-E 2288G - 8c/16t
Memory: 32GB
Disks: 2× 960GB SSD NVMe - RAID 1

Есть мысли? Спасибо!

решение1

Ваше оправдание использования Proxmox здесь, похоже, заключается в том, что вы можете использовать keepalived (хотя я не уверен, для чего именно). Это кажется огромным излишеством.

Есть и другие причины, на которые вы намекнули, которые могут иметь смысл в этом контексте.

Вы также упомянули плавающие IP-адреса OVH.

Это проблема XY.

Ваша главная задача — обеспечить доступность (по крайней мере одной из) услуг через виртуальный IP.

  • Виртуальные IP-адреса не работают в центрах обработки данных без сложной конфигурации маршрутизации. Сложность — это плохо.

  • Виртуальные IP как механизм HA отстой. Вы полагаетесь на то, что ваша система делаетчто-нибудькогда он в сломанном состоянии. Есть осложнения вокруг разделенного мозга. Его трудно тестировать/контролировать. Всегда есть прерывание обслуживания.

  • Вам не нужен виртуальный IP - если ProxySQL (или haproxy или аналогичный) доступен / настроен на каждом узле, который должен подключаться к базе данных, и знает обо всех узлах базы данных, у вас есть HA для вашей службы базы данных. Для службы HTTP ключевая часть HA - это циклические DNS-адреса на нескольких хостах. NB В сетях все еще много дезинформации о rrDNS и HTTP. Он решает те случаи, которые не может выполнить балансировщик нагрузки, и обрабатывает большинство случаев использования, которые выполняет балансировщик нагрузки.

Самая большая стоимость использования виртуализации в таком контексте — это дисковый ввод-вывод СУБД. Если производительность MySQL оказывает существенное влияние на общую производительность сервиса, и ваш бюджет это позволяет, то вы можете устранить эту проблему, передав выделенный дисковый контроллер и хранилище виртуальной машине СУБД.

Связанный контент