web-dev-qa-db-ja.com

Ext3はジャーナルエラーを受け取り続け、読み取り専用になります

EMCおよびHPストレージアレイに接続する2つのHBAを備えたRHEL5.5x86_64サーバーがあります。私のEMCベンダーがそれを主張しているので、EMCPowerPathがインストールされています。

私の問題は、HPストレージ上のボリュームでジャーナルエラーが発生し(以下を参照)、読み取り専用モードになることです。

SANの問題またはOSの問題ですか?これを解決するにはどうすればよいですか?

May 27 14:16:57 cvoddv01 kernel: journal_bmap: journal block not found at offset 6156 on dm-7
May 27 14:16:57 cvoddv01 kernel: Aborting journal on device dm-7.
May 27 14:16:57 cvoddv01 kernel: ext3_abort called.
May 27 14:16:57 cvoddv01 kernel: EXT3-fs error (device dm-7): ext3_journal_start_sb: Detected aborted journal
May 27 14:16:57 cvoddv01 kernel: Remounting filesystem read-only
May 27 14:16:57 cvoddv01 kernel: __journal_remove_journal_head: freeing b_frozen_data
May 27 14:16:57 cvoddv01 kernel: __journal_remove_journal_head: freeing b_committed_data
May 27 14:16:57 cvoddv01 kernel: __journal_remove_journal_head: freeing b_frozen_data
May 27 14:17:36 cvoddv01 kernel: ext3_abort called.
May 27 14:17:36 cvoddv01 kernel: EXT3-fs error (device dm-7): ext3_put_super: Couldn't clean up the journal

私のmodprobe.confは次のとおりです。

alias scsi_hostadapter mptbase
alias scsi_hostadapter1 mptspi
alias scsi_hostadapter2 cciss
alias scsi_hostadapter3 ata_piix
alias scsi_hostadapter4 qla2xxx
alias eth0 e1000e
alias eth2 e1000e
alias eth1 e1000e
alias eth3 e1000e
alias eth4 bnx2
alias eth5 bnx2
#Added by HP rpm installer
alias scsi_hostadapter_mptscsih_module mptscsih
#Added by HP rpm installer
alias scsi_hostadapter_mptsas_module mptsas
options qla2xxx ql2xmaxqdepth=16 ql2xloginretrycount=30 qlport_down_retry=64
options lpfc lpfc_lun_queue_depth=16 lpfc_nodev_tmo=30 lpfc_discovery_threads=32
###BEGINPP
include /etc/modprobe.conf.pp
###ENDPP

/ etc/fstabは次のとおりです。

/dev/VolGroup00/LogVol00 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0
#/dev/sdae1             /mnt/sda1               ext3    defaults        0 0
#/dev/sdaf1             /mnt/sdb1               ext3    defaults        0 0
#/dev/sdag1             /mnt/sdc1               ext3    defaults        0 0
#/dev/sdah1             /mnt/sdd1               ext3    defaults        0 0
/dev/vg01/lvu02         /u02                    ext3    defaults        0 0
/dev/vg01/lvu03         /u03                    ext3    defaults        0 0
/dev/vg01/lvu04         /u04                    ext3    defaults        0 0
/dev/vg01/lvu05         /u05                    ext3    defaults        0 0
/dev/vg02/lvu06         /u06                    ext3    defaults        0 0
/dev/vg02/lvu07         /u07                    ext3    defaults        0 0
/dev/vg02/lvu08         /u08                    ext3    defaults        0 0
/dev/vg02/lvu09         /u09                    ext3    defaults        0 0
shmfs                   /dev/shm                tmpfs   rw,size=22g     0 0

uanme -a

Linux cvoddv01.globetel.com 2.6.18-194.el5 #1 SMP Tue Mar 16 21:52:39 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
2
kjloh

実際には、両方を同時に使用するのではなく、dm-multipathまたはPowerPathのいずれかを使用する必要があります。

PowerPath管理者ガイド から:

PowerPathは、ネイティブLinuxデバイスマッパー(DM-MPIO)と互換性がありません。同じホストで両方の製品を構成すると、システムが不安定になる可能性があります。 PowerPathがインストールされるホストでネイティブデバイスマッパーを構成しないことをお勧めします。

2
Tom Shaw

ジャーナルを削除して再構築しようとしましたか? EXT3ジャーナルを再作成する方法を説明する投稿はほとんどありません。それでもジャーナルを再構築してもエラーが発生する場合は、ハードウェア/ドライバーを調査します。 -申し訳ありませんが、ここでこれ以上詳しく説明することはできません。

0
AndyM

添付のログで影響を受けるデバイスはdm-7なので、HPストレージにマルチパスを使用することを期待していますよね?その場合は、マルチパス構成も添付してください。

カーネル名のel5はRHEL5を示唆しています。サポート契約を結んでいる場合は、できるだけ早く連絡してください。彼らが最も助けてくれるでしょう。

データから確かなことは、ログへのアクセスの試みが行われ、失敗し、OSが可能な唯一のことを実行したことです。つまり、書き込みによる損傷を避けるためにファイルシステムをフリーズしました。

障害は、次のいずれかのコンポーネントにある可能性があります。

  1. ストレージ-再マウント後のファイルシステムは問題ありませんか?ジャーナルの問題が唯一の問題であるかどうか、またはバグがジャーナルにヒットしたときにのみ目に見えるようになるサイレント破損がたくさんあるかどうかを確認するために、完全なfsckを実行できますか?.
  2. この特定のLUN。あなたはそれをフォーマットし、データを復元し、それが再び起こるかどうかを確認することができますか?
  3. 同じアレイ上に別のLUNを作成して、エラーを再現できるかどうかを確認できますか?同じストレージ上の別のアレイ上のLUN?
  4. マルチパス-ストレージに直接アクセスする場合、1つのパスだけでエラーを再現できますか(これには、ストレージでのSANゾーニングまたはlunマスキングへの変更が必要です)。
  5. パワーパスとネイティブマルチパス間のドライバーの衝突。 powerpathがインストールされていない場合、同じLUNでエラーを再現できますか?

しばらく前から存在しているので、ext3コードのバグではないと思いますが、エキゾチックなマウントオプションを使用していますか?ストレージに4Kブロックがありますか?エキゾチックなものはありますか?

サーバーは正常に動作しましたか?もしそうなら、それが失敗し始めた原因となった変更に名前を付けることができますか?

自分でトラブルシューティングを行う場合は、システムに障害を引き起こす最小限のオプションセットを作成するのが最善の策です。より実用的なアプローチは、特定のサーバーで1つのベンダーのストレージのみを使用するようにストレージを再編成することです。これにより、ベンダー間のピンポンを節約できます。

ただし、最善の策は、OSベンダーに連絡して、彼らに訴訟を起こさせることだと思います。

0
Paweł Brodacki