LoginSignup
4
3

More than 5 years have passed since last update.

corosyncのIncrementing problem counterのログについて

Last updated at Posted at 2015-09-11

現象

MLでも回答したのですが、corsoync2.3.4でクラスタを構成(rrp_mode:active)している場合に、たまに、以下のようなログが出る(頻繁に出る)場合があります。

message.log

Incrementing problem counter for seqid 9999 iface xxx.xxx.xxx.xxx to [1 of 10]
(snip)
Incrementing problem counter for seqid 9999 iface xxx.xxx.xxx.xxx to [1 of 10]

原因

corosyncのrrp_mode:activeでは、corosyncの通信インターフェースに対して、両方に同じデータを送信する方法を取ります。
このデータはノード間を巡回するのですが、rrp_mode:activeの場合、受信ノード側が両方のデータの到着を監視しています。

片方のデータの受信後、一定時間(デフォルトでは、corosync.confのtoken値/4.2)、もう片方のインターフェースから受信が無い場合に、このログが出力されます。
(この一定時間内に両方のインターフェースで受信している間は、ログは出ない)

totemsrp.c
(snip)
static void timer_function_active_token_expired (void *context)
{
    struct active_instance *active_instance = (struct active_instance *)context;
    struct totemrrp_instance *rrp_instance = active_instance->rrp_instance;
    unsigned int i;

    for (i = 0; i < rrp_instance->interface_count; i++) {
        if (active_instance->last_token_recv[i] == 0) {
            active_instance->counter_problems[i] += 1;

            if (active_instance->timer_problem_decrementer == 0) {
                active_timer_problem_decrementer_start (active_instance);
            }
            snprintf (rrp_instance->status[i], STATUS_STR_LEN,
                "Incrementing problem counter for seqid %d iface %s to [%d of %d]",
                active_instance->last_token_seq,
                totemnet_iface_print (rrp_instance->net_handles[i]),
                active_instance->counter_problems[i],
                rrp_instance->totem_config->rrp_problem_count_threshold);
            log_printf (
                rrp_instance->totemrrp_log_level_warning,
                "%s",
                rrp_instance->status[i]);
        }
    }
(snip)

上記の場合、[10 of 10]まで達すると、そのインターフェースは故障と判断されますが、それまでは、自動的にこのカウンタをデクリメントしてくれる為、このログは通常は無視しても良いログです。
(環境のよっては、かなり頻繁に出てしまうので、うざい感じもありますが・・・)

余談

rrp_mode:passiveの場合は交互にインターフェースを利用してデータをノード間で送受信する為、前述のログは出ません。
rrp_mode:noneの場合は、1つのインターフェース(ボンディングしていても)のみなので、前述のログは出ません。

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3