Dynamic Link Manager ユーザーズガイド(Linux®用)

[目次][索引][前へ][次へ]


C.2 設定手順

kdump機能を使用する設定手順を,次の順序で説明します。

  1. カーネルダンプ出力用のディスクを追加する
  2. カーネルダンプの出力先を設定する
  3. ブートローダの設定ファイルを編集する
  4. kdump機能用の初期RAMディスクイメージファイルを作成する
  5. カーネルダンプが正しく採取されることを確認する
この節の構成
C.2.1 カーネルダンプ出力用のディスクを追加する
C.2.2 カーネルダンプの出力先を設定する
C.2.3 ブートローダの設定ファイルを編集する
C.2.4 kdump機能用の初期RAMディスクイメージファイルを作成する
C.2.5 カーネルダンプが正しく採取されることを確認する

C.2.1 カーネルダンプ出力用のディスクを追加する

カーネルダンプの出力先となるディスクを追加します。

システムディスク(/varディレクトリ)のファイルシステムに異常が発生した場合でもカーネルダンプを採取できるようにするため,カーネルダンプ出力用のディスクは,システムディスクから独立した別のディスクに設定することを推奨します。

次の条件に該当する場合,ディスクの追加は不要です。

  1. ストレージシステム上のボリュームにカーネルダンプ出力用のディスクを作成し,ホストにシングルパスで接続します。
  2. HDLM構成定義ユティリティ(dlmcfgmgr -r)を実行して,カーネルダンプ出力用のディスクをHDLMに認識させます。
    KAPL10339-Iメッセージが表示されたら,「y」を入力してください。
    # /sbin/dlmcfgmgr -r
    KAPL10339-I This operation will change the configuration of HDLM devices. Do you want to continue? [y/n]: y
    KAPL10341-I The HDLM device configurations have been changed.
    KAPL10302-I /sbin/dlmcfgmgr completed normally.
    
    
  3. dlmcfgmgrユティリティ(dlmcfgmgr -v)を実行して,カーネルダンプ出力用のディスクが認識されたことを確認します。
    # /sbin/dlmcfgmgr -v
    HDevName      Management  Device    Host  Channel  Target  Lun
    /dev/sddlmaa  configured  /dev/sda     0        0       0    0
                              /dev/sdc     1        0       0    0
    /dev/sddlmab  configured  /dev/sdb     0        0       0    1
                              /dev/sdd     1        0       0    1
    /dev/sddlmac  configured  /dev/sde     0        0       0    2
    KAPL10302-I /sbin/dlmcfgmgr completed normally.
    
    
    下線部に新しいディスクが追加されています。
  4. dlmcfgmgrユティリティ(dlmcfgmgr -o)を実行して,カーネルダンプ出力用のディスクをHDLMの管理対象外にします。
    KAPL10339-Iメッセージが表示されたら,「y」を入力してください。
     
    # /sbin/dlmcfgmgr -o /dev/sddlmac
    KAPL10339-I This operation will change the configuration of HDLM devices. Do you want to continue? [y/n]: y
    KAPL10341-I The HDLM device configurations have been changed.
    KAPL10302-I /sbin/dlmcfgmgr completed normally.
     
    
  5. dlmcfgmgrユティリティ(dlmcfgmgr -v)を実行して,カーネルダンプ出力用のディスクがHDLMの管理対象外になったことを確認します。
    # /sbin/dlmcfgmgr -v
    HDevName      Management    Device    Host  Channel  Target  Lun
    /dev/sddlmaa  configured    /dev/sda     0        0       0    0
                                /dev/sdc     1        0       0    0
    /dev/sddlmab  configured    /dev/sdb     0        0       0    1
                                /dev/sdd     1        0       0    1
    /dev/sddlmac  unconfigured  /dev/sde     0        0       0    2
    KAPL10302-I /sbin/dlmcfgmgr completed normally.
    
    
    Management列に「unconfigured」が表示されていることを確認してください。

C.2.2 カーネルダンプの出力先を設定する

