По updated_dia.png: новое окружение "Облачная площадка" (vr01-vr04, AS 65200, anycast 172.31.255.10/32) с двумя внешними BGP-каналами — основным (ASN 65104, без as-path prepend) и резервным (ASN 65103, с prepend на всех узлах) — плюс sNAT (nftables masquerade) на внешнем интерфейсе. Роль frr_anycast обобщена под это: вместо двух жёстко именованных соседей — список bgp_neighbors произвольной длины с флагом prepend; sNAT/ip_forward — опциональный блок (enable_snat). Площадка A мигрирована на новый формат host_vars/group_vars без изменения site-a.env и без изменения рендера — render-check.sh (golden-diff) по-прежнему проходит 6/6. Для site-cloud (окружение новое, ВМ не подняты) добавлен render-check-cloud.sh с grep-инвариантами: 4 соседа на узел, prepend только на резервном канале, nftables masquerade на внешнем интерфейсе — 56/56 проверок пройдено. run.sh обобщён на несколько окружений: инвентарь по имени playbook'а, env-файл через SITE_ENV_FILE (алиас SITE_A_ENV_FILE сохранён). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Bc3HkMiDwooSyLBLoMKNyF
22 lines
936 B
YAML
22 lines
936 B
YAML
---
|
|
# Не site-специфичные дефолты роли (пакеты, пути). Все site-A-специфичные
|
|
# значения приходят из group_vars/host_vars (см. ansible/site-a.env).
|
|
frr_packages:
|
|
- frr
|
|
- frr-pythontools
|
|
|
|
frr_daemons_enabled:
|
|
- zebra
|
|
- bgpd
|
|
- staticd
|
|
|
|
frr_conf_path: /etc/frr/frr.conf
|
|
frr_daemons_path: /etc/frr/daemons
|
|
netplan_dummy_config_path: /etc/netplan/90-anycast-dummy0.yaml
|
|
|
|
# Опциональные возможности роли — выключены по умолчанию, чтобы окружения,
|
|
# которые их не используют (площадка A), рендерились без изменений.
|
|
as_path_prepend_count: 0 # >0 включает route-map с этим числом prepend'ов
|
|
enable_snat: false # true включает nftables-задачи и sysctl ip_forward
|
|
nftables_conf_path: /etc/nftables.conf
|