apiVersion: k8s.cni.cncf.io/v1 kind: NetworkAttachmentDefinition metadata: labels: osp/net: ctlplane osp/net-attach-def-type: standard name: ctlplane namespace: openstack2 spec: config: | { "cniVersion": "0.3.1", "name": "ctlplane", "type": "macvlan", "master": "enp8s0", "ipam": { "type": "whereabouts", "range": "192.168.133.0/24", "range_start": "192.168.133.30", "range_end": "192.168.133.70" } } --- apiVersion: k8s.cni.cncf.io/v1 kind: NetworkAttachmentDefinition metadata: labels: osp/net: datacentre osp/net-attach-def-type: standard name: datacentre namespace: openstack2 spec: config: | { "cniVersion": "0.3.1", "name": "datacentre", "type": "host-device", "device": "enp10s0", "ipam": {} } --- apiVersion: k8s.cni.cncf.io/v1 kind: NetworkAttachmentDefinition metadata: labels: osp/net: internalapi osp/net-attach-def-type: standard name: internalapi namespace: openstack2 spec: config: | { "cniVersion": "0.3.1", "name": "internalapi", "type": "macvlan", "master": "internalapi2", "ipam": { "type": "whereabouts", "range": "172.17.10.0/24", "range_start": "172.17.10.30", "range_end": "172.17.10.70" } } --- apiVersion: k8s.cni.cncf.io/v1 kind: NetworkAttachmentDefinition metadata: labels: osp/net: storage osp/net-attach-def-type: standard name: storage namespace: openstack2 spec: config: | { "cniVersion": "0.3.1", "name": "storage", "type": "macvlan", "master": "storage2", "ipam": { "type": "whereabouts", "range": "172.18.10.0/24", "range_start": "172.18.10.30", "range_end": "172.18.10.70" } } --- apiVersion: k8s.cni.cncf.io/v1 kind: NetworkAttachmentDefinition metadata: labels: osp/net: tenant osp/net-attach-def-type: standard name: tenant namespace: openstack2 spec: config: | { "cniVersion": "0.3.1", "name": "tenant", "type": "macvlan", "master": "tenant2", "ipam": { "type": "whereabouts", "range": "172.19.10.0/24", "range_start": "172.19.10.30", "range_end": "172.19.10.70" } } --- apiVersion: metallb.io/v1beta1 kind: IPAddressPool metadata: labels: osp/lb-addresses-type: standard name: ctlplane2 namespace: metallb-system spec: addresses: - 192.168.133.80-192.168.133.90 --- apiVersion: metallb.io/v1beta1 kind: IPAddressPool metadata: labels: osp/lb-addresses-type: standard name: internalapi2 namespace: metallb-system spec: addresses: - 172.17.10.80-172.17.10.90 --- apiVersion: metallb.io/v1beta1 kind: IPAddressPool metadata: labels: osp/lb-addresses-type: standard name: storage2 namespace: metallb-system spec: addresses: - 172.18.10.80-172.18.10.90 --- apiVersion: metallb.io/v1beta1 kind: IPAddressPool metadata: labels: osp/lb-addresses-type: standard name: tenant2 namespace: metallb-system spec: addresses: - 172.19.10.80-172.19.10.90 --- apiVersion: metallb.io/v1beta1 kind: L2Advertisement metadata: name: ctlplane2 namespace: metallb-system spec: interfaces: - enp8s0 ipAddressPools: - ctlplane2 --- apiVersion: metallb.io/v1beta1 kind: L2Advertisement metadata: name: internalapi2 namespace: metallb-system spec: interfaces: - internalapi2 ipAddressPools: - internalapi2 --- apiVersion: metallb.io/v1beta1 kind: L2Advertisement metadata: name: storage2 namespace: metallb-system spec: interfaces: - storage2 ipAddressPools: - storage2 --- apiVersion: metallb.io/v1beta1 kind: L2Advertisement metadata: name: tenant2 namespace: metallb-system spec: interfaces: - tenant2 ipAddressPools: - tenant2 --- apiVersion: network.openstack.org/v1beta1 kind: NetConfig metadata: name: netconfig namespace: openstack2 spec: networks: - dnsDomain: ctlplane2.example.com mtu: 1500 name: ctlplane subnets: - allocationRanges: - end: 192.168.133.120 start: 192.168.133.100 - end: 192.168.133.200 start: 192.168.133.150 cidr: 192.168.133.0/24 gateway: 192.168.133.1 name: subnet1 - dnsDomain: internalapi2.example.com mtu: 1500 name: internalapi subnets: - allocationRanges: - end: 172.17.10.250 start: 172.17.10.100 cidr: 172.17.10.0/24 name: subnet1 vlan: 30 - dnsDomain: external2.example.com mtu: 1500 name: external subnets: - allocationRanges: - end: 10.10.0.250 start: 10.10.0.100 cidr: 10.10.0.0/24 gateway: 10.10.0.1 name: subnet1 - dnsDomain: storage2.example.com mtu: 1500 name: storage subnets: - allocationRanges: - end: 172.18.10.250 start: 172.18.10.100 cidr: 172.18.10.0/24 name: subnet1 vlan: 31 - dnsDomain: tenant2.example.com mtu: 1500 name: tenant subnets: - allocationRanges: - end: 172.19.10.250 start: 172.19.10.100 cidr: 172.19.10.0/24 name: subnet1 vlan: 32