[仮想化] libvirt、KVM、ストレージプール、ストレージボリューム

参考:
1. 仮想マシンのディスクとqemu-img、ストレージプール、ストレージボリューム - 著者:IDYS • Marshal

1.libvirt

1.1 定義

現在、最も広く使用されている KVM 仮想マシン管理ツールです。

1.2 構成:

  1. APIライブラリ
  2. デーモン (libvirtd)
  3. コマンドラインツール ( virsh)

1.3 主なサポート機能

  1. 仮想マシン管理: さまざまなドメインのライフサイクル操作が含まれます。開始、停止、一時停止、保存、再開、移行など。ディスク、ネットワーク カード、メモリ、CPU など、さまざまな種類のデバイスのホットスワップをサポートします。
  2. リモート マシンのサポート: libvirt デーモンがリモート マシンを含むマシン上で実行されている限り、すべての libvirt 機能にアクセスして使用できます。複数のネットワークのリモート送信をサポートし、最も単純な SSH を使用します。
  3. ストレージ管理: libvirt デーモンを実行している任意のホストを使用して、さまざまなタイプのストレージを管理できます。さまざまな形式 (qcow2、vmdk、raw など) のファイル イメージの作成、NFS 共有のマウント、既存の LVM ボリューム グループの一覧表示、新しい LVM ボリューム グループの作成が可能です。論理ボリューム、未処理のディスクデバイスのパーティション化、iSCSI 共有のマウントなど。
  4. ネットワーク インターフェイス管理: libvirt デーモンを実行しているホストは、物理および論理ネットワーク インターフェイスの管理に使用できます。
  5. 仮想 NAT とルートベースのネットワーク: libvirt デーモンを実行している任意のホストを仮想ネットワークの管理と作成に使用できます。

1.4 virsh の使用

仮想マシンでの操作

virsh list --all #查看创建的所有虚拟机
virsh start VM_Name  # 启动名称为 VM_Name 的虚拟机
virsh suspend VM_Name	#挂起虚拟机
virsh shutdown VM_Name	#关闭虚拟机
virsh destroy VM_Name	# 强制关闭虚拟机
virsh reboot VM_Name	#重启虚拟机
virsh reset VM_Name	#强制重启虚拟机

2.KVM

KVMについて -

2.1KVMストレージモード

  • ファイルシステムベースのストレージ
  • デバイスベースのストレージ
  • 存储池ストレージ管理を簡素化する

2.2 仮想ディスクの種類

  • 修正:
    構成時に、ディスク サイズを指定します
    。仮想ディスクに実際に保存されるデータの量に関係なく、ホストのディスク領域と同じサイズが占有されます。

  • 動的: 最大容量まで拡張しますが、必要に応じて追加のスペースのみを使用します

  • 差分
    作成は差分ディスクであるため、変更されたデータのみが保存されます。
    例: リカバリ ディスクにオペレーティング システムをインストールし、その後、さらなる構成を実行するために差分ディスクを作成します。

2.3 KVM がサポートするディスクの種類

  • クカウ
  • qcow2
  • vmdk
  • VHD\VHDX
  • ビデオディ

4. ストレージプール

  • libvirt は存储池ストレージを一元管理し、運用を簡素化することができます。
  • ストレージプールとボリュームは必要ありません
  • 次のストレージ プールがサポートされています
dir - Filesystem Directory
disk  - Physical Disk Device
fs - Pre-Formatted Block Device
gluster - Gluster Filesystem
iscsi - iSCSI Target
logical
mpath
netfs
rbd
scsi
sheepdog

4.1 設定ファイル

/etc/libvirt/storage/	#存储 存储池 的配置文件~们

4.2 ディレクトリベースのストレージプール

  1. ディレクトリの準備: ディレクトリのアクセス許可を設定します

ストレージプールに対する操作

virsh pool-list pool_name
virsh pool-info pool_name
virsh pool-autostart pool_name
virsh pool-build	#建立池
virsh pool-create-as	#从一组变量中创建一个池
virsh pool-create	#从一个 XML 文件中创建一个池
virsh pool-define-as	#在一组变量中定义池
virsh pool-delete pool_name
virsh pool-destroy pool_name
virsh pool-refresh pool_name
virsh pool-edit	pool_name	#编辑存储池XML配置

5. 保管量

ストレージ プールはストレージ ボリュームに分割されます ( storage volume)

ストレージボリュームの構成

  1. 書類
  2. ブロックデバイス(物理パーティション、LVM論理ボリュームなど)

ボリューム操作

  1. 作成
  2. クローン
  3. 消去
  4. 動く
  5. サイズ変更
virsh vol-list pool_name	#列举存储池中的存储卷
virsh vol-clone
virsh vol-create-as pool_name vol_name 2G --format qcow2 	#在存储池中创建存储卷
virsh vol-create
virsh delete
virsh vol-download
virsh vol-dumpxml	#XML 中的卷信息
virsh vol-info vol_name	#存储卷信息
virsh vol-list	#列出卷
virsh vol-name	#为给定密钥或者路径返回卷名
virsh vol-path
virsh vol-pool
virsh vol-resize	#重新定义卷大小
virsh vol-upload	#将文件内容上传到卷中
virsh vol-wipe	#擦除卷

おすすめ

転載: blog.csdn.net/Sanayeah/article/details/126739359