У меня есть две Oracle Linux 7 серверов на облаке, и я хочу использовать Corosync. Серверы находятся в той же облачной сети (не LAN), но у них только есть один nic. Вот conf файлы.
Сервер A:
totem {
version: 2
secauth: off
transport: udpu
crypto_cipher: none
crypto_hash: none
interface {
member {
memberaddr: x.y.z.i
}
member {
memberaddr: x.y.z.j
}
ringnumber: 0
bindnetaddr: x.y.z.i
mcastport: 5405
ttl: 1
}
}
logging {
fileline: off
to_stderr: no
to_logfile: yes
logfile: /var/log/cluster/corosync.log
to_syslog: yes
debug: off
timestamp: on
logger_subsys {
subsys: QUORUM
debug: off
}
}
quorum {
#provider: corosync_votequorum
}
Сервер B:
totem {
version: 2
secauth: off
transport: udpu
crypto_cipher: none
crypto_hash: none
interface {
member {
memberaddr: x.y.z.i
}
member {
memberaddr: x.y.z.j
}
ringnumber: 0
bindnetaddr: x.y.z.j
mcastport: 5405
ttl: 1
}
}
logging {
fileline: off
to_stderr: no
to_logfile: yes
logfile: /var/log/cluster/corosync.log
to_syslog: yes
debug: off
timestamp: on
logger_subsys {
subsys: QUORUM
debug: off
}
}
quorum {
#provider: corosync_votequorum
}
Когда я запускаю услуги Corosync на оба сервера, я вижу, что они не присоединяются друг к другу, но в журналах сервера там повторяются записи в журнале каждые две секунды:
Jun 08 04:22:48 [17856] serverA corosync notice [TOTEM ] A new membership (x.y.z.i:20544) was formed. Members
Jun 08 04:22:48 [17856] serverA corosync notice [MAIN ] Completed service synchronization, ready to provide service.
Jun 08 04:22:49 [17856] serverA corosync notice [TOTEM ] A new membership (x.y.z.i:20548) was formed. Members
Jun 08 04:22:49 [17856] serverA corosync notice [MAIN ] Completed service synchronization, ready to provide service.
Jun 08 04:22:50 [17856] serverA corosync notice [TOTEM ] A new membership (x.y.z.i:20552) was formed. Members
Jun 08 04:22:50 [17856] serverA corosync notice [MAIN ] Completed service synchronization, ready to provide service.
Jun 08 04:22:52 [17856] serverA corosync notice [TOTEM ] A new membership (x.y.z.i:20556) was formed. Members
Jun 08 04:22:52 [17856] serverA corosync notice [MAIN ] Completed service synchronization, ready to provide service.
Jun 08 04:22:53 [17856] serverA corosync notice [TOTEM ] A new membership (x.y.z.i:20560) was formed. Members
Jun 08 04:22:53 [17856] serverA corosync notice [MAIN ] Completed service synchronization, ready to provide service.
Jun 08 04:22:55 [17856] serverA corosync notice [TOTEM ] A new membership (x.y.z.i:20564) was formed. Members
Jun 08 04:22:55 [17856] serverA corosync notice [MAIN ] Completed service synchronization, ready to provide service.
И вот "corosync-cmapctl |grep участник" выводы:
Сервер A:
runtime.totem.pg.mrp.srp.members.1489420110.config_version (u64) = 0
runtime.totem.pg.mrp.srp.members.1489420110.ip (str) = r(0) ip(x.y.z.i)
runtime.totem.pg.mrp.srp.members.1489420110.join_count (u32) = 1
runtime.totem.pg.mrp.srp.members.1489420110.status (str) = joined
totem.interface.0.member.0 (str) = x.y.z.j
totem.interface.0.member.1 (str) = x.y.z.i
Сервер B:
runtime.totem.pg.mrp.srp.members.1489420107.config_version (u64) = 0
runtime.totem.pg.mrp.srp.members.1489420107.ip (str) = r(0) ip(x.y.z.j)
runtime.totem.pg.mrp.srp.members.1489420107.join_count (u32) = 1
runtime.totem.pg.mrp.srp.members.1489420107.status (str) = joined
totem.interface.0.member.0 (str) = x.y.z.j
totem.interface.0.member.1 (str) = x.y.z.i
Что я делаю неправильно?
corosync использует многоадресную сетевую связь, которая блокируется некоторыми облачными провайдерами, например AWS.
http://aws.amazon.com/vpc/faqs/
Q. Поддерживает ли Amazon VPC многоадресную или широковещательную рассылку?
Нет