f8d3cbdd59
Add the FastAPI app, PostgreSQL migrations, Docker/Helm packaging, API contracts, docs, client examples, and the unit/integration/compatibility test suite for local client and tooling labs without a real vCenter.
36 lines
2.0 KiB
Markdown
36 lines
2.0 KiB
Markdown
**Language / Язык:** [English](../../domains/networking.md) | [Русский](networking.md)
|
||
|
||
# Networking
|
||
|
||
Standard networks, distributed portgroups/switches и host networking:
|
||
[`app/vsphere/rest/router.py`](../../../app/vsphere/rest/router.py),
|
||
[`platform_rest.py`](../../../app/vsphere/rest/platform_rest.py).
|
||
|
||
## Эндпоинты
|
||
|
||
| Метод | Путь | Заметки |
|
||
|---|---|---|
|
||
| GET | `/api/vcenter/network` | Объекты standard `Network` + `DistributedVirtualPortgroup` |
|
||
| GET/POST | `/api/vcenter/network/dvs` | Distributed virtual switches |
|
||
| POST | `/api/vcenter/network/dvpg` | Создать distributed portgroup |
|
||
| GET | `/api/vcenter/host/{host}/networking` | DNS, default gateway, интерфейс `vmk0`, routing |
|
||
| GET/PUT/POST | `/api/appliance/networking` \| `/networking/dns/{hostname,servers,domains}` | Networking на уровне appliance vCenter (см. [Appliance](appliance.md)) |
|
||
|
||
Legacy `GET /rest/vcenter/network` зеркалит список.
|
||
|
||
## Основные моменты
|
||
|
||
- `nics[].value.backing` каждой VM указывает либо на `STANDARD_PORTGROUP`
|
||
(`network-41`, «VM Network»), либо на `DISTRIBUTED_PORTGROUP`
|
||
(`dvportgroup-4N`, с `vlan_id`).
|
||
- Топология по умолчанию засевает один `VmwareDistributedVirtualSwitch`
|
||
(`dvs-51`, `mtu: 9000`) и 1–3 дополнительных distributed portgroup в
|
||
зависимости от размера профиля.
|
||
- Host networking (`GET /api/vcenter/host/{host}/networking`) возвращает DNS
|
||
servers/domains, default gateway и один management-интерфейс `vmk0` с
|
||
детерминированным IPv4 по индексу host.
|
||
- Пути Automation API с меткой NSX (tier-0 gateway, projects, edges,
|
||
VPC/subnets) — seeded lab stand-in'ы под `namespace-management` — см.
|
||
таблицу «Platform surfaces» в [Покрытие API](../api-coverage.md); это не
|
||
реальный NSX Manager.
|