diff --git a/examples/dt/bgp_dt01/README.md b/examples/dt/bgp_dt01/README.md index 64e985e17..72299c030 100644 --- a/examples/dt/bgp_dt01/README.md +++ b/examples/dt/bgp_dt01/README.md @@ -83,7 +83,7 @@ network). | Octavia | (default) | Must have | | Heat | (default) | Must have | | frr | dataplane | Must have | -| ovn-bgp-agent | dataplane | Must have | +| neutron-ovn | dataplane | Must have | ## Considerations/Constraints diff --git a/examples/dt/bgp_dt01/control-plane/service-values.yaml b/examples/dt/bgp_dt01/control-plane/service-values.yaml index 735927bea..e89439fea 100644 --- a/examples/dt/bgp_dt01/control-plane/service-values.yaml +++ b/examples/dt/bgp_dt01/control-plane/service-values.yaml @@ -34,7 +34,10 @@ data: enabled: true octavia: - enabled: true + # octavia is disabled due to limitation with Native OVN BGP: + # with this feature, only one provider network can be configured, while + # octavia needs its own provider network. + enabled: false amphoraImageContainerImage: quay.io/gthiemonge/octavia-amphora-image apacheContainerImage: registry.redhat.io/ubi9/httpd-24:latest octaviaAPI: @@ -64,35 +67,37 @@ data: nodeSelector: node-role.kubernetes.io/worker: "" + # designate disabled and designate parameters commented out due to OSPRH-26878 neutron: customServiceConfig: | [DEFAULT] + service_plugins = qos,ovn-router,trunk,segments,port_forwarding,log,placement,ovn-bgp vlan_transparent = true debug = true dns_domain = example.org. - external_dns_driver = designate + # external_dns_driver = designate [ovs] igmp_snooping_enable = true - [designate] - url = https://designate-internal.openstack.svc:9001/v2 - auth_type = password - auth_url = {{ .KeystoneInternalURL }} - username = {{ .ServiceUser }} - password = {{ .ServicePassword }} - project_name = service - project_domain_name = Default - user_domain_name = Default - allow_reverse_dns_lookup = True - ipv4_ptr_zone_prefix_size = 24 - ipv6_ptr_zone_prefix_size = 116 - ptr_zone_email = admin@example.org + # [designate] + # url = https://designate-internal.openstack.svc:9001/v2 + # auth_type = password + # auth_url = {{ .KeystoneInternalURL }} + # username = {{ .ServiceUser }} + # password = {{ .ServicePassword }} + # project_name = service + # project_domain_name = Default + # user_domain_name = Default + # allow_reverse_dns_lookup = True + # ipv4_ptr_zone_prefix_size = 24 + # ipv6_ptr_zone_prefix_size = 116 + # ptr_zone_email = admin@example.org designate-redis: - enabled: true + enabled: false replicas: 1 designate: - enabled: true + enabled: false nsRecords: - hostname: ns1.example.org. priority: 1 diff --git a/examples/dt/bgp_dt01/edpm/computes/r0/values.yaml b/examples/dt/bgp_dt01/edpm/computes/r0/values.yaml index bca8b8739..b3add86af 100644 --- a/examples/dt/bgp_dt01/edpm/computes/r0/values.yaml +++ b/examples/dt/bgp_dt01/edpm/computes/r0/values.yaml @@ -24,10 +24,16 @@ data: edpm_ovn_bridge_mappings: - "datacentre:br-ex" - "octavia:br-octavia" - edpm_ovn_bgp_agent_expose_tenant_networks: true edpm_frr_bgp_ipv4_src_network: bgpmainnet edpm_frr_bgp_ipv6_src_network: bgpmainnetv6 edpm_frr_bgp_neighbor_password: f00barZ + edpm_frr_ovn_vrf_learn: ovnvrf10 + edpm_frr_ovn_vrf_advertise: ovnvrf42 + bgp_bridges: + - br-bgp-0 + - br-bgp-1 + edpm_neutron_ovn_agent_bgp_peer_bridges: "{{ bgp_bridges | join(',') }}" + edpm_neutron_ovn_agent_agent_extensions: "metadata,ovn-bgp" timesync_ntp_servers: - hostname: pool.ntp.org # conntrack is necessary for some tobiko tests @@ -65,16 +71,30 @@ data: domain: {{ dns_search_domains }} addresses: - ip_netmask: {{ ctlplane_ip }}/{{ ctlplane_cidr }} - - type: interface - name: nic3 + - type: ovs_bridge + name: {{ bgp_bridges[0] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet0_ip }}/30 - - type: interface - name: nic4 + - ip_netmask: {{ bgpnet0_ip }}/30 + defroute: false + members: + - type: interface + name: nic3 + # force the MAC address of the bridge to this interface + primary: true + - type: ovs_bridge + name: {{ bgp_bridges[1] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet1_ip }}/30 + - ip_netmask: {{ bgpnet1_ip }}/30 + defroute: false + members: + - type: interface + name: nic4 + # force the MAC address of the bridge to this interface + primary: true - type: interface name: lo addresses: @@ -85,7 +105,6 @@ data: edpm_sshd_configure_firewall: true gather_facts: false neutron_physical_bridge_name: br-ex - neutron_public_interface_name: eth1 networks: - defaultRoute: true name: CtlPlane @@ -120,9 +139,6 @@ data: ansible: ansibleHost: 192.168.122.100 ansibleVars: - edpm_ovn_bgp_agent_local_ovn_peer_ips: - - 100.64.0.1 - - 100.65.0.1 edpm_frr_bgp_peers: - 100.64.0.1 - 100.65.0.1 @@ -155,8 +171,7 @@ data: - reboot-os - install-certs - ovn - - neutron-metadata - - ovn-bgp-agent + - neutron-ovn - libvirt - nova nova: diff --git a/examples/dt/bgp_dt01/edpm/computes/r1/values.yaml b/examples/dt/bgp_dt01/edpm/computes/r1/values.yaml index 2851e3a89..63fcf2f46 100644 --- a/examples/dt/bgp_dt01/edpm/computes/r1/values.yaml +++ b/examples/dt/bgp_dt01/edpm/computes/r1/values.yaml @@ -24,10 +24,16 @@ data: edpm_ovn_bridge_mappings: - "datacentre:br-ex" - "octavia:br-octavia" - edpm_ovn_bgp_agent_expose_tenant_networks: true edpm_frr_bgp_ipv4_src_network: bgpmainnet edpm_frr_bgp_ipv6_src_network: bgpmainnetv6 edpm_frr_bgp_neighbor_password: f00barZ + edpm_frr_ovn_vrf_learn: ovnvrf10 + edpm_frr_ovn_vrf_advertise: ovnvrf42 + bgp_bridges: + - br-bgp-0 + - br-bgp-1 + edpm_neutron_ovn_agent_bgp_peer_bridges: "{{ bgp_bridges | join(',') }}" + edpm_neutron_ovn_agent_agent_extensions: "metadata,ovn-bgp" timesync_ntp_servers: - hostname: pool.ntp.org # conntrack is necessary for some tobiko tests @@ -65,16 +71,30 @@ data: domain: {{ dns_search_domains }} addresses: - ip_netmask: {{ ctlplane_ip }}/{{ ctlplane_cidr }} - - type: interface - name: nic3 + - type: ovs_bridge + name: {{ bgp_bridges[0] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet0_ip }}/30 - - type: interface - name: nic4 + - ip_netmask: {{ bgpnet0_ip }}/30 + defroute: false + members: + - type: interface + name: nic3 + # force the MAC address of the bridge to this interface + primary: true + - type: ovs_bridge + name: {{ bgp_bridges[1] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet1_ip }}/30 + - ip_netmask: {{ bgpnet1_ip }}/30 + defroute: false + members: + - type: interface + name: nic4 + # force the MAC address of the bridge to this interface + primary: true - type: interface name: lo addresses: @@ -85,7 +105,6 @@ data: edpm_sshd_configure_firewall: true gather_facts: false neutron_physical_bridge_name: br-ex - neutron_public_interface_name: eth1 networks: - defaultRoute: true name: CtlPlane @@ -120,9 +139,6 @@ data: ansible: ansibleHost: 192.168.123.100 ansibleVars: - edpm_ovn_bgp_agent_local_ovn_peer_ips: - - 100.64.1.1 - - 100.65.1.1 edpm_frr_bgp_peers: - 100.64.1.1 - 100.65.1.1 @@ -155,8 +171,7 @@ data: - reboot-os - install-certs - ovn - - neutron-metadata - - ovn-bgp-agent + - neutron-ovn - libvirt - nova nova: diff --git a/examples/dt/bgp_dt01/edpm/computes/r2/values.yaml b/examples/dt/bgp_dt01/edpm/computes/r2/values.yaml index 45b9d8bea..b5fe91b6a 100644 --- a/examples/dt/bgp_dt01/edpm/computes/r2/values.yaml +++ b/examples/dt/bgp_dt01/edpm/computes/r2/values.yaml @@ -24,10 +24,16 @@ data: edpm_ovn_bridge_mappings: - "datacentre:br-ex" - "octavia:br-octavia" - edpm_ovn_bgp_agent_expose_tenant_networks: true edpm_frr_bgp_ipv4_src_network: bgpmainnet edpm_frr_bgp_ipv6_src_network: bgpmainnetv6 edpm_frr_bgp_neighbor_password: f00barZ + edpm_frr_ovn_vrf_learn: ovnvrf10 + edpm_frr_ovn_vrf_advertise: ovnvrf42 + bgp_bridges: + - br-bgp-0 + - br-bgp-1 + edpm_neutron_ovn_agent_bgp_peer_bridges: "{{ bgp_bridges | join(',') }}" + edpm_neutron_ovn_agent_agent_extensions: "metadata,ovn-bgp" timesync_ntp_servers: - hostname: pool.ntp.org # conntrack is necessary for some tobiko tests @@ -65,16 +71,30 @@ data: domain: {{ dns_search_domains }} addresses: - ip_netmask: {{ ctlplane_ip }}/{{ ctlplane_cidr }} - - type: interface - name: nic3 + - type: ovs_bridge + name: {{ bgp_bridges[0] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet0_ip }}/30 - - type: interface - name: nic4 + - ip_netmask: {{ bgpnet0_ip }}/30 + defroute: false + members: + - type: interface + name: nic3 + # force the MAC address of the bridge to this interface + primary: true + - type: ovs_bridge + name: {{ bgp_bridges[1] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet1_ip }}/30 + - ip_netmask: {{ bgpnet1_ip }}/30 + defroute: false + members: + - type: interface + name: nic4 + # force the MAC address of the bridge to this interface + primary: true - type: interface name: lo addresses: @@ -85,7 +105,6 @@ data: edpm_sshd_configure_firewall: true gather_facts: false neutron_physical_bridge_name: br-ex - neutron_public_interface_name: eth1 networks: - defaultRoute: true name: CtlPlane @@ -120,9 +139,6 @@ data: ansible: ansibleHost: 192.168.124.100 ansibleVars: - edpm_ovn_bgp_agent_local_ovn_peer_ips: - - 100.64.2.1 - - 100.65.2.1 edpm_frr_bgp_peers: - 100.64.2.1 - 100.65.2.1 @@ -155,8 +171,7 @@ data: - reboot-os - install-certs - ovn - - neutron-metadata - - ovn-bgp-agent + - neutron-ovn - libvirt - nova nova: diff --git a/examples/dt/bgp_dt01/edpm/networkers/r0/values.yaml b/examples/dt/bgp_dt01/edpm/networkers/r0/values.yaml index 8e2d8a739..f327fe6fb 100644 --- a/examples/dt/bgp_dt01/edpm/networkers/r0/values.yaml +++ b/examples/dt/bgp_dt01/edpm/networkers/r0/values.yaml @@ -24,10 +24,16 @@ data: edpm_ovn_bridge_mappings: - "datacentre:br-ex" - "octavia:br-octavia" - edpm_ovn_bgp_agent_expose_tenant_networks: true edpm_frr_bgp_ipv4_src_network: bgpmainnet edpm_frr_bgp_ipv6_src_network: bgpmainnetv6 edpm_frr_bgp_neighbor_password: f00barZ + edpm_frr_ovn_vrf_learn: ovnvrf10 + edpm_frr_ovn_vrf_advertise: ovnvrf42 + bgp_bridges: + - br-bgp-0 + - br-bgp-1 + edpm_neutron_ovn_agent_bgp_peer_bridges: "{{ bgp_bridges | join(',') }}" + edpm_neutron_ovn_agent_agent_extensions: "metadata,ovn-bgp" timesync_ntp_servers: - hostname: pool.ntp.org # conntrack is necessary for some tobiko tests @@ -65,16 +71,30 @@ data: domain: {{ dns_search_domains }} addresses: - ip_netmask: {{ ctlplane_ip }}/{{ ctlplane_cidr }} - - type: interface - name: nic3 + - type: ovs_bridge + name: {{ bgp_bridges[0] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet0_ip }}/30 - - type: interface - name: nic4 + - ip_netmask: {{ bgpnet0_ip }}/30 + defroute: false + members: + - type: interface + name: nic3 + # force the MAC address of the bridge to this interface + primary: true + - type: ovs_bridge + name: {{ bgp_bridges[1] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet1_ip }}/30 + - ip_netmask: {{ bgpnet1_ip }}/30 + defroute: false + members: + - type: interface + name: nic4 + # force the MAC address of the bridge to this interface + primary: true - type: interface name: lo addresses: @@ -86,7 +106,6 @@ data: edpm_sshd_configure_firewall: true gather_facts: false neutron_physical_bridge_name: br-ex - neutron_public_interface_name: eth1 networks: - defaultRoute: true name: CtlPlane @@ -121,9 +140,6 @@ data: ansible: ansibleHost: 192.168.122.200 ansibleVars: - edpm_ovn_bgp_agent_local_ovn_peer_ips: - - 100.64.0.5 - - 100.65.0.5 edpm_frr_bgp_peers: - 100.64.0.5 - 100.65.0.5 @@ -157,8 +173,7 @@ data: - reboot-os - install-certs - ovn - - neutron-metadata - - ovn-bgp-agent + - neutron-ovn nova: migration: ssh_keys: diff --git a/examples/dt/bgp_dt01/edpm/networkers/r1/values.yaml b/examples/dt/bgp_dt01/edpm/networkers/r1/values.yaml index 76ef19aa9..7ca5cca09 100644 --- a/examples/dt/bgp_dt01/edpm/networkers/r1/values.yaml +++ b/examples/dt/bgp_dt01/edpm/networkers/r1/values.yaml @@ -24,10 +24,16 @@ data: edpm_ovn_bridge_mappings: - "datacentre:br-ex" - "octavia:br-octavia" - edpm_ovn_bgp_agent_expose_tenant_networks: true edpm_frr_bgp_ipv4_src_network: bgpmainnet edpm_frr_bgp_ipv6_src_network: bgpmainnetv6 edpm_frr_bgp_neighbor_password: f00barZ + edpm_frr_ovn_vrf_learn: ovnvrf10 + edpm_frr_ovn_vrf_advertise: ovnvrf42 + bgp_bridges: + - br-bgp-0 + - br-bgp-1 + edpm_neutron_ovn_agent_bgp_peer_bridges: "{{ bgp_bridges | join(',') }}" + edpm_neutron_ovn_agent_agent_extensions: "metadata,ovn-bgp" timesync_ntp_servers: - hostname: pool.ntp.org # conntrack is necessary for some tobiko tests @@ -65,16 +71,30 @@ data: domain: {{ dns_search_domains }} addresses: - ip_netmask: {{ ctlplane_ip }}/{{ ctlplane_cidr }} - - type: interface - name: nic3 + - type: ovs_bridge + name: {{ bgp_bridges[0] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet0_ip }}/30 - - type: interface - name: nic4 + - ip_netmask: {{ bgpnet0_ip }}/30 + defroute: false + members: + - type: interface + name: nic3 + # force the MAC address of the bridge to this interface + primary: true + - type: ovs_bridge + name: {{ bgp_bridges[1] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet1_ip }}/30 + - ip_netmask: {{ bgpnet1_ip }}/30 + defroute: false + members: + - type: interface + name: nic4 + # force the MAC address of the bridge to this interface + primary: true - type: interface name: lo addresses: @@ -86,7 +106,6 @@ data: edpm_sshd_configure_firewall: true gather_facts: false neutron_physical_bridge_name: br-ex - neutron_public_interface_name: eth1 networks: - defaultRoute: true name: CtlPlane @@ -121,9 +140,6 @@ data: ansible: ansibleHost: 192.168.123.200 ansibleVars: - edpm_ovn_bgp_agent_local_ovn_peer_ips: - - 100.64.1.5 - - 100.65.1.5 edpm_frr_bgp_peers: - 100.64.1.5 - 100.65.1.5 @@ -157,8 +173,7 @@ data: - reboot-os - install-certs - ovn - - neutron-metadata - - ovn-bgp-agent + - neutron-ovn nova: migration: ssh_keys: diff --git a/examples/dt/bgp_dt01/edpm/networkers/r2/values.yaml b/examples/dt/bgp_dt01/edpm/networkers/r2/values.yaml index de4e5dc13..4350aba65 100644 --- a/examples/dt/bgp_dt01/edpm/networkers/r2/values.yaml +++ b/examples/dt/bgp_dt01/edpm/networkers/r2/values.yaml @@ -24,10 +24,16 @@ data: edpm_ovn_bridge_mappings: - "datacentre:br-ex" - "octavia:br-octavia" - edpm_ovn_bgp_agent_expose_tenant_networks: true edpm_frr_bgp_ipv4_src_network: bgpmainnet edpm_frr_bgp_ipv6_src_network: bgpmainnetv6 edpm_frr_bgp_neighbor_password: f00barZ + edpm_frr_ovn_vrf_learn: ovnvrf10 + edpm_frr_ovn_vrf_advertise: ovnvrf42 + bgp_bridges: + - br-bgp-0 + - br-bgp-1 + edpm_neutron_ovn_agent_bgp_peer_bridges: "{{ bgp_bridges | join(',') }}" + edpm_neutron_ovn_agent_agent_extensions: "metadata,ovn-bgp" timesync_ntp_servers: - hostname: pool.ntp.org # conntrack is necessary for some tobiko tests @@ -65,16 +71,30 @@ data: domain: {{ dns_search_domains }} addresses: - ip_netmask: {{ ctlplane_ip }}/{{ ctlplane_cidr }} - - type: interface - name: nic3 + - type: ovs_bridge + name: {{ bgp_bridges[0] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet0_ip }}/30 - - type: interface - name: nic4 + - ip_netmask: {{ bgpnet0_ip }}/30 + defroute: false + members: + - type: interface + name: nic3 + # force the MAC address of the bridge to this interface + primary: true + - type: ovs_bridge + name: {{ bgp_bridges[1] }} use_dhcp: false + use_dhcpv6: true # needed to enable IPv6 on bridges addresses: - - ip_netmask: {{ bgpnet1_ip }}/30 + - ip_netmask: {{ bgpnet1_ip }}/30 + defroute: false + members: + - type: interface + name: nic4 + # force the MAC address of the bridge to this interface + primary: true - type: interface name: lo addresses: @@ -86,7 +106,6 @@ data: edpm_sshd_configure_firewall: true gather_facts: false neutron_physical_bridge_name: br-ex - neutron_public_interface_name: eth1 networks: - defaultRoute: true name: CtlPlane @@ -121,9 +140,6 @@ data: ansible: ansibleHost: 192.168.124.200 ansibleVars: - edpm_ovn_bgp_agent_local_ovn_peer_ips: - - 100.64.2.5 - - 100.65.2.5 edpm_frr_bgp_peers: - 100.64.2.5 - 100.65.2.5 @@ -157,8 +173,7 @@ data: - reboot-os - install-certs - ovn - - neutron-metadata - - ovn-bgp-agent + - neutron-ovn nova: migration: ssh_keys: