Cloudinit

macvlanとnetplan

ASRock H97 Pro4にXeon E3-1265L v3を載せたHaswellにKVM環境を構築。

macvtap does not work for host to guest network communication

virt-managerのNIC設定より

他のPCからLAN経由でアクセスできるようにしたいので、仮想NICの設定を物理NICの"Bridge"モードにしたところ

In most configurations, macvtap does not work for host to guest network communication.

という警告が表示された。

確かにLAN内の別マシンと仮想マシンとのpingは通るものの、ホストとゲストHaswellに閉じた世界では、どちらからもpingが疎通しない。そう言えば以前も悩んだような…と記憶を辿ってみたところ、物理NICをmacvlanでブリッジして、macvlanの方にIPを付与すればいい、という対処法を思い出した。

具体的には

$ ip addr del 192.168.199.2/24 dev enp0s25
$ ip link add dev macvlan0 link enp0s25 type macvlan mode bridge
$ sudo ip addr add 192.168.199.2/24 dev macvlan0
$ sudo ip link set macvlan0 up
$ ip route add default via 192.168.199.254 dev macvlan0

という手順でIPアドレスをenp0s25からmacvlan0に移設すればよい。

18.04 Bionic

gt110bもそろそろアレなので…、と言いつつXeon E3-1265L v3の調達以降なかなか進まなかった代替機の準備。

IMG_1885.JPG

CSSD-S6B240CG3VX

Windows 10を動かしていた高速なNVMe M.2 SSDを常時稼動サーバーの起動ディスクに使うのはさすがに勿体なくて、相応の入れ物を模索していたのだがCFDの2.5インチSSD「CG3VX」3,000円ちょいという手頃な価格になってきたのでポチッとな。

というわけでAIF-06+ZEUS KMPX3280と選手交代する形で、S6B240CG3VXをATAポートに接続。Ubuntu 18.04 LTS “Bionic Beaver”のServer版をインストール。

固定IPの設定をしようとして/etc/network/interfacesを開くとハズレ。Bionic以降はネットワーク設定のお作法が/etc/netplan/50-cloud-init.yamlを編集して、netplan applyを実行する手順となったようだ。

root@haswell:~# cat /etc/netplan/50-cloud-init.yaml
# This file is generated from information provided by
# the datasource.  Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        enp0s25:
            addresses:
            - 192.168.199.2/24
            - 240f:ca:5fb8:1:192:168:199:2/64
            gateway4: 192.168.199.254
            gateway6: 240f:ca:5fb8:1:192:168:199:254
            nameservers:
                addresses: [192.168.199.1, 8.8.8.8]
            dhcp4: no
            dhcp6: no
    version: 2
root@haswell:~#

参照

ASCII.jp - 自作PC https://ascii.jp/pc/