web-dev-qa-db-ja.com

DRBDリソースを起動するときのカーネルパニック

DRBDと同期する2台のマシンをセットアップしようとしています。ストレージは次のように設定されます:PV-> LVM-> DRBD-> CLVM-> GFS2。

DRBDはデュアルプライマリモードでセットアップされます。最初のサーバーはセットアップされ、プライマリモードで正常に実行されています。最初のサーバーのドライブにはデータがあります。 2番目のサーバーをセットアップし、DRBDリソースを起動しようとしています。最初のサーバーと一致するようにすべてのベースLVMを作成しました。 ``でリソースを初期化した後

drbdadmcreate-mdストレージ

私は発行することによってリソースを育てています

drbdadmアップストレージ

そのコマンドを発行した後、カーネルパニックが発生し、サーバーは30秒で再起動します。これがスクリーンキャプチャです。

enter image description here

私の設定は次のとおりです:OS:CentOS 6

uname -a
Linux Host.structuralcomponents.net 2.6.32-279.5.2.el6.x86_64 #1 SMP Fri Aug 24 01:07:11 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

rpm -qa | grep drbd

kmod-drbd84-8.4.1-2.el6.elrepo.x86_64
drbd84-utils-8.4.1-2.el6.elrepo.x86_64

cat /etc/drbd.d/global_common.conf

global {
        usage-count yes;
        # minor-count dialog-refresh disable-ip-verification
}

common {
    handlers {
            pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
            pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
            local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
            # fence-peer "/usr/lib/drbd/crm-fence-peer.sh";
            # split-brain "/usr/lib/drbd/notify-split-brain.sh root";
            # out-of-sync "/usr/lib/drbd/notify-out-of-sync.sh root";
            # before-resync-target "/usr/lib/drbd/snapshot-resync-target-lvm.sh -p 15 -- -c 16k";
            # after-resync-target /usr/lib/drbd/unsnapshot-resync-target-lvm.sh;
    }

    startup {
            # wfc-timeout degr-wfc-timeout outdated-wfc-timeout wait-after-sb
            become-primary-on       both;
            wfc-timeout             30;
            degr-wfc-timeout        10;
            outdated-wfc-timeout    10;
    }

    options {
            # cpu-mask on-no-data-accessible
    }

    disk {
            # size max-bio-bvecs on-io-error fencing disk-barrier disk-flushes
            # disk-drain md-flushes resync-rate resync-after al-extents
            # c-plan-ahead c-delay-target c-fill-target c-max-rate
            # c-min-rate disk-timeout

    }

    net {
            # protocol timeout max-Epoch-size max-buffers unplug-watermark
            # connect-int ping-int sndbuf-size rcvbuf-size ko-count
            # allow-two-primaries cram-hmac-alg shared-secret after-sb-0pri
            # after-sb-1pri after-sb-2pri always-asbp rr-conflict
            # ping-timeout data-integrity-alg tcp-cork on-congestion
            # congestion-fill congestion-extents csums-alg verify-alg
            # use-rle
            protocol C;
            allow-two-primaries yes;
            after-sb-0pri   discard-zero-changes;
            after-sb-1pri   discard-secondary;
            after-sb-2pri   disconnect;
    }
}

cat /etc/drbd.d/storage.res

resource storage {
        device          /dev/drbd0;
        meta-disk       internal;

        on Host.structuralcomponents.net {
                address         10.10.1.120:7788;
                disk            /dev/vg_storage/lv_storage;
        }
        on Host2.structuralcomponents.net {
                address         10.10.1.121:7788;
                disk            /dev/vg_storage/lv_storage;
        }

/ var/log/messagesは、クラッシュについて何もログに記録していません。

私はこれの原因を見つけようとしてきましたが、何も思いつきませんでした。誰かが私を助けることができますか?ありがとう。

1
dw.emplod

マシンチェックの例外はハードウェアの問題です。システムを起動できる場合は、mcelogを使用して解釈できます。

解決策は、障害のあるハードウェアを交換することです。サーバーをリースしている可能性が高いと思われるため、プロバイダーに連絡してください。

3
Michael Hampton

カーネルパニックはネットワークアダプタが原因のようです。サーバーはDRBDトラフィック専用のNIC)でセットアップされました。DRBDトラフィックをオンボードNICに切り替えると、クラッシュが停止しました。理由についてより適切な説明が見つかった場合は、報告します。これは起こっていました(そのインターフェースを介した他のトラフィックは正常に機能しているようです)。

2
dw.emplod