web-dev-qa-db-ja.com

XFSクォータの追加-最初のマウント/ブートでクォータチェックをスキップします

クラスターで14TB XFSファイルサーバーを実行しており、割り当てサポートを追加したいと考えています。これは、CentOS 6.3(最終版)で3.9.2-1.el6.elrepo.x86_64カーネルを実行しています。

問題は、XFS RAIDをアンマウントし、割り当てサポートを追加して再マウントすると、mountコマンドがハングすることです。 Sever IS応答性があり、XFSマウントポイントはnotアクセス可能です。/etc/fstabの変更を元に戻してクォータオプションを削除しても、マウントがハングすることはありません。

再マウント時に、XFSは14TBRAIDでクォータチェックを実行していると思われます。私の質問は:適切にマウントしてバックグラウンドでクォータチェックを実行できるように、初期クォータチェックを無効にするにはどうすればよいですか?

/etc/fstabエントリ:

/dev/sdb      /w1      xfs     defaults,noatime,usrquota,grpquota 1 2

/var/log/messages出力:

Jun  6 11:37:43 nas-2-1 kernel: XFS (sdb): Mounting Filesystem
Jun  6 11:37:43 nas-2-1 kernel: XFS (sdb): Ending clean mount
Jun  6 11:37:43 nas-2-1 kernel: XFS (sdb): Quotacheck needed: Please wait.

マウントポイントがアクティブな間は、CPU使用率が高くてもパフォーマンスが遅くても構いませんが、使用不可にすることは、私たちが続けたいオプションではありません。 14TBでクォータチェックを実行すると、およそ1日かかると思います。

7
Adam

Xfsを使用する場合、常にその問題が発生します。

(quotaonのマンページ)

   "XFS filesystems are a special case - XFS considers quota information as
   filesystem  metadata  and  uses  journaling  to  provide a higher level
   guarantee of consistency.  There are two components  to  the  XFS  disk
   quota  system:  accounting  and  limit  enforcement.   XFS  filesystems
   require that quota accounting be  turned  on  at  mount  time.   It  is
   possible  to  enable and disable limit enforcement on an XFS filesystem
   after quota accounting is already turned on.  The default is to turn on
   both accounting and enforcement."

また、xfs_quotaのマンページから:

   disable [ -gpu ] [ -v ]
          Disables  quota  enforcement,  while  leaving  quota  accounting
          active. The -v option (verbose) displays  the  state  after  the
          operation has completed.

   off [ -gpu ] [ -v ]
          Permanently  switches quota off for the filesystem identified by
          the current path.  **Quota can only be  switched  back  on  subse‐
          quently by unmounting and then mounting again.**

最新のクォータアカウンティングを取得する必要があるため、ボリューム全体がチェックされるため、14Tバイトには長い時間がかかります。

1つのオプションは、制限の強制を無効にすることですが、それでもクォータアカウンティングをチェックする必要があり、それでもまだ時間がかかる可能性があります。試行したい場合は、「noauto」フラグを設定してブート時にマウントせず、それから無効にします。シェル。

ファイルシステムの種類を変更したり、クォータを「オンライン」で管理したり、そのボリュームのイメージを(xfsdumpまたはxfscopyを使用して)作成したり、マウントしてからrsyncを介してクォータを適用したりすることを考えているのではないかと思います。 、その内容をオンラインのもので更新します。これはバックアップとしても機能しますが、その2番目のオプションも非常に時間がかかります。

悪いニュースで申し訳ありませんが、誰かがあなたにもっと良い解決策を与えるかもしれないことを願っています。

2
blu3g3