2

CentOS 7 サーバーがカーネル パニック時に /var/crash にカーネル ダンプ ファイルを生成しないという問題があります。クラッシュ カーネルが起動しないようです。Rhel ガイド ( http://red.ht/1sCztdv ) に従ってクラッシュ ダンプを構成しましたが、一見するとすべてが正しく構成されているように見えます。次のようなパニックを引き起こしています。

echo 1 > /proc/sys/kernel/sysrq
echo c > /proc/sysrq-trigger

これにより、システムがフリーズします。コンソールにメッセージが表示されず、コンソールが応答しなくなります。この時点で、システムがクラッシュ カーネルを起動し、/var/crash へのダンプの書き込みを開始すると想像できます。ダンプ全体を完了する時間を与えるために、この凍結状態で最大 30 分間放置しました。ただし、ハード コールド リブート後 /var/crash は空です。

さらに、期待どおりに KVM 仮想マシンと kdump ワードで構成を複製しました。したがって、物理システムの構成に何か問題があるか、ダンプではなくハングを引き起こすハードウェア構成に何か奇妙なことがあります。

私たちのサーバーは、24 コアと 128 GB のメモリを搭載した HP G9 です。その他の詳細は次のとおりです。

[user@host]$ cat /proc/cmdline

BOOT_IMAGE=/vmlinuz-3.10.0-123.el7.x86_64 root=UUID=287798f7-fe7a-4172-a35a-6a78051af4d2 ro rd.lvm.lv=vg_sda/lv_root vconsole.font=latarcyrheb-sun16 rd.lvm.lv=vg_sda/lv_swap crashkernel=auto vconsole.keymap=us rhgb nosoftlockup intel_idle.max_cstate=0 mce=ignore_ce processor.max_cstate=0 idle=mwait isolcpus=2-11,14-23

[user@host]$ systemctl is-active kdump
active

[user@host]$ cat /etc/kdump.conf 

path /var/crash
core_collector makedumpfile -l --message-level 1 -d 31 -c

[user@host]$ cat /proc/iomem |grep Crash
2b000000-357fffff : Crash kernel

[user@host]$ dmesg|grep Reserving
[    0.000000] Reserving 168MB of memory at 688MB for crashkernel (System RAM: 131037MB)

[user@host]$ df -h
Filesystem                  Size  Used Avail Use% Mounted on
/dev/mapper/vg_sda-lv_root  133G  4.7G  128G   4% /
devtmpfs                     63G     0   63G   0% /dev
tmpfs                        63G     0   63G   0% /dev/shm
tmpfs                        63G  9.1M   63G   1% /run
tmpfs                        63G     0   63G   0% /sys/fs/cgroup
/dev/sda1                   492M  175M  318M  36% /boot
/dev/mapper/vg_sdb-lv_data  2.8T  145G  2.6T   6% /data
4

2 に答える 2

2

次のパラメーターを変更した後、クラッシュ ダンプを確実に取得することができました。

  1. crashkernel=auto を crashkernel=1G に変更: 1TB の RAM ごとに 128M+64M という式が示されているため、なぜ 1G が必要なのかわかりません。
  2. /etc/sysconfig/kdump: KDUMP_COMMANDLINE_APPEND excpet irqpoll nr_cpus=1 からすべてを削除しました: KDUMP_COMMANDLINE_APPEND="irqpoll nr_cpus=1
  3. /etc/kdump.cfg: makedump に圧縮 (「-c」) を追加します

これが機能する理由は 100% わかりませんが、機能します。他の人がどう思うか知りたい

エリック

于 2015-01-19T16:14:17.423 に答える
0

エリック、

1Gは少し大きいようです。通常のサーバーで 200M を超えるものは見たことがありません。sysconfig の設定がわかりません。圧縮は良い考えですが、ターゲットが総メモリに近く、カーネルリングをダンプしているだけなので、問題には影響しないと思います。

于 2015-02-01T20:23:41.453 に答える