Containers, Automation và Production Best Practices trên VyOS
VyOS 1.4/1.5 hỗ trợ container (Podman) cho phép chạy dịch vụ phụ trợ, exporter, monitoring. Ngoài ra, VyOS cung cấp API, hỗ trợ Ansible, backup, upgrade và các best practices cho môi trường production.
Containers trên VyOS
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
Hỗ trợ bridge, macvlan, health-check, quản lý bằng Podman CLI.
Tự động hóa với 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 và REST API
set service https api listen-address 0.0.0.0
set service https api port 8443
Gửi lệnh cấu hình qua 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 và Custom Commands
set system login user vyos authentication plaintext-password 'password'
run show version
Backup, Upgrade và 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
- Đổi port SSH, tắt root login, chỉ cho phép key.
- Tắt dịch vụ không dùng:
delete service telnet,delete service ftp. - Thiết lập firewall bảo vệ chính VyOS.
Production Deployment Scenarios
- Home router: NAT, VPN, firewall, monitoring.
- Small business: dual-WAN, HA, container exporter.
- ISP edge: BGP, IPsec, automation, backup.
Lab thực hành: Ansible Playbook triển khai VyOS config
- Chuẩn bị file
ansible.cfgvàhostsvới IP VyOS. - Viết playbook sử dụng module
vyos_configđể đẩy cấu hình. - Chạy playbook và kiểm tra trạng thái trên VyOS.
ansible-playbook -i hosts playbook.yaml
Tổng kết
Bài này giúp bạn vận dụng container, tự động hóa với Ansible, sử dụng API, backup, upgrade, bảo mật và triển khai VyOS trong môi trường production thực tế.