По 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
57 lines
3.0 KiB
Bash
57 lines
3.0 KiB
Bash
# Все специфичные для окружения "Облачная площадка" параметры разворачивания
|
||
# (updated_dia.png). Источник истины: значения из этого файла и только из
|
||
# него подставляются в шаблоны роли frr_anycast — сама роль site-специфичных
|
||
# значений не содержит.
|
||
#
|
||
# Топология: 4 узла (vR01..vR04), один AS 65200, общий anycast-адрес на всех.
|
||
# У каждого узла 2 приватных интерфейса-сегмента:
|
||
# - "основной канал" (синий) — общий L2-сегмент с Client Edge Router-M1/M2
|
||
# (площадка "Основная", ASN 65104) — анонсы БЕЗ as-path prepend;
|
||
# - "резервный канал" (розовый) — общий L2-сегмент с Client Edge Router-B1/B2
|
||
# (площадка "Резервная", ASN 65103) — анонсы С as-path prepend.
|
||
# Т.к. M1/M2/B1/B2 сидят на общих для всех vR сегментах, bgp_neighbors —
|
||
# ОДИН список на всё окружение (см. group_vars/site_cloud.yml), а не per-node.
|
||
#
|
||
# Использование: SITE_ENV_FILE=site-cloud.env ./run.sh site-cloud.yml [...]
|
||
|
||
# --- site-wide ---
|
||
LOCAL_ASN=65200
|
||
ANYCAST_PREFIX=172.31.255.10/32
|
||
DUMMY_IFACE=dummy0
|
||
PRIV_MAIN_IFACE=ens7 # сегмент к "Основная площадка" (M1/M2), синий/основной канал
|
||
PRIV_BACKUP_IFACE=ens8 # сегмент к "Резервная площадка" (B1/B2), розовый/резервный канал
|
||
EXT_IFACE=ens9 # внешний интерфейс — интернет-egress для sNAT
|
||
FRR_APT_SERIES=frr-8 # ветка репозитория deb.frrouting.org
|
||
|
||
# SSH/подключение (пользователь и ключ, которые Terraform выдал ВМ при создании)
|
||
SSH_USER=ansible
|
||
SSH_PRIVATE_KEY_FILE=~/.ssh/site-cloud-deploy
|
||
|
||
# --- Основная площадка (синий/основной канал, БЕЗ as-path prepend) ---
|
||
MAIN_ASN=65104
|
||
MAIN1_NEIGHBOR_IP=192.168.200.10 # Client Edge Router-M1 (main)
|
||
MAIN2_NEIGHBOR_IP=192.168.200.11 # Client Edge Router-M2 (main)
|
||
|
||
# --- Резервная площадка (розовый/резервный канал, С as-path prepend) ---
|
||
BACKUP_ASN=65103
|
||
BACKUP1_NEIGHBOR_IP=192.168.201.10 # Client Edge Router-B1 (backup)
|
||
BACKUP2_NEIGHBOR_IP=192.168.201.11 # Client Edge Router-B2 (backup)
|
||
AS_PATH_PREPEND_COUNT=3
|
||
|
||
# --- per-node (только то, что реально уникально на узел) ---
|
||
VR01_MGMT_IP=192.168.100.21
|
||
VR01_ROUTER_ID=172.31.0.1
|
||
VR01_PLATFORM=PA2 # информационно, роль это значение не использует
|
||
|
||
VR02_MGMT_IP=192.168.100.22
|
||
VR02_ROUTER_ID=172.31.0.2
|
||
VR02_PLATFORM=ME1
|
||
|
||
VR03_MGMT_IP=192.168.100.23
|
||
VR03_ROUTER_ID=172.31.0.3
|
||
VR03_PLATFORM=PA2
|
||
|
||
VR04_MGMT_IP=192.168.100.24
|
||
VR04_ROUTER_ID=172.31.0.4
|
||
VR04_PLATFORM=ME1
|