次の操作を実行して,カーネルダンプの出力先を設定します。

  1. fdiskコマンドを実行して,カーネルダンプ出力用のディスクにパーティションを作成します。
    fdiskのコマンドは,次の下線部に示すとおりに入力してください。
    # fdisk /dev/sde
     
    The number of cylinders for this disk is set to 10240.
    There is nothing wrong with that, but this is larger than 1024,
    and could in certain setups cause problems with:
    1) software that runs at boot time (e.g., old versions of LILO)
    2) booting and partitioning software from other OSs
       (e.g., DOS FDISK, OS/2 FDISK)
     
    Command (m for help): p
     
    Disk /dev/sde: 10.7 GB, 10737418240 bytes
    64 heads, 32 sectors/track, 10240 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
     
       Device Boot      Start         End      Blocks   Id  System
     
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    p
    Partition number (1-4): 1
    First cylinder (1-10240, default 1):   
    Using default value 1
    Last cylinder or +size or +sizeM or +sizeK (1-10240, default 10240):  
    Using default value 10240
     
    Command (m for help): p
     
    Disk /dev/sde: 10.7 GB, 10737418240 bytes
    64 heads, 32 sectors/track, 10240 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
     
       Device Boot      Start         End      Blocks   Id  System
    /dev/sde1               1       10240    10485744   83  Linux
     
    Command (m for help): w
    The partition table has been altered!
     
    Calling ioctl() to re-read partition table.
    Syncing disks.
    
    
  2. mkfsコマンドを実行して,作成したパーティションにファイルシステムを作成します。

    LABELを使用する場合
    -Lパラメタには,任意のボリュームラベルを設定します。kdump機能で使用していることがわかるラベル名を推奨します。カーネルダンプの出力先にボリュームラベルを指定することで,デバイスの構成が変更された場合でも設定ファイルを修正する手間が省けます。
    次の実行例では,ボリュームラベルを「kdump_disk」としています。
    # mkfs -t ext3 -L kdump_disk /dev/sde1
    mke2fs 1.39 (29-May-2006)
    Filesystem label=kdump_disk
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    1310720 inodes, 2621436 blocks
    131071 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=2684354560
    80 block groups
    32768 blocks per group, 32768 fragments per group
    16384 inodes per group
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
     
    Writing inode tables: done
    Creating journal (32768 blocks): done
    Writing superblocks and filesystem accounting information: done
     
    This filesystem will be automatically checked every 24 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    
    

    UUIDを使用する場合
    ファイルシステムを作成したあと,設定されたUUIDを確認します。
    # mkfs -t ext4 /dev/sde1 
    mke2fs 1.41.12 (17-May-2010)
    Filesystem label=
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    Stride=0 blocks, Stripe width=0 blocks
    65536 inodes, 262094 blocks
    13104 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=268435456
    8 block groups
    32768 blocks per group, 32768 fragments per group
    8192 inodes per group
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376
    
    Writing inode tables: done
    Creating journal (4096 blocks): done
    Writing superblocks and filesystem accounting information: done
    
    This filesystem will be automatically checked every 30 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    
    blkidコマンドを実行して,設定された UUIDを確認します。
    UUID="bf5d6d8d-d18b-45f8-8187-86837d895488" TYPE="ext4"
  3. /etc/fstabファイルに,カーネルダンプの出力先を追加します。

    LABELを使用する場合
    LABELには,手順2で設定したボリュームラベルを指定します。
    LABEL=kdump_disk /var/crash ext3 defaults 1 2
    
    

    UUIDを使用する場合
    手順2で確認したUUIDを指定します。
    UUID=bf5d6d8d-d18b-45f8-8187-86837d895488  /var/crash  ext4  defaults  1 2
    
    
  4. kdump機能の設定ファイル(/etc/kdump.conf)に,カーネルダンプの出力先を追加します。

    LABELを使用する場合
    LABELには,手順2で設定したボリュームラベルを指定します。
    path hdlm
    ext3 LABEL=kdump_disk
    
    

    UUIDを使用する場合
    手順2で確認したUUIDを指定します。
    path hdlm
    ext4 UUID=bf5d6d8d-d18b-45f8-8187-86837d895488
    
    
  5. kdump機能の設定ファイル(/etc/kdump.conf)に,タイムアウトの設定を追加します。
    Red Hat Enterprise Linux 7またはOracle Linux 7の場合は,タイムアウトの設定は不要です。
    disk_timeout 1
    
    

C.2.3 ブートローダの設定ファイルを編集する

