openstack-manuals/doc/high-availability-guide/ap-network-controller.txt

140 lines
4.8 KiB
Plaintext

[[ch-network]]
=== Network controller cluster stack
The network controller sits on the management and data network, and needs to be connected to the Internet if a VM needs access to it.
NOTE: Both nodes should have the same hostname since the Networking scheduler will be
aware of one node, for example a virtual router attached to a single L3 node.
==== Highly available neutron L3 agent
The neutron L3 agent provides L3/NAT forwarding to ensure external network access
for VMs on tenant networks. High availability for the L3 agent is achieved by
adopting Pacemaker.
NOTE: Here is the http://docs.openstack.org/trunk/config-reference/content/section_adv_cfg_l3_agent.html[documentation] for installing neutron L3 agent.
===== Add neutron L3 agent resource to Pacemaker
First of all, you need to download the resource agent to your system:
----
cd /usr/lib/ocf/resource.d/openstack
wget https://raw.github.com/madkiss/openstack-resource-agents/master/ocf/neutron-agent-l3
chmod a+rx neutron-l3-agent
----
You may now proceed with adding the Pacemaker configuration for
neutron L3 agent resource. Connect to the Pacemaker cluster with +crm
configure+, and add the following cluster resources:
----
include::includes/pacemaker-network-l3.crm[]
----
This configuration creates
* +p_neutron-l3-agent+, a resource for manage Neutron L3 Agent service
+crm configure+ supports batch input, so you may copy and paste the
above into your live pacemaker configuration, and then make changes as
required.
Once completed, commit your configuration changes by entering +commit+
from the +crm configure+ menu. Pacemaker will then start the neutron L3 agent
service, and its dependent resources, on one of your nodes.
NOTE: This method does not ensure a zero downtime since it has to recreate all
the namespaces and virtual routers on the node.
==== Highly available neutron DHCP agent
Neutron DHCP agent distributes IP addresses to the VMs with dnsmasq (by
default). High availability for the DHCP agent is achieved by adopting
Pacemaker.
NOTE: Here is the http://docs.openstack.org/trunk/config-reference/content/section_adv_cfg_dhcp_agent.html[documentation] for installing neutron DHCP agent.
===== Add neutron DHCP agent resource to Pacemaker
First of all, you need to download the resource agent to your system:
----
cd /usr/lib/ocf/resource.d/openstack
wget https://raw.github.com/madkiss/openstack-resource-agents/master/ocf/neutron-agent-dhcp
chmod a+rx neutron-dhcp-agent
----
You may now proceed with adding the Pacemaker configuration for
neutron DHCP agent resource. Connect to the Pacemaker cluster with +crm
configure+, and add the following cluster resources:
----
include::includes/pacemaker-network-dhcp.crm[]
----
This configuration creates
* +p_neutron-dhcp-agent+, a resource for manage Neutron DHCP Agent
service
+crm configure+ supports batch input, so you may copy and paste the
above into your live pacemaker configuration, and then make changes as
required.
Once completed, commit your configuration changes by entering +commit+
from the +crm configure+ menu. Pacemaker will then start the neutron DHCP
agent service, and its dependent resources, on one of your nodes.
==== Highly available neutron metadata agent
Neutron metadata agent allows Compute API metadata to be reachable by VMs on tenant
networks. High availability for the metadata agent is achieved by adopting
Pacemaker.
NOTE: Here is the http://docs.openstack.org/trunk/config-reference/content/networking-options-metadata.html[documentation] for installing Neutron Metadata Agent.
===== Add neutron metadata agent resource to Pacemaker
First of all, you need to download the resource agent to your system:
----
cd /usr/lib/ocf/resource.d/openstack
wget https://raw.github.com/madkiss/openstack-resource-agents/master/ocf/neutron-metadata-agent
chmod a+rx neutron-metadata-agent
----
You may now proceed with adding the Pacemaker configuration for
neutron metadata agent resource. Connect to the Pacemaker cluster with +crm
configure+, and add the following cluster resources:
----
include::includes/pacemaker-network-metadata.crm[]
----
This configuration creates
* +p_neutron-metadata-agent+, a resource for manage Neutron Metadata Agent
service
+crm configure+ supports batch input, so you may copy and paste the
above into your live pacemaker configuration, and then make changes as
required.
Once completed, commit your configuration changes by entering +commit+
from the +crm configure+ menu. Pacemaker will then start the neutron metadata
agent service, and its dependent resources, on one of your nodes.
==== Manage network resources
You can now add the Pacemaker configuration for
managing all network resources together with a group.
Connect to the Pacemaker cluster with +crm configure+, and add the following
cluster resources:
----
include::includes/pacemaker-network.crm[]
----