DT Blog

catch-img

ReaRによるLinuxシステムのリストア失敗の原因と対策

こんにちは。クレスコ・デジタルテクノロジーズの山田です。
ReaRはLinux(RedHat 8)から標準採用されるようになったバックアップツールですが、システム構成によっては、意図した通りにバックアップが取得できない、ミドルウェアによって正常に動作しないことがあります。今回はReaRで発生したバックアップ失敗の原因と対策について紹介したいと思います。


目次[非表示]

  1. 1.ReaRとは何ですか?
  2. 2.ReaRによるバックアップの仕組み
  3. 3.ReaRによるリストアの仕組み
  4. 4.リストアが失敗する原因の特定方法
  5. 5.リストア失敗に対する対策
  6. 6.まとめ


ReaRとは何ですか?

ReaRとは「Relax-and-Recover」の略称で、LinuxのディストリビューションRedHat8~9のバージョンで標準採用されているバックアップツールです。
システムイメージをバックアップしますので、OSの再インストールや設定を行うことなく、システムを復旧できます。



ReaRによるバックアップの仕組み

ReaRによるバックアップの仕組みについて説明します。

[イメージ]
バックアップ作成コマンドを実行すると、下記2種類のファイルを作成する処理が実行されます。
●リカバリー用ファイル(.tar.gz)
●リカバリー用イメージ(.iso)

[バックアップ手順]
※各手順の詳細については本記事では割愛いたします。
①   バックアップ先のバックアップ領域をマウントする。
②   コンソールで次のバックアップコマンドを実行する。

# rear –v mkbackup 

リカバリー用ファイル(tar.gz)とリカバリー用イメージ(iso)が作成される。
③   作成されたリカバリー用ファイル(tar.gz)とリカバリー用イメージ(iso)をバックアップ領域へ保存する。



ReaRによるリストアの仕組み

ReaRによるリストアの仕組みについて説明します。

[イメージ]

リストア時にはリカバリー用イメージ(iso)をマウントしてブートした後、ReaRのリストアコマンドが実行できます。

 


[リストア手順]
※各手順の詳細については本記事では割愛いたします。
①   リストア時はSCVMM(System Center Virtual Machine Manager)などの管理ソフトウェアのコンソールを使用し、バックアップ領域に保存されているリカバリー用イメージ(iso)からブートするよう設定する。
②   SCVMMで仮想マシンをバックアップ領域に保存されているリカバリー用イメージ(iso)から起動する。
③   コンソールのインターフェースで”Recover”オプションを選択する。
④   コンソールから次のリストアコマンドを実行する。

# rear –v recover 



リストアが失敗する原因の特定方法

今回紹介する事例では、バックアップ取得時にエラーメッセージ等は出力されておらず、かつ、リカバリー用ファイル(tar.gz)やリカバリー用イメージ(iso)は作成されている状態であったことから、バックアップ処理が失敗している可能性を疑わずにリストアしたところ、OSが起動しなくなりました。
 
リストア失敗の原因を調査するため、バックアップスクリプトのtarコマンドを1行ずつ手動実行したところ、JP1/FTSのデータ(/def/mqueue/jpfts_logmsgq)をアーカイブする処理でエラーとなることが分かりました。
※tarコマンドを1行ずつ手動実行した際は、エラーメッセージが表示されます。
 
更にバックアップスクリプトを確認したところ、tarコマンドでエラーとなった場合、後続のtarコマンドをスキップし、リカバリー用イメージ(iso)作成処理を実行する作りであることが分かりました。

[原因]
ReaRのバックアップスクリプトは、アーカイブ化に失敗した際のエラーログを出力しない仕様であることから、イメージファイルの欠損に気づくことができず、リストアに失敗していました。


     



リストア失敗に対する対策

ReaRのバックアップに失敗する場合、エラーの原因であるミドルウェアのアーカイブ処理をスキップすることで、後続のアーカイブ処理を継続することが可能となります。
 
ReaR設定ファイル「/etc/rear/local.conf」に下記パラメータを追記することで、JP1/FTSデータ(/def/mqueue/jpfts_logmsgq)のアーカイブ処理をスキップし、後続のアーカイブ処理を継続することが可能となります。

COPY_AS_IS_EXCLUDE+=(“/def/mqueue/jpfts_logmsgq”) 

再度ReaRでバックアップしたバックアップデータ(tar.gz)とリカバリー用イメージ(iso)を使用してリストアしたところ、OSが起動し、リストアに成功しました。



まとめ

今回はJP1/FTSのファイルでしたが、特に/dev配下のファイルや、セッションがファイルを掴む動作をするソフトウェアをバックアップする場合は、注意する必要があります。
 
バックアップの失敗に気付かずにリストアしますと、OSが起動できない弊害が発生しますので、必ず動作検証を行うことをオススメします。
 
今回ご紹介した回避策が、Linuxシステムのバックアップ環境を構築する際の参考になれば幸いです。
最後まで読んでいただき、ありがとうございました。


山田
山田
部署名:プロフェッショナルサービス5部

おすすめ資料はこちら

ソフトウェアテクノロジー

最先端のデジタル技術の豊富な知見に基づき最も効果的なソリューションを提供します。
クレスコ・デジタルテクノロジーズは、大手電機メーカー様との提携に基づく製造業のノウハウを背景に、2015年4月よりPLM事業を開始。2015年6月には、PLMパッケージであるAras Innovatorを提供している米国Aras社とシステムインテグレーションパートナー契約を締結し、数多くのAras Innovator案件に対応しています。

CONTACT

社内システムのお悩みを私たちだけで解決へと導きます

お役立ち資料は
こちらから

不明な点はお気軽に
お問い合わせください

おすすめ資料

ソフトウェアテクノロジー

メルマガ登録

人気記事ランキング

タグ一覧