NetAppのサポートにより、I/Oパフォーマンスを向上させるためにパーティションを調整することが提案されています。つまり、開始セクターは8で割り切れる必要があります。 Linuxでext3-を使用して、本番環境で不整合なパーティションの開始点を移動するにはどうすればよいですか?
ミスアラインメント(start = 63s)およびアラインメント(start = 64s)パーティションのスクリーンショットは、次の場所で入手できます。
(このトピックに興味がある場合は、NetAppに、パーティションの位置がずれている場合のパフォーマンスの問題を説明する優れたドキュメントがあります。「tr-3747」を検索してください:仮想環境でのファイルシステムの位置合わせのベストプラクティス 。)
「サイズ変更+移動」コマンドを使用してpartedを使用しようとしましたが、開始点を移動すると、次のエラーが発生します。
(parted) resize
Partition number? 1
Start? [64s]?
End? [419425019s]? 419425018
(parted) move
Partition number? 1
Start? 65
End? [419425019s]? 419425019
Error: Can't move a partition onto itself. Try using resize, perhaps?
エキスパートモードでfdiskの「b」コマンドを使用すると(「パーティション内のデータの先頭を移動する」)は機能しますが、ファイルシステムは移動しません。
2つのオプションがあります。すべての不整合VMを、その不整合用に特別に作成されたデータストアに移動するか、すべてのVMを修正します。
VMを修正することにした場合、サーバーを再起動する必要があると私は理解しています。 ここにあります 停止することにした場合に調査を開始できるNetappリンク。 mbrscanとmbralignは必要なツールです。
まだ停止を取得できず、新しいデータストアを作成することにした場合は、 this を読む必要があります。オフセットのタイプごとに個別のLUNが作成されますが、中断が少ない場合は、時間をかけて再調整のために停止をスケジュールすることができます。ライブVMを特別にオフセットされたLUNに配置すると、パフォーマンスの低下に耐える意思がない限り、修正するまでVMotionを実行できないことを忘れないでください。
fdiskは、ディスクの先頭にある512バイトのデータであるMBRを操作します。残りのデータは操作されません。ホストを停止し、適切に配置された新しいストレージをプロビジョニングしてから、dd
などを使用して、古いパーティションを(新しいストレージ上の)新しいパーティションにミラーリングする必要があります。
ファイルシステムは通常、パーティションに対して最初の(そして最後の)ブロックがどこにあるかを知ることに依存しているため、このタイプのことはダウンタイムなしでは実際には実行できません。明らかに、パーティションを切り捨てることはできず(fdiskが行うことです)、実行中にシステム全体を+1ブロック移動すると、...まあ、ファイルシステムがその状況を適切に処理できるかどうかはわかりません。
これをオンザフライで、またはダウンタイムなしで実行するソリューションを私は知りません。私はあなたの最善かつ唯一のチャンスはroot-fs(またはより良いのはシステム全体)をバックアップし、新しい整列されたパーティションを作成することだと思います。