Я пытаюсь настроить кластер кардиостимулятора с двумя хостами, я использую две виртуальные машины centos 7 (CentOS Linux, выпуск 7.2.1511 (Core)).
Что я сделал до сих пор: Я установил пакеты:
yum install pacemaker corosync haproxy pcs fence-agents-all
Установить пароль для пользователя hacluster на обоих серверах. Отредактируйте / etc / hosts на обеих машинах
10.0.0.14 vm_haproxy1 10.0.0.15 vm_haproxy2
После этого включите службы на обоих серверах
systemctl enable pcsd.service pacemaker.service corosync.service haproxy.service
И запустили pcd (на обоих серверах)
systemctl start pcsd.service
Служба работает на обоих, я могу telnet от одного к другому через порт 2224
telnet vm_haproxy1 2224 Trying 10.0.0.14... Connected to vm_haproxy1. Escape character is '^]'.
Вывод netstat:
[root@vm_haproxy2 ~]# netstat -tulpn Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 849/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 946/master tcp6 0 0 :::2224 :::* LISTEN 1949/ruby tcp6 0 0 :::22 :::* LISTEN 849/sshd tcp6 0 0 ::1:25 :::* LISTEN 946/master udp 0 0 127.0.0.1:323 0.0.0.0:* 619/chronyd udp6 0 0 ::1:323 :::* 619/chronyd
Pcsd привязан к ipv6, но, как я уже сказал, telnet работает Selinux и firewalld отключены.
Затем я попытался авторизовать хосты с помощью
pcs cluster auth vm_haproxy1 vm_haproxy2
, но получил сообщение об ошибке:
pcs cluster auth vm_haproxy1 vm_haproxy2 Username: hacluster Password: Error: Unable to communicate with vm_haproxy1 Error: Unable to communicate with vm_haproxy2
Я не нашел никакой помощи в Google. Может есть кто-то уже решил ту проблему с авторизацией ПК.
Обычно я не использую pcsd в своих кластерах, но времена, которые у меня есть, я помню, как настраивал аутентификацию после того, как у меня был рабочий кластер; функция сначала, оборка позже.
Я бы попробовал использовать следующие команды от обоих узлов для создания конфигурации corosync и запуска кластера перед настройкой аутентификации:
# pcs cluster setup --local --name haproxy-cluster0 vm_haproxy1 vm_haproxy2
# systemctl start corosync
# systemctl start pacemaker
Как только вы увидите свои узлы в сети в выводе crm_mon
, попробуйте свои действия по настройке аутентификации узла.
Я столкнулся с той же проблемой, и когда я попытался создать кластер локально, чтобы создать файл cluster.conf, но он, похоже, не работает.
yum install pacemaker corosync haproxy ПК, забор-агенты -all
systemctl отключить firewalld; systemctl остановить firewalld systemctl enable pcsd.service pacemaker.service corosync.service haproxy.service
настройка кластера ПК --local --name resource Openstackvm2.server.com OpenstackVm3.server.com --force
Завершение работы служб кардиостимулятора / corosync. ..
Перенаправление в / bin / systemctl stop pacemaker.service Перенаправление на / bin / systemctl stop corosync.service Удаление всех оставшихся сервисов ... Удаление всех файлов конфигурации кластера.
Имя пользователя: hacluster
Пароль:
Ошибка: невозможно установить связь с Openstackvm2.server.com
Ошибка: невозможно связаться с OpenstackVm3.server.com
Похоже, на сайте Redhat есть сообщение об ошибке, но у меня нет прав на просмотр всей цепочки.
У меня была эта проблема. В моем случае я отследил это до переменных среды для устанавливаемых прокси.
Чтобы проверить это: сначала запустите команду с включенной - debug
:
pcs --debug cluster auth clua club cluc
В отладочных выводах я мог видеть:
Sending HTTP Request to: https://club:2224/remote/check_auth
Data: None
Response Reason: Tunnel connection failed: 404 Not Found
...
"I, [2017-04-05T10:54:21.333320 #6755] INFO -- : No response from: cluc request: /auth, exception: 404 \"Not Found\"\n",
"I, [2017-04-05T10:54:21.334344 #6755] INFO -- : No response from: club request: /auth, exception: 404 \"Not Found\"\n",
"I, [2017-04-05T10:54:21.334852 #6755] INFO -- : No response from: clua request: /auth, exception: 404 \"Not Found\"\n"
Запуск curl в направлении URL-адреса, который он пытался использовать, дал более подробную информацию:
# curl https://club:2224/remote/check_auth
curl: (56) Received HTTP code 404 from proxy after CONNECT
Отключение http_proxy
и https_proxy
позволило ему работать.
Если вы этого не сделаете, у вас слишком много узлов, вы можете указать их в переменной среды no_proxy
. В противном случае это немного болезненно - вам нужно убедиться, что вы всегда запускаете команды ПК без установленных переменных среды прокси. Я пока не нашел способа настроить компьютеры, чтобы они не использовали эти переменные.
Вы могли бы написать небольшую оболочку, которая сбрасывает переменные, а затем вызывает ПК.
Если вы используете CentOS 7, проверьте:
systemctl start pcsd.service
systemctl enable pcsd.service
start
запустит его сейчас. Если это приводит к появлению сообщений об ошибках, их следует устранить. Включение
приводит к автоматическому запуску при следующей загрузке.
Если не ответили, я сталкиваюсь с аналогичными проблемами, я пропустил настройку включения брандмауэра, после выполнения приведенных ниже команд проблема была решена для меня
firewall-cmd --permanent --add-service = высокая доступность
firewall-cmd --add-service = высокая доступность
firewall-cmd –reload
Проверить записи файла / etc / hosts.
cat / etc / hosts
IP-адрес host1 Hostname1 IP-адрес host2 Hostname2
Должен быть указан вышеописанным способом. Сбросить IP-таблицы на обоих узлах с использованием узлов:
iptable -F
Я получал это раньше:
[root@vm01 .ssh]# pcs cluster auth vm01 vm02 -u hacluster -p redhat
Error: Unable to communicate with vm02
vm01: Authorized
После очистки iptables на обоих узлах все заработало.
[root@vm01 .ssh]# pcs cluster auth vm01 vm02 -u hacluster -p redhat
vm02: Authorized
vm01: Authorized
Я останавливаю firewalld.service с помощью следующей команды, после чего у меня работает аутентификация кластера ПК.
systemctl stop firewalld.service