03cff88d61
I updated the networking content as follows: 1) Reordered example architectures to place the 3-node neutron architecture before the 2-node nova-network architecture which agrees with the order presented in other portions of the installation guide. 2) Changed network service naming to agree with conventions. 3) Permanently unlinked the Open vSwitch (OVS) plug-in sections from the Networking chapter. However, I will refrain from deleting the associated files in case we need to restore them. 4) Temporarily unlinked the Open vSwitch (OVS) portion of the Neutron concepts section until we can update it to reflect the Modular Layer 2 (ML2) plug-in. 5) Addressed other minor issues. Change-Id: I7c285fcabaab65237477e8241f406dac28190344 Closes-Bug: #1309636
155 lines
7.7 KiB
XML
155 lines
7.7 KiB
XML
<chapter xmlns="http://docbook.org/ns/docbook"
|
|
xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"
|
|
xml:id="ch_overview">
|
|
<?dbhtml stop-chunking?>
|
|
<title>Architecture</title>
|
|
<section xml:id="architecture_overview">
|
|
<title>Overview</title>
|
|
<para>The <glossterm>OpenStack</glossterm> project is an open source cloud
|
|
computing platform that supports all types of cloud environments. The
|
|
project aims for simple implementation, massive scalability, and a rich
|
|
set of features. Cloud computing experts from around the world
|
|
contribute to the project.</para>
|
|
<para>OpenStack provides an Infrastructure-as-a-Service
|
|
(<glossterm>IaaS</glossterm>) solution through a variety of complemental
|
|
services. Each service offers an application programming interface
|
|
(<glossterm>API</glossterm>) that facilitates this integration. The
|
|
following table provides a list of OpenStack services:</para>
|
|
<xi:include href="../common/ch_getstart.xml"
|
|
xpointer="element(table1)"/>
|
|
<para>This guide describes how to deploy these services in a functional
|
|
test environment and, by example, teaches you how to build a production
|
|
environment.</para>
|
|
</section>
|
|
<section xml:id="architecture_conceptual-architecture">
|
|
<title>Conceptual architecture</title>
|
|
<para>Launching a virtual machine or instance involves many interactions
|
|
among several services. The following diagram provides the conceptual
|
|
architecture of a typical OpenStack environment.</para>
|
|
<figure xml:id="conceptual-architecture">
|
|
<title>Conceptual architecture</title>
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata contentwidth="6in"
|
|
fileref="../common/figures/openstack_havana_conceptual_arch.png"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
</figure>
|
|
</section>
|
|
<section xml:id="architecture_example-architectures">
|
|
<title>Example architectures</title>
|
|
<para>OpenStack is highly configurable to meet different needs with various
|
|
compute, networking, and storage options. This guide enables you to
|
|
choose your own OpenStack adventure using a combination of basic and
|
|
optional services. This guide uses the following example
|
|
architectures:</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Three-node architecture with OpenStack Networking (neutron). See <xref linkend="example-architecture-with-neutron-networking"/>.</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>The basic controller node runs the Identity service, Image
|
|
Service, management portions of Compute and Networking,
|
|
Networking plug-in, and the dashboard. It also includes
|
|
supporting services such as a database,
|
|
<glossterm>message broker</glossterm>, and
|
|
<glossterm>Network Time Protocol (NTP)</glossterm>.
|
|
</para>
|
|
<para>Optionally, the controller node also runs portions of
|
|
Block Storage, Object Storage, Database Service, Orchestration,
|
|
and Telemetry. These components provide additional features for
|
|
your environment.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>The network node runs the Networking plug-in, layer 2 agent,
|
|
and several layer 3 agents that provision and operate tenant
|
|
networks. Layer 2 services include provisioning of virtual
|
|
networks and tunnels. Layer 3 services include routing,
|
|
<glossterm baseform="Network Address Translation (NAT)">NAT</glossterm>
|
|
, and <glossterm>DHCP</glossterm>. This node also handles
|
|
external (internet) connectivity for tenant virtual machines
|
|
or instances.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>The compute node runs the hypervisor portion of Compute,
|
|
which operates tenant virtual machines or instances. By default
|
|
Compute uses KVM as the hypervisor. The compute node also runs
|
|
the Networking plug-in and layer 2 agent which operate tenant
|
|
networks and implement security groups. You can run more than
|
|
one compute node.</para>
|
|
<para>Optionally, the compute node also runs the Telemetry
|
|
agent. This component provides additional features for
|
|
your environment.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<note>
|
|
<para>When you implement this architecture, skip
|
|
<xref linkend="section_nova-networking" /> in
|
|
<xref linkend="ch_networking" />. To use optional services, you
|
|
might need to install additional nodes, as described in
|
|
subsequent chapters.</para>
|
|
</note>
|
|
<figure xml:id="example-architecture-with-neutron-networking">
|
|
<title>Three-node architecture with OpenStack Networking (neutron)</title>
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata contentwidth="6in"
|
|
fileref="figures/installguide_arch-neutron.png"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
</figure>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Two-node architecture with legacy networking (nova-network). See
|
|
<xref linkend="example-architecture-with-legacy-networking"/>.</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>The basic
|
|
<glossterm baseform="cloud controller node">controller node</glossterm>
|
|
runs the Identity service, Image Service, management portion of
|
|
Compute, and the dashboard necessary to launch a simple instance.
|
|
It also includes supporting services such as a database, message
|
|
broker, and NTP.</para>
|
|
<para>Optionally, the controller node also runs portions of
|
|
Block Storage, Object Storage, Database Service, Orchestration,
|
|
and Telemetry. These components provide additional features for
|
|
your environment.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>The basic <glossterm>compute node</glossterm> runs the
|
|
<glossterm>hypervisor</glossterm> portion of Compute,
|
|
which operates <glossterm>tenant</glossterm>
|
|
<glossterm baseform="virtual machine (VM)">virtual machines</glossterm>
|
|
or instances. By default, Compute uses
|
|
<glossterm baseform="kernel-based VM (KVM)">KVM</glossterm>
|
|
as the <glossterm>hypervisor</glossterm>. Compute also
|
|
provisions and operates tenant networks and implements
|
|
<glossterm baseform="security group">security groups</glossterm>.
|
|
You can run more than one compute node.</para>
|
|
<para>Optionally, the compute node also runs the Telemetry
|
|
agent. This component provides additional features for
|
|
your environment.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<note>
|
|
<para>When you implement this architecture, skip
|
|
<xref linkend="section_neutron-networking" /> in
|
|
<xref linkend="ch_networking" />. To use optional services, you
|
|
might need to install additional nodes, as described in
|
|
subsequent chapters.</para>
|
|
</note>
|
|
<figure xml:id="example-architecture-with-legacy-networking">
|
|
<title>Two-node architecture with legacy networking (nova-network)</title>
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata contentwidth="6in"
|
|
fileref="figures/installguide_arch-nova.png"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
</figure>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</section>
|
|
</chapter>
|