8.37 リフレッシュ後、ファイバ・チャネルLUNがOracle VM Managerに存在しない

一部のインスタンスでは、Oracle VM Manager Webインタフェースの「Storage」タブで物理ディスクをリフレッシュした後、ファイバ・チャネルLUNがリフレッシュに含まれないことがあります。 その結果、サーバーでLUNがオンラインになっていても、存在しないように見えます。

回避策: まず、インフラストラクチャのすべてのコンポーネント(スイッチ、ケーブル、HBAなど)を調べて、欠陥や障害がないことを確認する必要があります。 以降にリフレッシュした後もまだLUNが存在しないように見える場合は、次の手順を実行してこの問題を解決できます。

  1. アタッチされているすべてのSCSIデバイスをリストします。

    # lsscsi
    [0:0:0:0]    disk    HP       LOGICAL VOLUME   1.34  /dev/sda
    [0:0:0:1]    disk    HP       LOGICAL VOLUME   1.34  /dev/sdb
    [0:3:0:0]    storage HP       P440ar           1.34  -      
    [1:0:0:0]    disk    SUN      ZFS Storage 7330 1.0   /dev/sdc
    [1:0:0:1]    disk    SUN      ZFS Storage 7330 1.0   /dev/sdd
    [1:0:0:2]    disk    SUN      ZFS Storage 7330 1.0   /dev/sde
    [1:0:1:0]    disk    SUN      ZFS Storage 7330 1.0   /dev/sdf
    [1:0:1:1]    disk    SUN      ZFS Storage 7330 1.0   /dev/sdg
    [1:0:1:2]    disk    SUN      ZFS Storage 7330 1.0   /dev/sdh
    [1:0:2:1]    disk    NETAPP   LUN              7330  /dev/sdo
    [1:0:2:2]    disk    NETAPP   LUN              7330  /dev/sdp
    [1:0:2:3]    disk    NETAPP   LUN              7330  /dev/sdq
  2. 影響を受けるLUNのSCSIアドレスに変更します。

    前述の例に基づいて、[1:0:2:1]、[1:0:2:2]、[1:0:2:3]などを指定する場合は、rport-1:0-2と入力できます。

    # cd /sys/class/fc_remote_ports/rport-1:0-2/
  3. fast_io_fail_tmoオプションのタイムアウト値を確認します。

    # cat fast_io_fail_tmo
    5
  4. タイムアウト値を、LUNが稼働状態に戻るまでにかかる時間をちょうど超える値に増やします。 同じディレクトリ内のdev_loss_tmo optionの値より小さい値に設定する必要があります。 影響を受けるLUNのうち1つを変更するだけで済みます。

    # echo 15 > fast_io_fail_tmo
  5. コマンドを/etc/rc.localに追加して、変更を永続的にします。

    # cat /etc/rc.local
    #!/bin/sh
    #
    # This script will be executed *after* all the other init scripts.
    # You can put your own initialization stuff in here if you don't
    # want to do the full Sys V style init stuff.
    
    echo 15 > /sys/class/fc_remote_ports/rport-1:0-2/fast_io_fail_tmo

Oracle Bug#22322461