libvirtによるKVM仮想マシンの構築と管理手法

仮想環境の構築手順

virt-installコマンドを使用した仮想マシン作成方法を解説する。事前にハイパーバイザ環境が正常に動作していることを確認する必要がある。

<code>yum install qemu-kvm libvirt virt-install bridge-utils AAVMF –y</code>

仮想マシン作成コマンドの基本構文:

<code>virt-install \
  --connect qemu:///system \
  --virt-type kvm \
  --name vm01 \
  --vcpus=2 \
  --ram 2048 \
  --disk path=/var/lib/libvirt/images/vm01.qcow2,size=12 \
  --cdrom /data/iso/CentOS-7-aarch64.iso</code>

ディレクトリ権限エラーが発生する場合の対処法:

<code>setfacl -m u:qemu:rx /data/iso/</code>

libvirtの構成要素

主要な設定ファイルとディレクトリ:

ファイルパス機能説明
/etc/libvirt/libvirtd.confデーモンの通信設定
/etc/libvirt/qemu.confQEMUドライバ設定
/etc/libvirt/qemu/仮想マシン設定XML格納

リモート接続のエイリアス設定例:

<code><uri transport='ssh'>qemu+ssh://user@hostname/system</uri></code>

libvirtdサービスの運用

コマンド機能
systemctl restart libvirtdサービス再起動
systemctl reload libvirtd設定再読み込み

仮想マシン設定XMLの構造

基本構成の例:

<code><domain type='kvm'>
  <name>vm01</name>
  <memory unit='KiB'>2097152</memory>
  <vcpu placement='static'>2</vcpu>
  <os>
    <type arch='aarch64'>hvm</type>
    <boot dev='hd'/>
  </os>
</domain></code>

CPUとメモリ設定

CPU割り当てモード:

モード特徴
host-passthrough物理CPUを直接公開
host-model互換CPUモデルを模倣

vCPU固定設定例:

<code><cputune>
  <vcpupin vcpu="0" cpuset="2-3"/>
</cputune></code>

ストレージ構成

<code><disk type='file' device='disk'>
  <source file='/vms/disk01.qcow2'/>
  <target dev='vda' bus='virtio'/>
</disk></code>

ネットワーク設定

ブリッジ接続の設定例:

<code><interface type='bridge'>
  <source bridge='br-lan'/>
  <model type='virtio'/>
</interface></code>

virshコマンドリファレンス

主要な仮想マシン操作コマンド:

コマンド機能
virsh list --all全VM表示
virsh start vm01VM起動
virsh shutdown vm01正常停止
virsh edit vm01設定編集

ストレージプール管理:

<code>virsh pool-define-as vm_pool dir - - - - "/vms"
virsh pool-start vm_pool</code>

タグ: KVM libvirt virt-install virsh XML設定

6月29日 00:05 投稿