ブートローダの設定ファイルに,kdump機能のオプションを追加します。ただし,Red Hat Enterprise Linux 7またはOracle Linux 7の場合は,編集は不要です。

ブートローダとしてGRUBを使用している場合(カーネルパラメータにLABELを使用する場合)

grub.confファイルの編集例を次に示します。下線部の個所を編集してください。

                :
                :
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
 
#title HDLM-Red Hat Enterprise Linux Server (2.6.18-8.el5)
#       root (hd0,0)
#       kernel /vmlinuz-2.6.18-8.el5 ro rhgb quiet
#       initrd /initrd-2.6.18-8.el5-hdlm.img
title HDLM-kdump-Red Hat Enterprise Linux Server (2.6.18-8.el5)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-8.el5 ro rhgb quiet crashkernel=128M@16M
        initrd /initrd-2.6.18-8.el5-hdlm.img
                :
                :

  1. HDLMデバイスから起動する既存の設定をコピーします。
  2. コピー元の既存の設定は,先頭に#を付けてコメントアウトします。
  3. titleで始まる行には,任意の設定名を指定します。kdump機能で使用していることがわかる設定名を推奨します。
  4. kdump機能のオプション(crashkernel=128M@16M)を追加します。

注※
使用しているOSによって,crashkernelに指定する内容は異なります。
crashkernel=128M@16M」は,OSにRed Hat Enterprise Linux 5を使用している場合の例です。

ブートローダとしてGRUBを使用している場合(カーネルパラメータにUUIDを使用する場合)

grub.confファイルの編集例を次に示します。下線部の個所を編集してください。

                :
                :
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
 
