Отработка отказа CTDB Samba не обеспечивает высокую доступность

Моя установка

3 узла с ceph + cephfs
2 из этих узлов с CTDB и Samba 1 клиент (не один из 3 серверов)

Это лабораторная установка, поэтому только один nic на сервер=узел, одна подсеть, а также все компоненты Ceph плюс Samba на тех же серверах. Я знаю, что это не выход.

Проблема

Я хочу разместить кластерный файловый ресурс Samba поверх Ceph с помощью ctdb. Я следовал документации CTDB (https://wiki.samba.org/index.php/CTDB_and_Clustered_Samba#Configuring_Clusters_with_CTDB) и его части: https://wiki.samba.org/index.php/Samba_CTDB_GPFS_Cluster_HowTo. Кластер работает, и общий ресурс доступен, доступен для чтения и записи на обоих узлах, мой smb.conf выглядит следующим образом:

[global]
netbios name = CEPHFS
workgroup = SIMPLE
clustering = yes
idmap config * : backend = autorid
idmap config * : range = 1000000-1999999
log file = /var/log/samba/smb.log

# Set files creation permissions
create mask = 664
force create mode = 664

# Set directory creation mask
directory mask = 2775
force directory mode = 2775

[public]
comment = public share
path = /mnt/mycephfs/testshare
public = yes
writeable = yes
only guest = yes
ea support = yes

CTDB управляет Samba и сообщает, что оба узла в порядке.

Но когда я читаю или пишу на один из узлов через общедоступный IP-адрес и допускаю сбой (перезапуск ctdb), чтение или запись завершаются ошибкой. Вторая попытка записи успешна (общедоступный IP-адрес успешно занят другим хостом).

Но CTDB должен иметь возможность сделать это в соответствии с https://ctdb.samba.org/ -> IP Перенимать? У меня есть tcpdump нового сервера (тот, который принимает общедоступный IP-адрес), который отправляет tcp RST моему клиенту после того, как клиент отправляет повторные передачи на сервер.

Есть идеи, в чем может быть проблема?

PS: я более чем счастлив предоставить вам дополнительную информацию (файл конфигурации ctdb, конфигурация брандмауэра, pcap, что угодно;)), но это достаточно долго ....


person Christoph Girstenbrei    schedule 21.12.2017    source источник
comment
wiki.samba.org/index.php/SMB3_kernel_status указывает "все еще нужно сделать ': протокол уведомления свидетеля, поэтому я предполагаю, что отказоустойчивость SMB3 пока не поддерживается.   -  person Christoph Girstenbrei    schedule 13.01.2018
comment
samba.org/~gd/slides/sambaxp-2016.pdf кажется, что протокол свидетеля как-то близок к завершению? Проверит отображаемые команды из PDF.   -  person Christoph Girstenbrei    schedule 13.01.2018
comment
Я подозреваю, что нет открытого соединения с отказоустойчивым сервером, пакет RST указывает на это, клиент Samba не пытается подключиться. Может быть, есть способ указать клиенту попробовать переподключиться? (на базе Windows или Linux)   -  person Christoph Girstenbrei    schedule 16.01.2018
comment
samba.org/~tridge/talks/apac07_ctdb.pdf, стр. 9 утверждает, что это было возможно с Samba 3.0. Я не могу поверить, что они удалят важную функцию в будущих выпусках.   -  person Christoph Girstenbrei    schedule 16.01.2018
comment
Вы когда-нибудь находили решение этой проблемы?   -  person gf_    schedule 09.11.2019
comment
К сожалению, на. Но я также не пробовал это как минимум полгода, так что я, конечно, не в курсе. Моя последняя информация заключалась в том, что Samba не поддерживает это (пока?) (Windows 2012 поддерживает, но я не могу этого гарантировать, не пробовал, просто прочитал об этом).   -  person Christoph Girstenbrei    schedule 12.11.2019