cozystack/packages/apps/vpc/values.yaml
Mattia Eleuteri 2c0a9fb2cc
[vpc] Add VPC peering support for multi-tenant environments
Implement bilateral VPC peering using Kube-OVN's native vpcPeerings
mechanism. Each VPC can declare peers by specifying the remote VPC name
and tenant namespace. Peering is only activated by Kube-OVN when both
sides declare each other, ensuring mutual consent.

Key features:
- Deterministic remote VPC ID resolution via sha256 hash
- Auto-allocated link-local peering IPs (169.254.0.0/16) derived from
  sorted pair hash, eliminating manual IP coordination
- Static routes support for fine-grained inter-VPC routing
- ConfigMap enrichment with peer discovery info
- Schema validation enforcing tenant- namespace prefix pattern

Signed-off-by: Mattia Eleuteri <mattia.eleuteri@hidora.io>
Signed-off-by: mattia-eleuteri <mattia@hidora.io>
2026-03-10 12:45:08 +01:00

38 lines
1 KiB
YAML

##
## @section Common parameters
##
## @typedef {struct} Subnet - Subnet of a VPC
## @field {string} name - Subnet name
## @field {string} [cidr] - IP address range
## @param {[]Subnet} subnets - Subnets of a VPC
subnets: []
## Example:
## subnets:
## - name: mysubnet0
## cidr: "172.16.0.0/24"
## - name: mysubnet1
## cidr: "172.16.1.0/24"
## @typedef {struct} Peer - VPC peering target
## @field {string} vpcName - Logical name of the remote VPC (without "virtualprivatecloud-" prefix)
## @field {string} tenantNamespace - Namespace of the remote tenant
## @param {[]Peer} peers - VPC peering connections (bidirectional declaration required)
peers: []
## Example:
## peers:
## - vpcName: "other-vpc"
## tenantNamespace: "tenant-other"
## @typedef {struct} Route - Static route entry
## @field {string} cidr - Destination CIDR
## @field {string} nextHopIP - Next hop IP address
## @param {[]Route} routes - Static routes for the VPC
routes: []
## Example:
## routes:
## - cidr: "172.16.1.0/24"
## nextHopIP: "10.0.0.1"