VyOS における Containers、Automation と Production Best Practices
VyOS 1.4/1.5 はコンテナ(Podman)をサポートしており、補助サービス、exporter、monitoring を実行できます。さらに、VyOS は API、Ansible、バックアップ、アップグレードに対応し、本番運用向けのベストプラクティスを提供します。
VyOS 上の Containers
set container name prometheus-exporter image prom/node-exporter
set container name prometheus-exporter network bridge address 192.168.50.10/24
set container name prometheus-exporter health-check interval 30
bridge、macvlan、health-check をサポートし、Podman CLI で管理できます。
Ansible による自動化
# ansible.cfg
[defaults]
inventory = ./hosts
host_key_checking = False
playbook.yaml
hosts: vyos gather_facts: no tasks:name: Push config vyos.vyos.vyos_config: lines: - set interfaces ethernet eth0 address 192.168.1.1/24
VyOS HTTP API と REST API
set service https api listen-address 0.0.0.0
set service https api port 8443
REST API 経由で設定コマンドを送信します。
curl -k -u vyos:password -X POST https://vyos:8443/configure -d '{"op": "set", "path": ["interfaces", "ethernet", "eth0", "address"], "value": "192.168.1.2/24"}'
Scripting と Custom Commands
set system login user vyos authentication plaintext-password 'password'
run show version
Backup、Upgrade と Rollback
# Backup config
cp /config/config.boot /config/backup-$(date +%F).boot
# Upgrade image
add system image https://downloads.vyos.io/rolling/current/amd64/vyos-1.5-rolling.iso
# Rollback
set system image default-boot vyos-1.4-rolling
Security Hardening Checklist
- SSH ポート変更、root login 無効化、鍵認証のみにします。
- 不要サービスを停止します:
delete service telnet、delete service ftp。 - VyOS 自身を保護する firewall を設定します。
Production Deployment Scenarios
- Home router: NAT、VPN、firewall、monitoring。
- Small business: dual-WAN、HA、container exporter。
- ISP edge: BGP、IPsec、automation、backup。
ハンズオンラボ: Ansible Playbook による VyOS 設定展開
- VyOS の IP を含む
ansible.cfgとhostsを準備します。 vyos_configモジュールを使用した playbook を作成します。- playbook を実行し、VyOS 側の状態を確認します。
ansible-playbook -i hosts playbook.yaml
まとめ
このレッスンで、コンテナ運用、Ansible 自動化、API 活用、バックアップ、アップグレード、セキュリティ強化を組み合わせた VyOS の本番運用パターンを実践できます。