2 状況の安定化

重大なファイルシステム障害や潜在的なデータ損失からの回復に直面したときには常に、最初のステップは影響を受けたシステムを安定化させ、損失が広がる可能性を最小限に抑え、可能なかぎり診断情報を保存することです。この章では、必要なアクションの概要について説明します。

アーカイブ処理およびリサイクル処理プロセスの停止

アーカイブファイルシステムまたは膨大な損失ファイルを復元する必要がある場合、まずはファイルシステムのアーカイブ処理およびリサイクル処理を停止するようにしてください。状況を評価して、できればすべてが正常に復元されるまでは、アーカイブを安定化して分離させておきます。そうしないと、場合によっては、進行中のアーカイブ操作およびリサイクル操作によって悪影響が生じる可能性があります。アーカイブ処理およびステージング処理は、破損したファイルを伝播する場合があります。リサイクルプロセスは、有効なデータの唯一残ったコピーを削除する場合があります。

そのため、可能なかぎり、次に示す点に注意してください。

回復操作が完了すると、次の変更を元に戻して、通常のファイルシステム動作に復元できます。

アーカイブ処理の停止

  1. ファイルシステムのメタデータサーバーに root としてログインします。

    root@solaris:~# 
    
  2. テキストエディタで /etc/opt/SUNWsamfs/archiver.cmd ファイルを開き、1 つめの fs (ファイルシステム) ディレクティブまで下にスクロールします。

    この例では、vi エディタを使用します。

    root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    # Configuration file for Oracle HSM archiving file systems
    #-----------------------------------------------------------------------
    # General Directives
    archivemeta = off
    examine = noscan
    #-----------------------------------------------------------------------
    # Archive Set Assignments 
    fs = hsmfs1
    logfile = /var/adm/hsmfs1.archive.log
    all .
        1 -norelease 15m
        2 -norelease 15m
    fs = hsmfs2
    logfile = /var/adm/hsmfs2.archive.log
    all .
    ...
    
  3. すべてのファイルシステムのアーカイブ処理を停止する必要がある場合は、archiver.cmd 内の最初の fs ディレクティブの直前に wait ディレクティブを挿入します。archiver.cmd ファイルを保存して、エディタを閉じます。

    この例では、wait ディレクティブを hsmfs1 ファイルシステムに対するディレクティブの直前に挿入します。この場合、これはアーカイブ用に構成されたすべてのファイルシステムに適用されます。

    root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Archive Set Assignments
    wait
    fs = hsmfs1
    logfile = /var/adm/hsmfs1.archive.log
    all .
        1 -norelease 15m
        2 -norelease 15m
        3 -norelease 15m
    fs = hsmfs2
    ...
    :wq
    root@solaris:~# 
    
  4. 1 つのファイルシステムのみのアーカイブ処理を停止する必要がある場合は、そのファイルシステムの fs ディレクティブの直後に wait ディレクティブを挿入します。archiver.cmd ファイルを保存して、エディタを閉じます。

    この例では、hsmfs1 ファイルシステムでのアーカイブアクティビティーを停止します。

    root@solaris:~# vi /etc/opt/SUNWsamfs/archiver.cmd
    ...
    #-----------------------------------------------------------------------
    # Archive Set Assignments
    fs = hsmfs1
    wait
    logfile = /var/adm/hsmfs1.archive.log
    all .
        1 -norelease 15m
        2 -norelease 15m
        3 -norelease 15m
    fs = hsmfs2
    ...
    :wq
    root@solaris:~# 
    
  5. 次に、リサイクルを停止します