#title HDLM-Red Hat Enterprise Linux Server (2.6.32-220.el6.x86_64)
#       root (hd0,0)
#       kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=UUID=43a23c95-4a5f-42ad-bce6-23fcf4c1f13a
#       rd_NO_LUKS rd_NO_MD
#       initrd /initrd-2.6.32-220.el6.x86_64-hdlm.img
title HDLM-kdump-Red Hat Enterprise Linux Server (2.6.32-220.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=UUID=43a23c95-4a5f-42ad-bce6-23fcf4c1f13a
        rd_NO_LUKS rd_NO_MD crashkernel=128M
        initrd /initrd-2.6.32-220.el6.x86_64-hdlm.img
                :
                :

  1. HDLMデバイスから起動する既存の設定をコピーします。
  2. コピー元の既存の設定は,先頭に#を付けてコメントアウトします。
  3. titleで始まる行には,任意の設定名を指定します。kdump機能で使用していることがわかる設定名を推奨します。
  4. kdump機能のオプション(crashkernel=128M)を追加します。

注※
使用しているOSによって,crashkernelに指定する内容は異なります。
crashkernel=128M」は,OSにRed Hat Enterprise Linux 6を使用している場合の例です。

ブートローダとしてELILOを使用している場合

elilo.confファイルの編集例を次に示します。下線部の個所を編集してください。

                :
                :
prompt
timeout=10
default=HDLM-kdump-Red_Hat_Enterprise_Linux_Server_2.6.18-8.el5
relocatable
 
#image=vmlinuz-2.6.18-8.el5
#       label=HDLM-Red_Hat_Enterprise_Linux_Server_2.6.18-8.el5
#       initrd=initrd-2.6.18-8.el5-hdlm.img
#       read-only
#       append="rhgb quiet"
image=vmlinuz-2.6.18-8.el5
        label=HDLM-kdump-Red_Hat_Enterprise_Linux_Server_2.6.18-8.el5
        initrd=initrd-2.6.18-8.el5-hdlm.img
        read-only
        append="rhgb quiet crashkernel=256M@256M"
                :
                :

  1. HDLMデバイスから起動する既存の設定をコピーします。
  2. コピー元の既存の設定は,先頭に#を付けてコメントアウトします。
  3. labelで始まる行には,任意の設定名を指定します。kdump機能で使用していることがわかる設定名を推奨します。
  4. kdump機能のオプション(crashkernel=256M@256M)を追加します。
  5. 上記で作成した設定で起動するように,「default=」で始まる行の記述を手順3で指定したlabel名に変更します。

注※
使用しているOSによって,crashkernelに指定する内容は異なります。
crashkernel=256M@256M」は,OSにRed Hat Enterprise Linux 5を使用している場合の例です。

C.2.4 kdump機能用の初期RAMディスクイメージファイルを作成する

カーネルダンプの採取時に,セカンドカーネルで使用されるkdump機能用の初期RAMディスクイメージファイルを作成します。

  1. ホストを再起動します。
    # shutdown -r now
    
    
  2. ホストが再起動したら,root権限を持つユーザでログインします。
  3. /var/crash/hdlmディレクトリがない場合は,mkdirコマンドでディレクトリを作成してください。
    # mkdir /var/crash/hdlm
  4. Red Hat Enterprise Linux 7の場合は,/etc/opt/DynamicLinkManager/hdlm.confに定義されている「hdlm_dracut」の記述を確認します。
    hdlm_dracut=n」の記述がある場合は,「hdlm_dracut=y」に変更します。「hdlm_dracut」の記述がない場合は,「hdlm_dracut=y」を記述してください。

    注意事項
    Red Hat Enterprise Linux 7の場合,/etc/opt/DynamicLinkManager/hdlm.confに定義されている「hdlm_dracut」の記述は, 「hdlm_dracut=y」のままで使用してください。
  5. kdumpサービスを再起動して,kdump機能用の初期RAMディスクイメージファイルを作成します。
    • Red Hat Enterprise Linux 7,またはOracle Linux 7の場合
      # touch /etc/kdump.conf
      # systemctl restart  kdump.service
      #
      
      
    • 上記以外のOSの場合
      # touch /etc/kdump.conf
      # /sbin/service kdump restart
      Stopping kdump:                                            [  OK  ]
      Detected /etc/kdump.conf or /boot/vmlinuz-2.6.18-8.el5 change
      Rebuilding /boot/initrd-2.6.18-8.el5kdump.img
      Starting kdump:                                            [  OK  ]
      
      
  6. 初期RAMディスクイメージファイルが作成されたことを確認します。
    # ls -l /boot/initrd-`uname -r`kdump.img
    -rw-r--r-- 1 root root 2769763 mmm dd hh:mm
    /boot/initrd-2.6.18-8.el5kdump.img
    
    
    表示されたファイルの更新時刻を確認してください。
  7. ホストを再起動します。
    # shutdown -r now

C.2.5 カーネルダンプが正しく採取されることを確認する

カーネルパニックを発生させて,カーネルダンプが正しく採取されることを確認します。

  1. 次のコマンドを実行して,カーネルパニックを発生させます。
    # echo c > /proc/sysrq-trigger
    
    
    カーネルパニックが発生すると,カーネルダンプが採取されます。そのあと,ホストが再起動します。
  2. ホストが再起動したら,/var/crash/hdlmディレクトリにカーネルダンプ(vmcoreファイル)が作成されていることを確認します。
    • Red Hat Enterprise Linux 7,またはOracle Linux 7の場合
      # ls -lR /var/crash/
      /var/crash/:
      total 0
      drwxr-xr-x 2 root root 4096 mmm dd hh:mm 127.0.0.1-yyyy-mm-dd-hh:mm:ss
      
      /var/crash/hdlm/127.0.0.1-yyyy-mm-dd-hh:mm:ss:
      total 58732
      -r-------- 1 root root 60074832 mmm dd hh:mm vmcore
      -rw-r--r--. 1 root root    63270 mmm dd hh:mm vmcore-dmesg.txt
      #
      
      
    • 上記以外のOSの場合
      # ls -lR /var/crash/
      /var/crash/:
      total 24
      drwxr-xr-x 3 root root  4096 mmm dd hh:mm hdlm
      drwx------ 2 root root 16384 mmm dd hh:mm lost+found
      
      /var/crash/hdlm:
      total 4
      drwxr-xr-x 2 root root 4096 mmm dd hh:mm 127.0.0.1-yyyy-mm-dd-hh:mm:ss
      
      /var/crash/hdlm/127.0.0.1-yyyy-mm-dd-hh:mm:ss:
      total 1971852
      -r-------- 1 root root 2017199848 mmm dd hh:mm vmcore
      
      /var/crash/lost+found:
      total 0
      
      

以上で,kdump機能を使用するために必要な設定は終了です。

[目次] [前へ] [次へ]


All Rights Reserved. Copyright© 2014, 2016, Hitachi, Ltd.