web-dev-qa-db-ja.com

データを失うことなくXFSでユニットと幅を変更する

32個の計算ノードを持つ中規模の科学クラスターがあります。ヘッドノードは、RAID-6である54TBのストレージを提供します。 22台の3TBHDD(2台のパリティユニット)と256Kのストライプサイズで構成されています。 NFSは/ homeです。最近、I/Oパフォーマンスが低下しています。 xfs_info /homeを実行すると、次のように表示されます

meta-data=/dev/sdb1              isize=256    agcount=55, agsize=268435455 blks
         =                       sectsz=512   attr=2, projid32bit=0
         =                       crc=0        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=14648380928, imaxpct=1
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal               bsize=4096   blocks=521728, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

誰かがsunitとswidthがRAID構成と一致する必要があると指摘しました。この場合、sunitは256Kで、swidthは20である必要があります。これらの値をリセットできる唯一の方法は、明らかにmkfs.xfsを使用することです。しかし、私はそうすることを少し躊躇しています、私はユーザーデータを失うことを恐れています

私の質問は:mkfs.xfsを使用してパーティションテーブルを再構成するユーザーデータを失う可能性はありますか?日光と幅を変更する最も安全な方法は何ですか?

コメントや提案をいただければ幸いです

ありがとう

1
Lawless

Mkfs.xfsを使用してパーティションテーブルを再構成するユーザーデータが失われる可能性はありますか?

はい、実際、それは文字通りmkfsツールが行うことです。ツールは常に、データを含まないまったく新しいファイルシステムを作成します。 (一般に「再フォーマット」と呼ばれます。)したがって、既存のファイルシステムのあるパーティションでmkfsを実行すると、データが失われる可能性が100%高くなります。

日光と幅を変更する最も安全な方法は何ですか?

xfs_adminなどの公式のライブ再構成ツールでこれを変更できない場合は、1)バックアップを作成する、2)ファイルシステムを最初から再作成する、などの方法で変更できると想定するのが最善です。 3)バックアップからの復元。

既存のファイルシステムを再構築できるfstransformなどのツールがあります。これは、異なるファイルシステムタイプ間での変換を目的としていますが、古いXFSを新しいXFSに「変換」することもできます。ただし、それでも危険な操作のように思われ、バックアップが必要になるでしょうとにかくなので、「バックアップと再構築」のルートを使用します。

0
user1686