リサイクル処理の停止

  1. ファイルシステムのメタデータサーバーに root としてログインします。

    root@solaris:~# 
    
  2. テキストエディタで /etc/opt/SUNWsamfs/recycler.cmd ファイルを開きます。

    この例では、vi エディタを使用します。

    root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    # Configuration file for Oracle HSM archiving file systems
    #-----------------------------------------------------------------------
    logfile = /var/adm/recycler.log
    no_recycle tp VOL[0-9][2-9][0-9]
    library1 -hwm 95 -mingain 60
    
  3. recycler.cmd ファイルの各リサイクルディレクティブに -ignore パラメータを追加します。次に、ファイルを保存し、エディタを閉じます。

    アーカイブセット単位ではなくライブラリ単位でリサイクル処理を構成していないかぎり、recycler.cmd ファイルにリサイクルディレクティブは含まれていません。しかし、ここで確認します。

    この例では、テープライブラリ library1 に対してリサイクルディレクティブが 1 つあります。

    root@solaris:~# vi /etc/opt/SUNWsamfs/recycler.cmd
    # Configuration file for Oracle HSM archiving file systems
    #-----------------------------------------------------------------------
    logfile = /var/adm/recycler.log
    no_recycle tp VOL[0-9][2-9][0-9]
    library1 -hwm 95 -mingain 60 -ignore
    :wq
    root@solaris:~# 
    
  4. 1 つ以上のアーカイブファイルシステムの損失または破損から回復している場合は、先に進む前に、アーカイブされていないファイルをバックアップします

  5. サーバーの問題や、ファイルシステムの損失または破損から回復している場合は、先に進む前に、Oracle HSM 構成を保存します

  6. ディレクトリおよびファイルを復元する必要がある場合は、Oracle HSM 構成を保存する必要があるか、または直接第5章 紛失および破損したファイルの回復に進むかどうかを判定します。

アーカイブされていないデータの保存

破損したアーカイブファイルシステムのディスクキャッシュ内に、アーカイブされていないファイルが残っている可能性があります。これらのファイルのコピーは、アーカイブ内には存在しません。したがって、可能であれば、回復ポイントファイルにすぐにバックアップします。次のように進めます。

アーカイブされていないファイルのバックアップ

  1. ファイルシステムのメタデータサーバーに root としてログインします。

    root@solaris:~# 
    
  2. 回復ポイントの安全なストレージ場所を選択します。

    この例では、初期構成時に回復ポイント用に作成したディレクトリの下にサブディレクトリ unarchived/ を作成します。/zfs ファイルシステムには、回復しているファイルシステム /hsmfs1 と共通のデバイスはありません。

    root@solaris:~# mkdir /zfs1/hsmfs_recovery/unarchived/
    root@solaris:~# 
    
  3. ファイルシステムのルートディレクトリに移動します。

    この例では、マウントポイントディレクトリ /hsmfs1 に変更します。

    root@solaris:~# cd /hsmfs1
    root@solaris:~# 
    
  4. ディスクキャッシュ内に残っているアーカイブされていないファイルをバックアップします。コマンド samfsdump -u -f recovery-point を使用します。ここで recovery-point は、出力ファイルのパスおよびファイル名です。

    -u オプションを付けて samfsdump コマンドを使用すると、アーカイブされていないデータファイルがバックアップされます。この例では、回復ポイントファイル 20150325 をリモートディレクトリ /zfs1/hsmfs_recovery/unarchived/ に保存します。

    root@solaris:~# samfsdump -u -f /zfs1/hsmfs_recovery/unarchived/20150325
    root@solaris:~# 
    
  5. サーバーの問題や、ファイルシステムの損失または破損から回復している場合は、先に進む前に、Oracle HSM 構成を保存します

  6. ディレクトリおよびファイルを復元する必要がある場合は、Oracle HSM 構成を保存する必要があるか、または直接第5章 紛失および破損したファイルの回復に進むかどうかを判定します。

構成および状態情報の保存

Oracle HSM ソフトウェアおよびファイルシステムの復元に必要なすべての構成ファイルおよびスクリプトのバックアップコピーを安全に格納してある場合でも、可能な場合は、障害の発生したシステムの現在の状態を保存しておくことは有益です。残っている構成ファイルやスクリプトには、完全な構成が最後にバックアップされてから実装された変更が含まれている可能性があります。つまり、システムをほぼ障害発生直前の状態に復元することと、単にその状態に近づけることには差があるということです。ログファイルとトレースファイルには、ファイルの復元や障害原因の特定に役立つ情報が含まれています。このため、何か作業をするまえに、残っているものはすべて保存する必要があります。

