packer で vEOS Vagrant Box を作る
Arista vEOS 4.19 までは Software Download ページから .box
をダウンロードできましたが、
現時点で 4.20 ~ 4.27 にはありません。
そこで jerearista/vagrant-veos を使って .vmdk
から .box
を作ります。
環境
Software | version |
---|---|
VirtualBox | 6.1.26 |
packer | 1.7.6 |
作り方
vEOS-lab-4.27.0F をベースに作る例です。
1 . Software Download ページからファイルをダウンロードします。
Aboot-veos-8.0.0.iso
vEOS-lab-4.27.0F.vmdk
後述しますが Aboot-veos-serial-8.0.0.iso
ではうまく動きません。
.vmdk
は 64bit 版でも OK です。
2 . vagrant-veos を実行します。
git clone https://github.com/codeout/vagrant-veos.git cd vagrant-veos/packer cp <path to Aboot-veos-8.0.0.iso> source/Aboot-vEOS.iso cp <path to vEOS-lab-4.27.0F.vmdk> packer/source/vEOS.vmdk packer build -var "version=4.27.0F" vEOS-4-i386.json
オリジナルの https://github.com/jerearista/vagrant-veos は 最新の VirtualBox + packer で動かないため、パッチが必要でした。
https://github.com/codeout/vagrant-veos がパッチ済みのものです。
( オリジナルがメンテされてなさそうで…PR してもレビューしてもらえない気がする😭 )
パッチ中身
vagrant up
後にManagement1
にIP アドレスが振られませんでした。明示的に DHCP enable にします/mnt/flash
配下のファイルがadmin
オーナーの場合 EOS がうまく読んでくれません。root
にします- VirtualBox 6.1.20 から、
VBoxManage export --iso
オプションは動きません。*1--options iso
に変えます - 最新の VirtualBox + packer では COM1 経由の boot command 入力がうまくいきません =
Aboot-veos-serial-8.0.0.iso
では動作しません。 ふつうの key input を使います - VM 作成後 export する前に shutdown しますが ACPI を使っていないため、直前に file provisioner で送ったファイルが保存されない場合があります。 ACPI enable にします
*1:Document Bug がある様子