Рейтинг:0

Pacemaker - регистрация результатов проверки связи?

флаг ug

Я прочитал эту страницу и следующую: https://clusterlabs.org/pacemaker/doc/deprecated/en-US/Pacemaker/1.1/html/Pacemaker_Explained/_moving_resources_due_to_connectivity_changes.html

И это объясняет, как настроить пинг, который вы можете связать с выделением ресурса.

Хотя это работает, но если у меня есть более 1 URL-адреса или более 1 проверки связи, как я могу узнать, какая из них не работает?

Кажется, это нигде не регистрируется, если это происходит. Это просто происходит, и кардиостимулятор принимает решение...

Чтение этого исходного кода: https://github.com/ClusterLabs/pacemaker/blob/master/extra/resources/ping

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

Есть ли способ зарегистрировать только одну строку, если пинг не прошел, говоря только об этом и ни на что больше не влияя?

Рейтинг:2
флаг nr

Глядя на источник агента ресурсов (RA), похоже, что он включает параметр отладки, установив для него значение предупреждать это то, что вы хотели бы сделать.

Если по какой-то причине такое поведение вам не подходит, измените 1) заявление по делу в ping_check() функция, как показано ниже (строка 305 в ping RA), может быть тем, что вы ищете:

ping_check() {
    активный=0
    для хоста в $OCF_RESKEY_host_list; делать
        p_exe = пинг

        case $(uname) в
            Linux) p_args="-n -q -W $OCF_RESKEY_timeout -c $OCF_RESKEY_attempts";;
            Дарвин) p_args="-n -q -t $OCF_RESKEY_timeout -c $OCF_RESKEY_attempts -o";;
            FreeBSD) p_args="-n -q -t $OCF_RESKEY_timeout -c $OCF_RESKEY_attempts -o";;
            *) ocf_log err "Неизвестный тип хоста: $(uname)"; выход $OCF_ERR_INSTALLED;;
        эсак

        case "$host" в
            *:*) p_exe=ping6
        эсак

        ping_output=$($p_exe $p_args $OCF_RESKEY_options $host 2>&1); rc=$?

        случай $rc в
            0)
                активный=$(выражение $активный + 1)
                если [ $OCF_RESKEY_debug -gt 1 ]; тогда
                    ping_conditional_log информация "$ ping_output"
                фи
                ;;
            1) ocf_log предупреждает "$host неактивен: $ping_output";;
            *) ocf_log err "Неожиданный результат для '$p_exe $p_args $OCF_RESKEY_options $host' $rc: $ping_output";;
        эсак

Но это изменение похоже, что оно будет следовать той же логике, что и установка параметра отладка = предупреждение. Я не проверял это, просто следуя логике в RA.

Кроме того, если вам по какой-то причине нужно перезапустить Pacemaker, вы всегда можете поместить кластер в режим обслуживания = правда прежде чем сделать это. Если режим обслуживания = правда установлен Pacemaker не будет запускать/останавливать/отслеживать службы даже при перезапуске. Просто не забудьте установить режим обслуживания = ложь когда вы закончите.

флаг ug
Кажется, что оба эти варианта будут генерировать намного больше журналов, а перезапуск кардиостимулятора для меня не вариант. Спасибо за ваш тщательный взгляд на это.
Рейтинг:0
флаг ug

Оказывается, опция отладки — это не просто переменная среды, ее можно установить на самом ресурсе ping, например так:

отладка пинга обновления ресурсов ПК = 1

Единственный недостаток: журнал не отображается в /var/log/pacemaker.log как и ожидалось, но в /var/журнал/системный журнал.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.