以前に Cisco CML で SD-WAN (vEdge / cEdge) を検証出来るようにするというメモを書きましたが、CML では任意のノードを追加することが出来ます。 勿論、ルータに IOSv を用いても良いのですが IOSv は起動が遅く、(デフォルト状態では) 多少のスペックを要求するので、特殊な要件が無ければ MikroTik CHR で代用することも可能です。 CHR は消費リソースが少なく、数秒で起動するので私の場合は「Static Route だけ使えれば良い」「OSPF だけ使えれば良い」といった場合に CHR を使っています。 今回は CML に CHR を追加する手順をメモしておきます。 今回は現時点の安定版である 6.47 を使いました。
Step.1
CML へログインし、Tools
→ Node and Image Definitions
→ (画面下部にある) Import existing Node Definition
から下記の .yaml ファイルをインポートします。
id: chr sim: linux_native: driver: iosv libvirt_domain_driver: kvm nic_driver: virtio disk_driver: virtio ram: 64 cpus: 1 general: nature: router description: MikroTik Cloud Hosted Router read_only: true schema_version: 0.0.1 inherited: image: ram: true cpus: false data_volume: false boot_disk_size: false node: ram: true cpus: false data_volume: false boot_disk_size: false configuration: generator: driver: iosv provisioning: volume_name: disk media_type: fat files: - name: ios_config.txt content: '' editable: true device: interfaces: physical: - ether1 - ether2 - ether3 - ether4 - ether5 - ether6 - ether7 - ether8 - ether9 - ether10 - ether11 - ether12 - ether13 - ether14 - ether15 - ether16 has_loopback_zero: false default_count: 4 serial_ports: 1 boot: timeout: 60 completed: - MikroTik Login pyats: os: ios series: iosv config_extract_command: show run ui: group: Others icon: router label_prefix: chr- label: CHR visible: true description: |- MikroTik Cloud Hosted Router 64 MB DRAM, 1 vCPU
Step.2
別に CentOS 8 マシンを用意し、CHR のイメージを .qcow2 形式で用意しておきます。
dnf -y install qemu-img unzip curl -O https://download.mikrotik.com/routeros/6.47/chr-6.47.img.zip unzip chr-6.47.img.zip qemu-img convert -O qcow2 chr-6.47.img chr-6.47.qcow2
Step.3
Tools
→ Node and Image Definitions
→ Manage Uploaded Images
から前の手順で作成した .qcow2 イメージをアップロードします。
Step.4
Tools
→ Node and Image Definitions
→ Create New Image Definition
から以下のように設定を行います。
これで CHR を利用出来るようになりました。