6.19.2.1.2 Exadata X9M-2でのKVMホストのリカバリ

この手順では、Oracle Exadata X9M-2データベース・サーバーのKVMホストをリカバリする方法について説明します。

  1. サーバーをブートして、システムBIOSメニューを使用してディスク・コントローラのステータスを確認します。必要に応じて、ディスク・コントローラを構成して、ディスクを設定します。
  2. サーバーを診断モードで起動します。
    Oracle Exadata System Softwareユーザーズ・ガイド診断ISOファイルを使用したサーバーの起動を参照してください。
  3. 診断シェルにrootユーザーとしてログインします。
    プロンプトが表示されたら、診断シェルに入ります。

    次に例を示します:

    Choose from following by typing letter in '()':
    (e)nter interactive diagnostics shell. Must use credentials 
    from Oracle support to login (reboot or power cycle to exit
    the shell),
    (r)estore system from NFS backup archive, 
    Type e to enter the diagnostics shell and log in as the root user.
    プロンプトが表示されたら、rootユーザーとしてシステムにログインします。rootユーザーのパスワードの入力を求められ、それが不明である場合は、Oracleサポート・サービスに連絡してください。
  4. マウントされている場合は、/mnt/cellをアンマウントします
    # umount /mnt/cell
  5. サーバー上のmdデバイスを確認します。

    サーバーに、次の例に示すデバイスが含まれていることを確認します。サーバーが大きく異なる場合は、続行せず、Oracle Supportに連絡してください。

    # ls -al /dev/md*
    brw-rw---- 1 root disk   9, 126 Jul 15 06:59 /dev/md126
    brw-rw---- 1 root disk 259,   4 Jul 15 06:59 /dev/md126p1
    brw-rw---- 1 root disk 259,   5 Jul 15 06:59 /dev/md126p2
    brw-rw---- 1 root disk   9, 127 Jul 15 06:28 /dev/md127
    brw-rw---- 1 root disk   9,  25 Jul 15 06:28 /dev/md25
    
    /dev/md:
    total 0
    drwxr-xr-x  2 root root  140 Jul 15 06:59 .
    drwxr-xr-x 18 root root 3400 Jul 15 06:59 ..
    lrwxrwxrwx  1 root root    8 Jul 15 06:59 24_0 -> ../md126
    lrwxrwxrwx  1 root root   10 Jul 15 06:59 24_0p1 -> ../md126p1
    lrwxrwxrwx  1 root root   10 Jul 15 06:59 24_0p2 -> ../md126p2
    lrwxrwxrwx  1 root root    7 Jul 15 06:28 25 -> ../md25
    lrwxrwxrwx  1 root root    8 Jul 15 06:28 imsm0 -> ../md127
  6. 障害の発生後に論理ボリューム、ボリューム・グループおよび物理ボリュームが存在する場合は、それらを削除します。
    # lvm vgremove VGExaDb --force
    # lvm pvremove /dev/md25 --force
  7. 既存のパーティションを削除し、すべてのパーティションが削除されたことを確認します。
    1. 次のコマンドを使用して、既存のパーティションを削除します。
      # for v_partition in $(parted -s /dev/md126 print|awk '/^ / {print $1}')
      do
        parted -s /dev/md126 rm ${v_partition}
      done
    2. 次のコマンドを実行して確認します。
      # parted  -s /dev/md126 unit s print

      コマンド出力には、パーティションが表示されなくなります。

  8. ブート・パーティションを作成します。
    1. partdコマンドを使用して対話型セッションを開始します。
      # parted /dev/md126
    2. ディスク・ラベルを割り当てます。
      (parted) mklabel gpt
    3. ユニット・サイズをセクターとして設定します。
      (parted) unit s
    4. 既存のパーティションを表示して、パーティション表を確認します。
      (parted) print
    5. 前のステップでリストされたパーティションを削除します。
      (parted) rm part#
    6. 新しい最初のパーティションを作成します。
      (parted) mkpart primary 64s 15114206s
    7. 新しいパーティションをブート可能にします。
      (parted) set 1 boot on
  9. 2番目のプライマリ(起動)パーティションを作成します。
    1. UEFIブート・パーティションとして2番目のプライマリ・パーティションをfat32で作成します。
      (parted) mkpart primary fat32 15114207s 15638494s 
      (parted) set 2 boot on
    2. ディスクに情報を書き込んで、終了します。
      (parted) quit
  10. 物理ボリュームおよびボリューム・グループを作成します。
    # lvm pvcreate /dev/md25
    # lvm vgcreate VGExaDb /dev/md25

    物理ボリュームまたはボリューム・グループがすでに存在する場合は、次のように、削除してから再作成します。

    # lvm vgremove VGExaDb
    # lvm pvremove /dev/md25
    # lvm pvcreate /dev/md25
    # lvm vgcreate VGExaDb /dev/md25
  11. LVMパーティションを作成し、ファイル・システムを作成してマウントします。
    1. 論理ボリュームを作成します。
      # lvm lvcreate -n LVDbSys1 -L15G VGExaDb -y
      # lvm lvcreate -n LVDbSwap1 -L16G VGExaDb -y
      # lvm lvcreate -n LVDbSys2 -L15G VGExaDb -y
      # lvm lvcreate -n LVDbHome -L4G VGExaDb -y
      # lvm lvcreate -n LVDbVar1 -L2G VGExaDb -y
      # lvm lvcreate -n LVDbVar2 -L2G VGExaDb -y
      # lvm lvcreate -n LVDbVarLog -L18G VGExaDb -y
      # lvm lvcreate -n LVDbVarLogAudit -L1G VGExaDb -y
      # lvm lvcreate -n LVDbTmp -L3G VGExaDb -y
      # lvm lvcreate -n LVDoNotRemoveOrUse -L2G VGExaDb -y
      # lvm lvcreate -n LVDbExaVMImages -L1500G VGExaDb -y
      # lvextend -l +98%FREE /dev/VGExaDb/LVDbExaVMImages
    2. ファイル・システムを作成します。
      # mkfs.xfs -f /dev/VGExaDb/LVDbSys1
      # mkfs.xfs -f /dev/VGExaDb/LVDbSys2
      # mkfs.xfs -f /dev/VGExaDb/LVDbHome
      # mkfs.xfs -f /dev/VGExaDb/LVDbVar1
      # mkfs.xfs -f /dev/VGExaDb/LVDbVar2
      # mkfs.xfs -f /dev/VGExaDb/LVDbVarLog
      # mkfs.xfs -f /dev/VGExaDb/LVDbVarLogAudit
      # mkfs.xfs -f /dev/VGExaDb/LVDbTmp
      # mkfs.xfs -m crc=1 -m reflink=1 -f /dev/VGExaDb/LVDbExaVMImages
      # mkfs.xfs -f /dev/md126p1
      # mkfs.vfat -v -c -F 32 -s 2 /dev/md126p2
    3. ファイル・システムにラベルを付けます。
      # xfs_admin -L DBSYS /dev/VGExaDb/LVDbSys1
      # xfs_admin -L HOME /dev/VGExaDb/LVDbHome
      # xfs_admin -L VAR /dev/VGExaDb/LVDbVar1
      # xfs_admin -L DIAG /dev/VGExaDb/LVDbVarLog
      # xfs_admin -L AUDIT /dev/VGExaDb/LVDbVarLogAudit
      # xfs_admin -L TMP /dev/VGExaDb/LVDbTmp
      # xfs_admin -L EXAVMIMAGES /dev/VGExaDb/LVDbExaVMImages
      # xfs_admin -L BOOT /dev/md126p1
      # dosfslabel /dev/md126p2 ESP
    4. すべてのパーティションのマウント・ポイントを作成して、各パーティションをマウントします。

      たとえば、/mntがリカバリ操作の最上位ディレクトリとして使用されるとすると、次のコマンドを使用してディレクトリを作成し、パーティションをマウントできます。

      # mount -t xfs /dev/VGExaDb/LVDbSys1 /mnt
      # mkdir -p /mnt/home
      # mount -t xfs /dev/VGExaDb/LVDbHome /mnt/home
      # mkdir -p /mnt/var
      # mount -t xfs /dev/VGExaDb/LVDbVar1 /mnt/var
      # mkdir -p /mnt/var/log
      # mount -t xfs /dev/VGExaDb/LVDbVarLog /mnt/var/log
      # mkdir -p /mnt/var/log/audit
      # mount -t xfs /dev/VGExaDb/LVDbVarLogAudit /mnt/var/log/audit
      # mkdir -p /mnt/tmp
      # mount -t xfs /dev/VGExaDb/LVDbTmp /mnt/tmp
      # mkdir -p /mnt/EXAVMIMAGES
      # mount -t xfs /dev/VGExaDb/LVDbExaVMImages /mnt/EXAVMIMAGES
      # mkdir -p /mnt/boot
      # mount -t xfs /dev/md126p1 /mnt/boot
      # mkdir -p /mnt/boot/efi
      # mount -t vfat /dev/md126p2 /mnt/boot/efi
  12. システム・スワップ領域を作成します。

    次に例を示します:

    # mkswap -L SWAP /dev/VGExaDb/LVDbSwap1
  13. インタフェースを起動します。
    # ip address add ip_address_for_eth0/netmask_for_eth0 dev eth0
    # ip link set up eth0
    # ip route add default via gateway_address dev eth0
  14. バックアップを含むNFSサーバーをマウントします。

    次の例は、IPアドレスがnfs_ipであるNFSサーバーの/exportディレクトリにバックアップがあることを前提としています。

    # mkdir -p /root/mnt
    # mount -t nfs -o ro,intr,soft,proto=tcp,nolock nfs_ip:/export /root/mnt
  15. バックアップからファイルをリストアします。

    スナップショットベースのバックアップを使用したKVMホストのバックアップの手順を使用してバックアップが作成されている場合、次のコマンドを使用してファイルをリストアできます。

    # tar --acls --xattrs --xattrs-include=* --format=pax -pjxvf /root/mnt/myKVMbackup.tar.bz2 -C /mnt
  16. kdumpサービス用のディレクトリを作成します
    # mkdir /mnt/EXAVMIMAGES/crashfiles
  17. リストアしたfstabファイル(/mnt/etc/fstab)をチェックして、/EXAVMIMAGESを参照する行をすべてコメント・アウトします。
  18. リストアされたファイル・システムをアンマウントします。

    次に例を示します:

    # umount /mnt/tmp
    # umount /mnt/var/log/audit
    # umount /mnt/var/log
    # umount /mnt/var
    # umount /mnt/home
    # umount /mnt/EXAVMIMAGES
    # umount /mnt/boot/efi
    # umount /mnt/boot
    # umount /mnt
  19. 起動デバイスを確認し、起動順序を設定します。
    1. 使用可能なブート・デバイスを確認し、Redhat Boot Manager (\EFI\REDHAT\SHIMX64.EFI)に関連付けられたブート・デバイスを特定します。

      次に例を示します:

      # efibootmgr -v
      BootCurrent: 0019
      Timeout: 1 seconds
      BootOrder:
      0019,0000,0002,0010,0009,0017,000A,000B,0018,0005,0006,0007,0008,0013,0014,0015,0016,0003,0011,0004,0012,001A
      Boot0000* RedHat Boot Manager HD(2,GPT,eec54dfd-8928-4874-833d-5b0b9e914b99,0xe69fdf,0x80000)/File(\EFI\REDHAT\SHIMX64.EFI)
      Boot0002* NET0:PXE IPv4 Intel(R) I210 Gigabit  Network Connection /Pci(0x1c,0x4)/Pci(0x0,0x0)/MAC(0010e0fc6e94,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0003* PCIE5:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:22:38:0A /Pci(0x2,0x0)/Pci(0x0,0x0)/MAC(b8cef622380a,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0004* PCIE5:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:22:38:0B /Pci(0x2,0x0)/Pci(0x0,0x1)/MAC(b8cef622380b,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0005* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter /Pci(0x2,0x0)/Pci(0x0,0x0)/MAC(3cfdfe915070,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0006* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter /Pci(0x2,0x0)/Pci(0x0,0x1)/MAC(3cfdfe915071,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0007* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter /Pci(0x2,0x0)/Pci(0x0,0x2)/MAC(3cfdfe915072,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0008* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter /Pci(0x2,0x0)/Pci(0x0,0x3)/MAC(3cfdfe915073,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0009* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9C /Pci(0x2,0x0)/Pci(0x0,0x0)/MAC(b8cef644519c,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot000A* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9D /Pci(0x2,0x0)/Pci(0x0,0x1)/MAC(b8cef644519d,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot000B* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9D /Pci(0x2,0x0)/Pci(0x0,0x1)/MAC(b8cef644519d,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0010* NET0:PXE IPv4 Intel(R) I210 Gigabit  Network Connection /Pci(0x1c,0x4)/Pci(0x0,0x0)/MAC(0010e0fc6e94,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0011* PCIE5:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:22:38:0A /Pci(0x2,0x0)/Pci(0x0,0x0)/MAC(b8cef622380a,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0012* PCIE5:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:22:38:0B /Pci(0x2,0x0)/Pci(0x0,0x1)/MAC(b8cef622380b,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0013* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter /Pci(0x2,0x0)/Pci(0x0,0x0)/MAC(3cfdfe915070,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0014* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter /Pci(0x2,0x0)/Pci(0x0,0x1)/MAC(3cfdfe915071,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0015* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter /Pci(0x2,0x0)/Pci(0x0,0x2)/MAC(3cfdfe915072,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0016* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter /Pci(0x2,0x0)/Pci(0x0,0x3)/MAC(3cfdfe915073,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0017* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9C /Pci(0x2,0x0)/Pci(0x0,0x0)/MAC(b8cef644519c,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0018* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9D /Pci(0x2,0x0)/Pci(0x0,0x1)/MAC(b8cef644519d,1)/IPv4(0.0.0.00.0.0.0,0,0)..BO
      Boot0019* USB:SP:SUN Remote ISO CDROM1.01 /Pci(0x14,0x0)/USB(7,0)/USB(3,0)/CDROM(1,0x28,0x3100)..BO
      Boot001A* Oracle Linux (grubx64.efi) HD(2,GPT,eec54dfd-8928-4874-833d-5b0b9e914b99,0xe69fdf,0x80000)/File(\EFI\REDHAT\GRUBX64.EFI)..BO
      MirroredPercentageAbove4G: 0.00
      MirrorMemoryBelow4GB: false
    2. Redhat Boot Manager (\EFI\REDHAT\SHIMX64.EFI)に関連付けられたデバイスを、ブート順序の最初になるように構成します。

      この例では、Redhat Boot Managerがブートデバイス0000に関連付けられています。

      # efibootmgr -o 0000
      BootCurrent: 0019
      Timeout: 1 seconds
      BootOrder: 0000
      Boot0000* RedHat Boot Manager
      Boot0002* NET0:PXE IPv4 Intel(R) I210 Gigabit  Network Connection
      Boot0003* PCIE5:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:22:38:0A
      Boot0004* PCIE5:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:22:38:0B
      Boot0005* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter
      Boot0006* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter
      Boot0007* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter
      Boot0008* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter
      Boot0009* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9C
      Boot000A* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9D
      Boot000B* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9D
      Boot0010* NET0:PXE IPv4 Intel(R) I210 Gigabit  Network Connection
      Boot0011* PCIE5:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:22:38:0A
      Boot0012* PCIE5:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:22:38:0B
      Boot0013* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter
      Boot0014* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter
      Boot0015* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter
      Boot0016* PCIE3:PXE IPv4 Oracle Quad Port 10GBase-T Adapter
      Boot0017* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9C
      Boot0018* PCIE1:PXE IPv4 Mellanox Network Adapter - B8:CE:F6:44:51:9D
      Boot0019* USB:SP:SUN Remote ISO CDROM1.01
      Boot001A* Oracle Linux (grubx64.efi)
      MirroredPercentageAbove4G: 0.00
      MirrorMemoryBelow4GB: false
  20. システムを再起動します。
    # reboot
  21. diagnostics.isoファイルを切り離します。
    Oracle Exadata System Softwareユーザーズ・ガイド診断ISOファイルを使用したサーバーの起動を参照してください。
  22. rootユーザーとして、サーバーに再ログインします。
  23. imageinfoコマンドを実行して、イメージのステータスがsuccessであることを確認します。

    次に例を示します:

    # imageinfo
    
    Kernel version: 4.14.35-2047.502.5.el7uek.x86_64 #2 SMP Wed Apr 14 15:08:41
    PDT 2021 x86_64
    Uptrack kernel version: 4.14.35-2047.503.1.el7uek.x86_64 #2 SMP Fri Apr 23
    15:20:41 PDT 2021 x86_64
    Image kernel version: 4.14.35-2047.502.5.el7uek
    Image version: 21.2.1.0.0.210608
    Image activated: 2021-07-12 14:58:03 +0900
    Image status: success
    Node type: COMPUTE
    System partition on device: /dev/mapper/VGExaDb-LVDbSys1
KVMホストがリカバリされました。