Add a gateway node

Add a gateway nodeΒΆ

The gateway nodes are hardware nodes that provide gateways and routers to the OVS-based tenant networks using network virtualization functions. Standard cloud configuration includes three gateway nodes. Though, you can scale the networking thoughput by adding more gateway servers.

This section explains how to increase the number of the gateway nodes in your cloud environment.

To add a gateway node:

  1. Add a physical node using MAAS as described in the MCP Deployment Guide: Provision physical nodes using MAAS.

  2. Define the gateway node in /classes/cluster/<cluster_name>/infra/config.yml. For example:

    parameters:
      _param:
        openstack_gateway_node03_hostname: gtw03
        openstack_gateway_node03_tenant_address: <IP_of_gtw_node_tenant_address>
      reclass:
        storage:
          node:
            openstack_gateway_node03:
              name: ${_param:openstack_gateway_node03_hostname}
              domain: ${_param:cluster_domain}
              classes:
              - cluster.${_param:cluster_name}.openstack.gateway
              params:
                salt_master_host: ${_param:reclass_config_master}
                linux_system_codename: ${_param:linux_system_codename}
                single_address: ${_param:openstack_gateway_node03_address}
                tenant_address: ${_param:openstack_gateway_node03_tenant_address}
    
  3. On the Salt Master node, generate node definitions by applying the reclass.storage state:

    salt '*cfg*' state.sls reclass.storage
    
  4. Verify that the target nodes have connectivity with the Salt Master node:

    salt '*gtw<NUM>*' test.ping
    
  5. Verify that the Salt Minion nodes are synchronized:

    salt '*gtw<NUM>*' saltutil.sync_all
    
  6. On the added node, verify that salt-common and salt-minion have the 2017.7 version.

    apt-cache policy salt-common
    apt-cache policy salt-minion
    

    Note

    If the commands above show a different version, follow the MCP Deployment guide: Install the correct versions of salt-common and salt-minion.

  7. Perform the initial Salt configuration:

    salt '*gtw<NUM>*' state.sls salt.minion
    
  8. Set up the network interfaces and the SSH access:

    salt '*gtw<NUM>*' state.sls linux.system.user,openssh,linux.network,ntp,neutron
    
  9. Apply the highstate on the gateway node:

    salt '*gtw<NUM>*' state.highstate