KVMベースのVPSでLVMのサイズを変更する

KVMベースのVPSでLVMのサイズを変更する

私は約2年間VPS(KVMベース、どのストレージ技術かはわかりません)を使用してきました。主に学習用マシン、ユーティリティプロキシ、ほとんど使用されていないVPNゲートウェイなどです。実際の作業がなく、数日間のダウンタイムがあっても問題はありません。

したがって、2年前に購入した後、LVMを使用してパーティションを分割した結果は次のとおりです。

  • 1x 10GiB物理ディスク
  • 2つのパーティション:/ bootとLVMが一緒にディスク容量の100%を占めます。
  • LVMパーティションには、/、swap、および/ homeなど、いくつかの「一般的な」パーティションがあります。

これでISPから追加スペースを購入しました。彼らは魔法をかけ、再起動後に10GiBの分割されていないスペースが追加されました。

次は何をすべきか分からない。私のオプションが何であるかを知りたがってSysResCDを起動しましたが、提供されたGPartedバージョンはLVMをサポートしていませんでした。 (GPartedに含まれる新しいSysResCDはすでに存在し、LVMをサポートしています。)

とにかく、LVMが何かできると聞いたので簡単に、私はこれが当初正しいアプローチではないと思います。 (実際にはLVMを使用しても疑わしいです。以内にKVMは最初はクレイジーなアイデアかもしれません。現時点では、LVMのパーティション、KVMのパーティション、他のLVMのRAIDにある物理ディスクのセット...)

それでは、次のステップは何ですか? ISPに新しいSysResCDを要求し、開始したタスクを続行する必要がありますか?それとも、すべてをLVMから移動してインストールを修復する方が簡単になりましたか?

答え1

LVMから離れる必要はなく、LVMish操作をサポートするためにGPartedは必要ありません。追加スペースに新しいパーティションを作成し、その中にボリュームグループを配置すると、既存のpvcreateLVvgextendを拡張したり、新しいLVを作成したりできます。

答え2

Johnの答えは、私が始めるのに必要な高レベルの概要です。彼の助けを借りてさらに調査をした後、実際に私がしたことは次のとおりです。

  1. 新しくしました。フォーマットされていない分割

    前述のようにGPartedを使用しました。 LVMをサポートしていないため、「Linux LVM」パーティションタイプが提供されていないため、選択する必要がありました。フォーマットされていないタイプを手動で変更します。

    明らかに(ライブシステムでは)cfdiskや他のツールをすぐに使用する方がはるかに簡単です。

    また、注目すべき点は私の期待とは異なり、新しいパーティションです 最後の番号を受け取りませんでした。/dev/sdaN に示されているとおりです。代わりに、/dev/sda5がすでに使用されていても、/dev/sda3を取得します。 IIRC、これはパーティション化ロジックに適用されます。デフォルトのパーティションは常に1〜4で番号付けられ、拡張パーティションは/ dev / sda5から始まります。

  2. 次に、cfdisk を使用してパーティションタイプを「Linux LVM」(0x8E) に変更します。

  3. 次に、pvcreate /dev/sda3実際のLVMパーティションを作成しました。

  4. vgextend myvg /dev/sda3マイ(単一)ボリュームグループに新しいパーティションを含めます。

最後に、「空間を占める」パーティションごとに

  1. 実行してlvresize /dev/myvg/mypart -L 1Gサイズを変更します。 (「mypart」は、古いインストール時に指定した名前です。)

  2. 実際にresize2fs /dev/myvg/mypartサイズを変更するとファイルシステム デフォルトパーティションのサイズ(resize2fsのデフォルト動作)

サイズ変更には再インストール(ext3 / ext4、Linux 2.6)が必要ないため、私の場合はダウンタイムなしでオンラインで全体の作業を実行できました。 (はい、Windowsの世界の読者の皆さん! :))

答え3

既存のパーティションのサイズを増やした後、lvmに拡張されたサイズを知らせ、必要に応じて論理ボリュームを追加したりサイズを変更したりできます。

十分に新しいバージョンがある場合は、そのコマンドを使用してpvを保持する既存のパーティションのサイズを変更partedできます。resizepart以前のバージョンの parted を使用する必要がある場合は、次のコマンドを使用してセクタモードに切り替えて、既存のテーブルを設定し、現在のパーティションが開始されている正確なセクタを記録し、そのパーティションunit sを記録して次を使用して再作成します。ext2のネイティブファイルシステムには問題がなく、まったく同じ起動セクタを使用することで、ディスク容量の100%をパーティションに割り当てることができます。以前の方法を使用している場合は再起動する必要はありませんが、以前の方法を使用している場合は再起動する必要があります。その後、LVMは新しいボリュームを作成したり、既存のボリュームのサイズを変更したりするために使用できる新しいサイズを通知します。論理ボリュームのサイズを変更した後、ext [234]を使用すると仮定し、ext [234]を使用してファイルシステムに通知する必要があります。printrmmkpartresizepartpvresize /dev/sda2lvresizeresize2fs

関連情報