Oracle HSM 構成を保存する

  1. 可能な場合は、ファイルシステムメタデータサーバーに root としてログインします。

    root@solaris:~# 
    
  2. samexplorer コマンドを実行して、SAMreport を作成し、バックアップ構成情報が保持されているディレクトリにそのレポートを保存します。コマンド samexplorer path/hostname.YYYYMMDD.hhmmz.tar.gz を使用します。ここで path は選択したディレクトリへのパス、hostname は Oracle HSM ファイルシステムホストの名前、YYYYMMDD.hhmmz は日付とタイムスタンプです。

    デフォルトのファイル名は /tmp/SAMreport.hostname.YYYYMMDD.hhmmz.tar.gz です。この例では、SAMreport を保存するディレクトリ /zfs1/sam_config/ がすでに存在します。そのため、このディレクトリにレポートを作成します (次のコマンドは 1 行で入力し、改行はバックスラッシュ文字でエスケープします)。

    root@solaris:~# samexplorer \ /zfs1/sam_config/explorer/server1.20150325.1659MST.tar.gz
         Report name:     /zfs1/sam_config/explorer/samhost1.20150325.1659MST.tar.gz
         Lines per file:  1000
         Output format:   tar.gz (default) Use -u for unarchived/uncompressed.
     
         Please wait.............................................
         Please wait.............................................
         Please wait......................................
     
         The following files should now be ftp'ed to your support provider
         as ftp type binary.
     
         /zfs1/sam_config/explorer/samhost1.20150325.1659MST.tar.gz
    
  3. 独立したファイルシステムに、Oracle HSM 構成ファイルをできるだけ多くコピーします。これらのファイルには、次のものが含まれます。

    /etc/opt/SUNWsamfs/
         mcf
         archiver.cmd
         defaults.conf 
         diskvols.conf 
         hosts.family-set-name
         hosts.family-set-name.local
         preview.cmd
         recycler.cmd
         releaser.cmd
         rft.cmd
         samfs.cmd
         stager.cmd
         inquiry.conf
         samremote                  # SAM-Remote server configuration file
         family-set-name            # SAM-Remote client configuration file
         network-attached-library   # Parameters file
         scripts/*                  # Back up all locally modified files
    /var/opt/SUNWsamfs/
    
  4. ヒストリアンカタログを含め、残っているすべてのライブラリカタログをバックアップします。カタログごとに、コマンド dump_cat -V catalog-file を使用します。ここで catalog-file は、カタログファイルのパスと名前です。出力を新しい場所にある dump-file にリダイレクトします。

    build_cat コマンドを使用して、代替システムでのカタログの再構築に dump_cat ファイルの出力を使用します。この例では、library1 のカタログデータを、NFS でマウントされた個別のファイルシステム zfs1 上のディレクトリにあるファイル library1cat.dump にダンプします (次のコマンドは 1 行で入力し、改行はバックスラッシュ文字でエスケープします)。

    root@solaris:~# dump_cat -V /var/opt/SUNWsamfs/catalog/library1cat > \ /zfs1/sam_config/20150325/catalogs/library1cat.dump
    
  5. Oracle HSM のインストールおよび構成中に変更したシステム構成ファイルを、独立したファイルシステムにコピーします。これには、次が含まれる可能性があります。

    /etc/
         syslog.conf
         system
         vfstab
    /kernel/drv/
         sgen.conf
         samst.conf
         samrd.conf
         sd.conf
         ssd.conf
         st.conf
    /usr/kernel/drv/dst.conf
    
  6. Oracle HSM 構成の一部として作成したカスタムシェルスクリプトおよび crontab エントリを、独立したファイルシステムにコピーします。

    たとえば、回復ポイントの作成を管理するために crontab エントリを作成した場合は、ここでコピーを保存します。

  7. 現在インストールされているソフトウェアのリビジョンレベルを記録する readme ファイルを作成します。Oracle Oracle HSM、Solaris、および Solaris Cluster (該当する場合) を含みます。別の回復情報と一緒に、独立したファイルシステムにファイルを保存します。

  8. 可能であれば、ダウンロードした Oracle Oracle HSM、Solaris、および Solaris Cluster のパッケージのコピーを独立したファイルシステムに保存します。

    パッケージをすぐに使用できるようにしておくと、必要になったときにソフトウェアを迅速に復元できます。

  9. Oracle HSM サーバーホストの損失から回復している場合は、第3章 Oracle HSM 構成の復元に進みます。

  10. 1 つ以上の Oracle HSM ファイルシステムを復元する必要がある場合は、第4章 ファイルシステムの回復に進みます。

  11. ディレクトリおよびファイルを復元する必要がある場合は、第5章 紛失および破損したファイルの回復に進みます。