web-dev-qa-db-ja.com

Linux:pvmoveのZFSアナログ-vdevからデータを移動する方法は?

サーバーのディスク容量を拡張する必要があります。プールは1Tbディスクで開始され、次に2Tbディスクで拡張されました。 1Tbを超える空き領域があります。つまり、すべてのデータが2Tbパーツに簡単に収まりますが、現在1Tbディスクに割り当てられています。

実際には、これらのディスクは、1Tbのペアと2Tbのペアそれぞれのハードウェア(PERC)RAID1アレイです。

これらの1Tbディスクを3Tbに交換したい。 「1つずつ」の置き換えは、実際にはオプションではありません。原則として、この物理RAIDはディスクを1つずつ交換し、アレイを拡張してディスクを満たすことができます。ただし、ディスクの冗長性が失われるまでにかなり長い時間がかかるため、このパスは避けたいと思います。

文字どおりすべてのデータを1Tbから移動してから削除し、3Tbに置き換えたいです。ダウンタイムなしでシステムを実行しながら、すべてオンザフライで行う必要があります。

LVMでは、操作が非常に簡単で理解しやすいものである必要があります。

  1. 1Tb物理ディスクから割り当てられたすべてのデータをpvmove(RAID用語ではVD)
  2. vgreduceはvgからそのpvを削除し、pvremoveはpvメタデータを削除します
  3. megacliを使用して1Tbアレイを削除します(PERCはLSI/Avago MegaRAID SASにブランド変更されています)
  4. ディスクを物理的に交換する
  5. megacliを使用して別のアレイを再度アセンブルします
  6. 新しいpvを作成してvgに追加します

これは、私が以前使用していた日常的な手順です。各ステップは非常によく理解されており、私は各ステップで何が起こっているのかを完全に制御できます。

ZFSで同じ手順を安全かつ意図的に行う方法は?

それが重要な場合:

  • サーバーはDell PowerEdge R730です
  • oSはProxmox VE 6.0で、Debian 10.1をベースにしています。 PVE ISOイメージからインストールされました。つまり、Debianインストールから変換されていません。
  • 別のプールに組み立てられたSSDのセットから実行されるため、システムはこのプールに依存しません
  • プールはいくつかのVM高パフォーマンスを必要としない仮想ディスクをホストします。ただし、そのデータは貴重です。失われた場合は許容できません。したがって、手順は明確で理解できるはずです。
  • システムは常にユーザーによって使用されていますが、データ移行中のパフォーマンスの低下は許容されます
9

vdevからデータを移動する方法

できません ミラーリングされたプールを除きます。

5
poige