Skip to content
This repository has been archived by the owner on May 23, 2022. It is now read-only.

MultiNic with vlan and bond #1

Open
chenoi opened this issue Oct 22, 2020 · 1 comment
Open

MultiNic with vlan and bond #1

chenoi opened this issue Oct 22, 2020 · 1 comment

Comments

@chenoi
Copy link

chenoi commented Oct 22, 2020

Hi...thanks for sharing ... I would like to do the same deployment.. may I know is it possible to set multiple nic and 1xbond? For example I have 4 NIC and plan setup as follows:-
nic1-vlan10 -provisioning
nic2-vlan20,vlan30,vlan40 -internal, external, storage
bond0-nic3+nic4-vlan50 -tenant
I plan to use multiple nic template, but not sure to adapt and edit it onto my nic setup. Appreciate for advise. Thank you.

@kjw3
Copy link
Owner

kjw3 commented Oct 25, 2020

For nic1, provisioning should be untagged (as nics don't typically support tagged PXE). So nic1 should be configured as an access port on the switch for vlan10.

Your templates/nic-configs/{controller|compute|etc.}.yaml would be modded to look something like the following:

              - type: interface
                name: nic1
                mtu:
                  get_attr: [MinViableMtu, value]
                use_dhcp: false
                mtu:
                  get_attr: [MinViableMtu, value]
                addresses:
                - ip_netmask:
                    list_join:
                    - /
                    - - get_param: ControlPlaneIp
                      - get_param: ControlPlaneSubnetCidr
                routes:
                  list_concat_unique:
                    - get_param: ControlPlaneStaticRoutes
              - type: ovs_bridge
                name: bridge_name
                dns_servers:
                  get_param: DnsServers
                domain:
                  get_param: DnsSearchDomains
                members:
                - type: interface
                  name: nic2
                  mtu:
                    get_attr: [MinViableMtu, value]
                - type: vlan
                  device: nic2
                  mtu:
                    get_param: StorageMtu
                  vlan_id:
                    get_param: StorageNetworkVlanID
                  addresses:
                  - ip_netmask:
                      get_param: StorageIpSubnet
                  routes:
                    list_concat_unique:
                      - get_param: StorageInterfaceRoutes
                - type: vlan
                  device: nic2
                  mtu:
                    get_param: StorageMgmtMtu
                  vlan_id:
                    get_param: StorageMgmtNetworkVlanID
                  addresses:
                  - ip_netmask:
                      get_param: StorageMgmtIpSubnet
                  routes:
                    list_concat_unique:
                      - get_param: StorageMgmtInterfaceRoutes
                - type: vlan
                  device: nic2
                  mtu:
                    get_param: InternalApiMtu
                  vlan_id:
                    get_param: InternalApiNetworkVlanID
                  addresses:
                  - ip_netmask:
                      get_param: InternalApiIpSubnet
                  routes:
                    list_concat_unique:
                      - get_param: InternalApiInterfaceRoutes
                - type: vlan
                  device: nic2
                  mtu:
                    get_param: ExternalMtu
                  vlan_id:
                    get_param: ExternalNetworkVlanID
                  addresses:
                  - ip_netmask:
                      get_param: ExternalIpSubnet
                  routes:
                    list_concat_unique:
                      - get_param: ExternalInterfaceRoutes
                      - - default: true
                          next_hop:
                            get_param: ExternalInterfaceDefaultRoute
              - type: ovs_bridge
                name: br-tenant
                mtu:
                  get_param: TenantMtu
                dns_servers:
                  get_param: DnsServers
                use_dhcp: false
                members:
                - type: ovs_bond
                  name: bond1
                  ovs_options:
                    get_param: BondInterfaceOvsOptions
                  members:
                  - type: interface
                    name: nic3
                    mtu:
                      get_attr: [MinViableMtu, value]
                    primary: true
                  - type: interface
                    name: nic4
                    mtu:
                      get_attr: [MinViableMtu, value]
                - type: vlan
                  mtu:
                    get_param: TenantMtu
                  vlan_id:
                    get_param: TenantNetworkVlanID
                  addresses:
                  - ip_netmask:
                      get_param: TenantIpSubnet
                  routes:
                    list_concat_unique:
                      - get_param: TenantInterfaceRoutes

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants