ARM64のubuntu-arm64をKVMで動作にチャレンジ
1.概要
前回、ARM64のubuntu-arm64をQEMU環境で動かしました。QEMUはterminal起動なので、terminalを終了すると終了してしまいます。arm64の環境を維持する方法を調べて、ネット上でKVM仮想マシンにする方法を見つけました。KVM仮想マシンにすることで起動停止の自由度が高くなる上、レスポンスも良くなります。その内容を記述します。
2.詳細
新しくubuntu-20.04.6の環境を構築後、作業をします。
環境はAMD 4core Memory 16GB SSD 128GBです。
(a) qemu-system-aarch64の準備
(b) arm版Ubuntuイメージ(cloud-init版)の準備
(c) NoCloudデータの準備
(d) 仮想マシンのインストール
(e) 仮想マシンの起動
(a) qemu-system-aarch64の準備
$ sudo apt install -y qemu qemu-kvm libvirt-daemon libvirt-clients bridge-utils virt-manager
$ sudo apt install -y qemu-system-arm qemu-efi-aarch64 qemu-efi-arm
(b) arm版Ubuntuイメージ(cloud-init版)の準備
ubuntu-20.04のimageを利用します
$ wget https://cloud-images.ubuntu.com/focal/current/forcal-server-cloudimg-arm64.img
10GBに拡張します
$ qemu-img forcal-server-cloudimg-arm64.img 10G
(c) NoCloudデータの準備
user-dataをvimで作成します
#cloud-config
user: ubuntu
password: password
chpasswd: { expire: false }
ssh_pwauth: true
user-data.isoを作成します
$ touch meta-data
$ genisoimage -output ./user-data.iso -volid cidata -joliet -rock user-data meta-data
(d) 仮想マシンのインストール
Virtual Machine Managerを起動しても仮想マシンは存在しません。
virtコマンドで仮想マシンを作成します。
$ virt-install \
--connect qemu:///system \
--name ubuntu-arm \
--vcpus 2 --ram 4096 \
--hvm --virt-type qemu \
--arch aarch64 \
--os-type linux --os-variant ubuntu20.04 \
--import --noreboot \
--disk $PWD/forcal-server-cloudimg-arm64.img \
--disk $PWD/user-data.iso,device=cdrom
(e) 仮想マシンの起動
Virtual Machine Managerを起動すると、ubuntu-armが存在し、起動できます。
loginはcloud-initの処理が終了するのを待ってからです。
コメント
コメントを投稿