Что надо для работы Pacemaker? | OTUS
⚡Подписка от OTUS!
Собери свой пул курсов на выгодных условиях. Подробности в чате →
Написать в чат

Курсы

Программирование
Разработчик программных роботов (RPA) на базе UiPath и PIX
-6%
Разработчик C#
-8%
Алгоритмы и структуры данных
-8%
Backend-разработчик на PHP
-8%
JavaScript Developer. Professional
-9%
Team Lead
-5%
Golang Developer. Professional
-6%
Agile Project Manager
-5%
Flutter Mobile Developer
-10%
MS SQL Server Developer
-8%
C++ Developer. Professional Android Developer. Professional Framework Laravel Cloud Solution Architecture Highload Architect Reverse-Engineering. Professional Kotlin Backend Developer React.js Developer VOIP инженер Нереляционные базы данных Scala-разработчик Супер-практикум по использованию и настройке GIT IoT-разработчик JavaScript Developer. Basic Advanced Fullstack JavaScript developer Unity Game Developer. Professional Супер-интенсив Azure
Инфраструктура
Супер-интенсив "Версионирование и командная работа с помощью Git"
-30%
Administrator Linux. Professional
-5%
Супер-интенсив «CI/CD или Непрерывная поставка с Docker и Kubernetes»
-30%
Разработчик программных роботов (RPA) на базе UiPath и PIX
-6%
Administrator Linux. Advanced
-8%
Infrastructure as a code in Ansible
-12%
Network engineer
-4%
MS SQL Server Developer
-8%
Cloud Solution Architecture Highload Architect Разработчик голосовых ассистентов и чат-ботов Мониторинг и логирование: Zabbix, Prometheus, ELK Супер-практикум по работе с протоколом BGP Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Архитектор сетей Супер-интенсив «IaC Ansible»
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

Что надо для работы Pacemaker?

Сегодня в IT-системах уровня «business critical» на первое место выходит не широкая функциональность, а повышенная надежность ИТ-систем. Для обеспечения нужной степени отказоустойчивости надо вводить избыточность компонентов. Ими управляет специальное ПО, примером которого является Pacemaker.

Pacemaker – решение от ClusterLabs, которое позволит организовать отказоустойчивый кластер (ОУК). Работает это решение под управлением широкого спектра операционных Unix-систем – CentOS, Debian, RHEL, Ubuntu.

Для обеспечения правильной работы ОУК надо, чтобы выполнялся ряд требований: • синхронизация времени между узлами в кластере; • стабильность сетевых подключений; • разрешение имен узлов в кластере; • наличие у узлов кластера функции по управлению питанием/перезагрузкой посредством IPMI (ILO), что необходимо для организации «фенсинга» узла (fencing – изоляция); • разрешение прохождения трафика по портам и протоколам.

Пожалуй, следует рассмотреть вышеупомянутые требования подробнее.

Синхронизация времени

Важно, чтобы все узлы имели одно и то же время. Как правило, это реализуется путем инсталляции в локальной сети сервера времени (ntpd).

Стабильность сетевых соединений

Не менее важно избавиться от ложных срабатываний. Допустим, у нас есть нестабильная локальная сеть, где каждые 5-10 секунд происходит потеря линка между коммутатором и узлами кластера. В итоге Pacemaker станет считать сбоем пропадание линка больше, чем на 5 секунд. Раз пропал линк, значит ваши ресурсы «переехали». Далее линк восстанавливается, однако Pacemaker уже считает данный узел «сбойнувшим», то есть он уже «перенес» ресурсы на другой узел. Когда возникает очередной сбой, Pacemaker «перенесет» ресурсы на следующий узел, и т. д. и т. п., пока не закончатся все узлы. Итог — отказ в обслуживании. В результате по причине ложных срабатываний весь кластер может перестать работать.

Разрешение имен

Разрешение реализуется путем инсталляции сервера DNS в локальной сети. Когда отсутствует возможность установить DNS-сервер, надо на всех узлах кластера внести записи в файл /etc/hosts с IP-адресами и именами хостов.

Наличие функции управления питанием/перезагрузкой с помощью IPMI (ILO)

Это важно для того, чтобы в случае сбоя узла можно было изолировать его от остальных узлов. Таким образом «фенсинг» исключит ситуацию возникновения split-brain (одновременное появление двух узлов, выполняющих роль Мастера СУБД).

Разрешение прохождения трафика по портам и протоколам

Тоже важное требование, т. к. в разных компаниях службы безопасности нередко устанавливают ограничения на прохождение трафика между подсетями либо ограничения на уровне коммутаторов.

Ниже приведен список протоколов и портов, необходимых для работы отказоустойчивого кластера.

ak5fqcjiboahitovxdmft3389eg_1-1801-e2eb0f.gif

Данные приводятся для ОУК из трех узлов – node1, node2, node3. При этом подразумевается, что узлы кластера, как и интерфейсы управления питанием узлов (IPMI), располагаются в разных подсетях.

Из таблицы видно, что надо обеспечить и доступность соседних узлов в локальной сети, и доступность узлов в сети IPMI.

Источник

Хотите узнать больше о кластеризации сервисов на базе Pacemaker? Добро пожаловать на курс «Администратор Linux. Виртуализация и кластеризация»!

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться