学科サーバ 上の KVM に自分の仮想マシンのイメージを上げて稼働させる
MenuVirtual Box で作成した仮想マシン image を KVM の qcow2 に変換する
qemu-img convert -O qcow2 ~/tmp/Fedora33.vdi /mnt/ie-virsh/e19/e195767/01.qcow2ie-virsh を使うと、以下の作業を自動的にやってくれるので、そちらを使っても良い。
ie-virsh KVM を動かすシステム上での os の種類を調べる
osinfo-query os |grep Fedora最新のものはないのて、いくつか前に合わせる。それを見て以下のように shell script を作る
#!/bin/sh
sudo virt-install \
--check path_in_use=off \
--import \
-n kono-fedora-32 \
--description "Fedora 32" \
--os-type=Linux \
--os-variant=fedora31 \
--ram=2048 \
--vcpus=2 \
--disk path=/mnt/ie-virsh/teacher/kono/01.qcow2,bus=virtio \
--graphics vnc,listen=0.0.0.0 --noautoconsole \
--network bridge:br62
この62は vlan 62 の意味で、システムに依存する。
export LIBVIRT_DEFAULT_URI="qemu:///system"を自分の .zshenv に入れて、環境変数を設定する。
前の shell script実行する。
sudo virsh listで実行されていることを確認する。
sudo virsh destory sudo virsh undefineで仮想マシンの削除を行う。
作成したVMに ie-virsh console or ssh で login する。( key を使って password 抜きで入れるようにする)
VM への access
VNC の port を
sudo virsh dumpxml ??
仮想マシンの console へ login。
sudo virsh console ??
console へ login するためには設定が必要。
Fedora 側の /etc/default/grub に以下を付け加える。(あるいは /boot/grub2/grub.conf の先頭に)
GRUB_CMDLINE_LINUX='console=tty0 console=ttyS0,115200n8'
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
これからbootのgrub.cfgを生成する。
grub2-mkconfig --output=/boot/grub2/grub.cfg
ssh tunnel
os.cr に ssh tunneling で接続します。xxx は自分で選択した番号に置き換えます。ssh tunnel の方法は man ssh で。
ssh -L 10024:localhost:5912 -N daru.ie.u-ryukyu.ac.jp
これで、localhost:10024 に Cot VNC などで接続してください。Password が付いているので、注意。
VNC の mac address を xml から確認して、学科のDNSに登録し、ssh を有効にすれば、ssh からでも接続できます。ただし、password 認証は使わないこと。public key を使って接続する。
Level 1
VNC または ssh で仮想マシンへの login を行うように xmlfile を編集する
sudo virsh edit
Level 2
外部から curl でアクセスできることを確認する。
curl -v ie.u-ryukyu.ac.jp |& moreなどを使う。