CentOS 6 настройка vsftpd в HA кластере Pacemaker
Предварительно пропишем в /etc/hosts узлы кластера, а также отключим Selinux и Firewall
Или пропишем правило iptables
# iptables -I INPUT -p udp -m state --state NEW -m multiport --dports 5404,5405 -j ACCEPT
Внутреннее подключение
узел1 (n1) - 192.168.10.1
узел2 (n2) - 192.168.10.2
Виртуальный IP адрес - 10.10.10.1
Устанавливаем pacemaker на оба узла
# yum -y install pacemaker
Cоздадим ключи авторизации на узлах
# vi /etc/ha.d/authkeys
auth 1
1 sha1 secret
# chmod 700 /etc/ha.d/authkeys
Скопируем пример конфигурационного файла corosync и отредактируем его
# cp /etc/corosync/corosync.conf.example /etc/corosync/corosync.conf
# vi /etc/corosync/corosync.conf
compatibility: whitetank
aisexec {
user: root
group: root
}
service {
name: pacemaker
ver: 0
use_mgmtd: yes
}
totem {
version: 2
secauth: off
threads: 0
interface {
ringnumber: 0
bindnetaddr: 192.168.10.0
mcastaddr: 226.94.1.1
mcastport: 5405
}
}
logging {
fileline: off
to_stderr: no
to_logfile: yes
to_syslog: yes
logfile: /var/log/cluster/corosync.log
debug: off
timestamp: on
logger_subsys {
subsys: AMF
debug: off
}
}
amf {
mode: disabled
}
В конфиг Добавим строчки
aisexec {
user: root
group: root
}
service {
name: pacemaker
ver: 0
use_mgmtd: yes
}
И пропишем адрес для внутренней связи
bindnetaddr: 192.168.10.0
Сохраним и скопируем конфиг на второй узел (n2)
# scp /etc/corosync/corosync.conf
Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.
.2:/etc/corosync/
Дадим права и запустим corosync на узлах
# chown -R hacluster. /var/log/cluster
# /etc/rc.d/init.d/corosync start
# chkconfig corosync on
На первом узле
[root@n1 ~]# crm configure property no-quorum-policy="ignore" stonith-enabled="false"
[root@n1 ~]# crm configure rsc_defaults resource-stickiness="INFINITY" migration-threshold="1
Проверяем конфигурацию
[root@n1 ~]# crm_mon
Last change: Wed Dec 12 02:18:06 2012 via crmd on n2
Stack: openais
Current DC: n1 - partition with quorum
Version: 1.1.7-6.el6-148fccfd5985c5590cc601123c6c16e966b85d14
2 Nodes configured, 2 expected votes
0 Resources configured.
============
Online: [ n2 n1 ]
Создаем виртуальный IP адрес на первом узле
[root@n1 ~]# crm configure primitive virtIP ocf:heartbeat:IPaddr2 params ip=10.10.10.1 cidr_netmask=24 op monitor interval=10s
Просмотр настроек
[root@n1 ~]# crm configure show
node n1
node n2
primitive virtIP ocf:heartbeat:IPaddr2 \
params ip="10.10.10.1" cidr_netmask="24" \
op monitor interval="10s"
property $id="cib-bootstrap-options" \
dc-version="1.1.7-6.el6-148fccfd5985c5590cc601123c6c16e966b85d14" \
cluster-infrastructure="openais" \
expected-quorum-votes="2" \
no-quorum-policy="ignore" \
stonith-enabled="false"
rsc_defaults $id="rsc-options" \
resource-stickiness="INFINITY" \
migration-threshold="1"
[root@n1 ~]# crm_mon
Last change: Wed Dec 12 05:39:12 2012 via cibadmin on n1
Stack: openais
Current DC: n1 - partition with quorum
Version: 1.1.7-6.el6-148fccfd5985c5590cc601123c6c16e966b85d14
2 Nodes configured, 2 expected votes
1 Resources configured.
============
Online: [ n2 n1 ]
virtIP (ocf::heartbeat:IPaddr2): Started n1
Проверка пингом виртуального адреса
[root@n1 ~]# ping 10.10.10.1
PING 10.10.10.1 (10.10.10.1) 56(84) bytes of data.
64 bytes from 10.10.10.1: icmp_seq=1 ttl=64 time=0.113 ms
64 bytes from 10.10.10.1: icmp_seq=2 ttl=64 time=0.033 ms
64 bytes from 10.10.10.1: icmp_seq=3 ttl=64 time=0.032 ms
Добавление в кластер FTP сервера vsftpd
Установим утилиту vsftpd на всех узлах и остановим ее
# yum install vsftpd
# service vsftpd stop
Настроим vsftpd в кластере
[root@n1 ~]# crm configure primitive vsftpd lsb:vsftpd op start interval=0s timeout=60s op monitor interval=5s timeout=20s op stop interval=0s timeout=60s
[root@n1 ~]# crm configure group ftpserver virtIP vsftpd
Просмотр результатов
[root@n1 ~]# crm_mon
Last change: Wed Dec 12 09:05:38 2012 via cibadmin on n1
Stack: openais
Current DC: n1 - partition with quorum
Version: 1.1.7-6.el6-148fccfd5985c5590cc601123c6c16e966b85d14
2 Nodes configured, 2 expected votes
4 Resources configured.
============
Online: [ n2 n1 ]
Resource Group: ftpserver
virtIP (ocf::heartbeat:IPaddr2): Started n2
vsftpd (lsb:vsftpd): Started n2
На данный момент vsftpd запущен на втором узле (n2). К FTP серверу можно подключится используя виртуальный IP адрес 10.10.10.1 . Для проверки отказоустойчивости отключим второй узел.
[root@n1 ~]# crm_mon
Last change: Wed Dec 12 09:05:38 2012 via cibadmin on n1
Stack: openais
Current DC: n1 - partition WITHOUT quorum
Version: 1.1.7-6.el6-148fccfd5985c5590cc601123c6c16e966b85d14
2 Nodes configured, 2 expected votes
4 Resources configured.
============
Online: [ n1 ]
OFFLINE: [ n2 ]
Resource Group: ftpserver
virtIP2 (ocf::heartbeat:IPaddr2): Started n1
vsftpd (lsb:vsftpd): Started n1
Как видно второй узел отключен OFFLINE: [ n2 ], а vsftpd запущен на узле n1 vsftpd (lsb:vsftpd): Started n1