У меня есть Linux Cluster, основанный на настройке Pacemaker (v1.1.18-11) и corosync (v2.4.3-2) на Centos 7.2. Это установка двух узлов с узлами = DBHA (master)и DBFAILOVER (ведомый)
У меня есть ресурс Postgresql9 , который использует этот агент ресурса: pgsql с небольшим изменением
Я использую стандартную документацию для настройки репликации Postgres: PgSQL_Replicated_Cluster
После выполнения всех шагов для мастера он все еще не становился мастером.Следующая ошибка была показана в / var / log / cluster / corosync.log
Could not map name=dbha to a UUID
После небольшой отладки я обнаружил, что следующая команда возвращает вышеуказанную ошибку: /usr/sbin/crm_attribute -l reboot -N "dbha" -n "Postgresql9-status" -v "STOP"
Где Nodename рассчитывается по:
NODENAME=$(ocf_local_nodename | tr '[A-Z]' '[a-z]')
, где ocf_local_nodename () из ocf-shellfuncs:
ocf_local_nodename() {
# use crm_node -n for pacemaker > 1.1.8
which pacemakerd > /dev/null 2>&1
if [ $? -eq 0 ]; then
local version=$(pacemakerd -$ | grep "Pacemaker .*" | awk '{ print $2 }')
version=$(echo $version | awk -F- '{ print $1 }')
ocf_version_cmp "$version" "1.1.8"
if [ $? -eq 2 ]; then
which crm_node > /dev/null 2>&1
if [ $? -eq 0 ]; then
crm_node -n
return
fi
fi
fi
# otherwise use uname -n
uname -n
}
Я попытался выполнить обе команды crm_node -n
и uname -n
на узле DBHA, оба возвращают следующее: DBHA
Также в cibadmin:
<nodes>
<node id="2" uname="DBHA">...
Когда я вручнуюЗапустите команду crm_attribute для установки атрибута, она снова возвращает ту же ошибку.
Вот CIB: CIB
Пожалуйста, помогите
Заранее спасибо
ПРИМЕЧАНИЕ: у нас есть несколько установок на разных ОС (CENTOS (6.5,6.7,7.2,7.5) Redhat (7.5). Мы никогда не сталкивались с этой проблемой раньше. Кроме того, заглавная буква (или строчные буквы) в именах узлов никогдаВызывали какие-либо проблемы раньше.