Данный vagrant-стенд развёртывает 3 виртуальных машины с использованием провайдера virtualbox. Внутри виртуальных машин с помощью ansible развёртывается чистый pacemaker-кластер с настроенным фенсингом virtualbox.
Фенсинг virtualbox требует доступа по ssh на машину-гипервизор с использованием логина и пароля. Права пользователя должны быть достаточными для использования на гипервизоре консольных утилит virtualbox (VBoxManage, etc.)
- Virtualbox + Vagrant
- Pacemaker + Corosync
- ClusterLabs fence agents
git clone <this repo>
vagrant up
ansible-playbook main.yml
Данный стенд проектировался и испытывался на ОС CentOS 7.7. Технически он может работать на аналогичных Linux-RPM-based дистрибутивах, а после небольшой доработки - на любом современном дистрибутиве.
IP-адреса "прибиты гвоздями" в vagrantfile, hosts.yml и в файле базового конфигурирования и соответствуют следующей таблице:
IP адрес | Имя машины |
---|---|
192.168.11.201 | pcs1.mydomain.test |
192.168.11.202 | pcs2.mydomain.test |
192.168.11.203 | pcs3.mydomain.test |
192.168.11.1 | гипервизор |
В процессе установки фенсинг-агентов будут осуществляться скачивание исходных текстов агентов из репозитория, их компиляция и установка - процесс может занимать продолжительное время.
Для корректной работы фенсинга нужно указать адрес машины-гипервизора и учетные данные для доступа на неё по ssh в файле hosts.yml. По-умолчанию подразумевается, что адрес гипервизора 192.168.11.1, логин - mbfx, пароль - strong_pass.
Проверить доступность управления виртуальными машинами с нод кластера можно выполнив на нодах команды:
fence_vbox --ip="192.168.11.1" --username="mbfx" --password=strong_pass --ssh --plug="pcs1" -v
fence_vbox --ip="192.168.11.1" --username="mbfx" --password=strong_pass --ssh --plug="pcs1" -o status
Они должны вернуть информацию о виртуальных машинах.