I’m studying for the Mirantis OpenStack Cloud Certification exam. One of the ways I’m learning is to read through the official training material, making up my own questions along the way.
Today I’m starting with OpenStack Networking, also known as Neutron, and in a previous life, known as Quantum:
1. What 3 components make up the OpenStack Networking API?
- Network: an isolated layer 2 segment, comparable to VLAN in the physical networking world
- Subnet: A block of v4 or v6 IP addresses and associated configuration state
- Port: A connection point for attaching 1 device, such as the NIC of a virtual server, to a virtual network. Port can also describe the MAC and IP addresses to be used on that port.
- Yes. This allows customers to build multi-tiered web applications and also allows apps to be migrated to the cloud without changing [private] IP addresses.
- Big Switch Floodlight REST Proxy
- Linux Bridge
- NEC OpenFlow
- Open vSwitch
- VMware NSX
- The main process of an OpenStack Networking server is quantum-server, which is a Python daemon that exposes the OpenStack Networking API and passes user requests to the configured OpenStack Networking plugin for further processing. Usually, the plugin requires access to a database for persistent storage.
- plugin agent (quantum-*-agent): Runs on each hypervisor, performs local vswitch configuration. Note that some plugins don’t require an agent.
- dhcp agent (quantum-dhcp-agent): Provides DHCP service to tenant networks.
- l3 agent (quantum-l3-agent): Provides layer 3/network address translation forwarding. This gives external network access for VMs on tenant networks.
- Through RPC (ex. rabbitmq or qpid)
- Through the standard OpenStack Networking API
- OpenStack Identity Project (Keystone)
- OpenStack Compute interacts with OpenStack Networking through calls to its standard API. When creating a VM (virtual machine), nova-compute talks to the OpenStack Networking API to plug each virtual NIC on the VM into a particular network.
- Management network: For internal comms between OpenStack components. IPs on this network should only be reachable within the data center.
- Data network: For comms between VMs (virtual machines).
- External network: Provides VMs with Internet access.
- API network: Provides OpenStack APIs to tenants. Should be reachable by anyone on the Internet. May be on the same network as the external network.
- VLAN, GRE, and flat
- ip netns [list]
- ip netns exec
- Each instance needs a route for the metadata network that points to the dnsmasq IP address on the same namespaced interface. OpenStack Networking only njects a route if you don’t specify a gateway IP in the subnet.
- neutron ext-list -c alias -c name
- neutron net-create net1
- neutron net-list
- neutron net-create net2 –provider:network-type local
- neutron subnet-create net1 192.168.2.0/24 –name subnet1
- neutron router-create router1
- neutron router-gateway-set ROUTER NETWORK
22. How do you link the router you just created to the subnet you just created?
- neutron router-interface-add ROUTER SUBNET
23. How do you create a port with a specified IP?
- neutron port-create net1 –fixed-ip ip_address=192.168.2.40
- The system will allocate one IP if you haven’t specified one.
- neutron port-list –fixed-ips ip_address=192.168.2.2 ip_address=192.168.2.40