Merge "Removal of passive voice from chap 1, arch guide"
This commit is contained in:
commit
6b4aa47f9a
@ -10,48 +10,71 @@
|
|||||||
xml:id="technical-considerations-general-purpose">
|
xml:id="technical-considerations-general-purpose">
|
||||||
<?dbhtml stop-chunking?>
|
<?dbhtml stop-chunking?>
|
||||||
<title>Technical considerations</title>
|
<title>Technical considerations</title>
|
||||||
<para>When designing a general purpose cloud, there is an implied
|
<para>General purpose clouds are often expected to
|
||||||
requirement to design for all of the base services generally
|
include these base services:</para>
|
||||||
associated with providing Infrastructure-as-a-Service:
|
<itemizedlist>
|
||||||
compute, network and storage. Each of these services have
|
<listitem>
|
||||||
different resource requirements. As a result, it is important
|
<para>
|
||||||
to make design decisions relating directly to the service
|
Compute
|
||||||
currently under design, while providing a balanced
|
</para>
|
||||||
infrastructure that provides for all services.</para>
|
</listitem>
|
||||||
<para>When designing an OpenStack cloud as a general purpose
|
<listitem>
|
||||||
cloud, the hardware selection process can be lengthy and
|
<para>
|
||||||
involved due to the sheer mass of services which need to be
|
Network
|
||||||
designed and the unique characteristics and requirements of
|
</para>
|
||||||
each service within the cloud. Hardware designs need to be
|
</listitem>
|
||||||
generated for each type of resource pool; specifically,
|
<listitem>
|
||||||
compute, network, and storage. In addition to the hardware
|
<para>
|
||||||
designs, which affect the resource nodes themselves, there are
|
Storage
|
||||||
also a number of additional hardware decisions to be made
|
</para>
|
||||||
related to network architecture and facilities planning. These
|
</listitem>
|
||||||
factors play heavily into the overall architecture of an
|
</itemizedlist>
|
||||||
OpenStack cloud.</para>
|
<para>Each of these services has different resource requirements.
|
||||||
|
As a result, you must make design decisions relating directly
|
||||||
|
to the service, as well as provide a balanced infrastructure for all services.</para>
|
||||||
|
<para>Consider the unique aspects of each service that requires design since
|
||||||
|
individual characteristics and service mass can impact the hardware selection
|
||||||
|
process. Hardware designs are generated for each type of the
|
||||||
|
following resource pools:</para>
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Compute
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Network
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Storage
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
<para>Hardware decisions are also made in relation to network architecture
|
||||||
|
and facilities planning. These factors play heavily into
|
||||||
|
the overall architecture of an OpenStack cloud.</para>
|
||||||
|
|
||||||
<section xml:id="designing-compute-resources-tech-considerations">
|
<section xml:id="designing-compute-resources-tech-considerations">
|
||||||
<title>Designing compute resources</title>
|
<title>Designing compute resources</title>
|
||||||
<para>We recommend you design compute resources as pools of
|
<para>When designing compute resource pools, a number of factors
|
||||||
resources which will be addressed on-demand. When designing
|
can impact your design decisions.
|
||||||
compute resource pools, a number of factors impact your design
|
For example, decisions related to processors, memory, and
|
||||||
decisions. For example, decisions related to processors,
|
storage within each hypervisor are just one element of designing
|
||||||
memory, and storage within each hypervisor are just one
|
compute resources. In addition, decide whether to provide compute
|
||||||
element of designing compute resources. In addition, it is
|
resources in a single pool or in multiple pools.
|
||||||
necessary to decide whether compute resources will be provided
|
We recommend the compute design allocates multiple pools of resources to
|
||||||
in a single pool or in multiple pools.</para>
|
be addressed on-demand.</para>
|
||||||
<para>To design for the best use of available resources by
|
<para>A compute design that allocates multiple pools of resources makes best
|
||||||
applications running in the cloud, we recommend you design
|
use of application resources running in the cloud.
|
||||||
more than one compute resource pool. Each independent resource
|
Each independent resource pool should be designed to provide service for specific
|
||||||
pool should be designed to provide service for specific
|
flavors of instances or groupings of flavors.
|
||||||
flavors of instances or groupings of flavors. For the purpose
|
Designing multiple resource pools helps to ensure that, as instances are
|
||||||
of this book, "instance" refers to a virtual machine and the
|
|
||||||
operating system running on the virtual machine. Designing
|
|
||||||
multiple resource pools helps to ensure that, as instances are
|
|
||||||
scheduled onto compute hypervisors, each independent node's
|
scheduled onto compute hypervisors, each independent node's
|
||||||
resources will be allocated in a way that makes the most
|
resources will be allocated to make the most efficient use of available
|
||||||
efficient use of available hardware. This is commonly referred
|
hardware. This is commonly referred to as bin packing.</para>
|
||||||
to as bin packing.</para>
|
|
||||||
<para>Using a consistent hardware design among the nodes that are
|
<para>Using a consistent hardware design among the nodes that are
|
||||||
placed within a resource pool also helps support bin packing.
|
placed within a resource pool also helps support bin packing.
|
||||||
Hardware nodes selected for being a part of a compute resource
|
Hardware nodes selected for being a part of a compute resource
|
||||||
@ -59,15 +82,14 @@
|
|||||||
layout. By choosing a common hardware design, it becomes
|
layout. By choosing a common hardware design, it becomes
|
||||||
easier to deploy, support and maintain those nodes throughout
|
easier to deploy, support and maintain those nodes throughout
|
||||||
their life cycle in the cloud.</para>
|
their life cycle in the cloud.</para>
|
||||||
<para>OpenStack provides the ability to configure overcommit
|
<para>An <firstterm>overcommit ratio</firstterm> is the ratio of available
|
||||||
ratio—the ratio of virtual resources available for allocation
|
virtual resources, compared to the available physical resources.
|
||||||
to physical resources present—for both CPU and memory. The
|
OpenStack is able to configure the overcommit ratio for CPU and memory.
|
||||||
default CPU overcommit ratio is 16:1 and the default memory
|
The default CPU overcommit ratio is 16:1 and the default memory
|
||||||
overcommit ratio is 1.5:1. Determine the tuning of the
|
overcommit ratio is 1.5:1. Determining the tuning of the overcommit
|
||||||
overcommit ratios for both of these options during the design
|
ratios for both of these options during the design phase is important
|
||||||
phase, as this has a direct impact on the hardware layout of
|
as it has a direct impact on the hardware layout of your compute nodes.</para>
|
||||||
your compute nodes.</para>
|
<para>For example, consider a m1.small instance uses 1
|
||||||
<para>As an example, consider that a m1.small instance uses 1
|
|
||||||
vCPU, 20 GB of ephemeral storage and 2,048 MB of RAM. When
|
vCPU, 20 GB of ephemeral storage and 2,048 MB of RAM. When
|
||||||
designing a hardware node as a compute resource pool to
|
designing a hardware node as a compute resource pool to
|
||||||
service instances, take into consideration the number of
|
service instances, take into consideration the number of
|
||||||
@ -83,77 +105,97 @@
|
|||||||
required to service operating system and service needs.</para>
|
required to service operating system and service needs.</para>
|
||||||
<para>Processor selection is an extremely important consideration
|
<para>Processor selection is an extremely important consideration
|
||||||
in hardware design, especially when comparing the features and
|
in hardware design, especially when comparing the features and
|
||||||
performance characteristics of different processors. Some
|
performance characteristics of different processors. Processors
|
||||||
newly released processors include features specific to
|
can include features specific to virtualized compute hosts including
|
||||||
virtualized compute hosts including hardware assisted
|
hardware assisted virtualization and technology related to memory paging (also
|
||||||
virtualization and technology related to memory paging (also
|
known as EPT shadowing). These types of features can have a significant impact on the
|
||||||
known as EPT shadowing). These features have a tremendous
|
performance of your virtual machine running in the cloud.</para>
|
||||||
positive impact on the performance of virtual machines running
|
<para>It is also important to consider the compute requirements of
|
||||||
in the cloud.</para>
|
|
||||||
<para>In addition to the impact on actual compute services, it is
|
|
||||||
also important to consider the compute requirements of
|
|
||||||
resource nodes within the cloud. Resource nodes refer to
|
resource nodes within the cloud. Resource nodes refer to
|
||||||
non-hypervisor nodes providing controller, object storage,
|
non-hypervisor nodes providing the following in the cloud:</para>
|
||||||
block storage, or networking services in the cloud. The number
|
<itemizedlist>
|
||||||
of processor cores and threads has a direct correlation to the
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Controller
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Object storage
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Block storage
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Networking services
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
<para>The number of processor cores and threads has a direct correlation to the
|
||||||
number of worker threads which can be run on a resource node.
|
number of worker threads which can be run on a resource node.
|
||||||
It is important to ensure sufficient compute capacity and
|
As a result, you must make design decisions relating directly to
|
||||||
memory is planned on resource nodes.</para>
|
the service, as well as provide a balanced infrastructure for all services.</para>
|
||||||
<para>Workload profiles are unpredictable in a general purpose
|
<para>Workload profiles are unpredictable in a general purpose
|
||||||
cloud, so it may be difficult to design for every specific use
|
cloud. Additional compute resource pools can be added to the cloud
|
||||||
case in mind. Additional compute resource pools can be added
|
later, reducing the stress of unpredictability. In some cases, the demand on certain
|
||||||
to the cloud at a later time, so this unpredictability should
|
instance types or flavors may not justify individual
|
||||||
not be a problem. In some cases, the demand on certain
|
hardware design. In either of these cases, initiate the design by
|
||||||
instance types or flavors may not justify an individual
|
allocating hardware designs that are capable of servicing the most
|
||||||
hardware design. In either of these cases, start by providing
|
common instances requests. If you are looking to add additional
|
||||||
hardware designs which will be capable of servicing the most
|
hardware designs to the overall architecture, this can be done at
|
||||||
common instance requests first, looking to add additional
|
a later time.</para>
|
||||||
hardware designs to the overall architecture in the form of
|
</section>
|
||||||
new hardware node designs and resource pools as they become
|
|
||||||
justified at a later time.</para></section>
|
|
||||||
<section xml:id="designing-network-resources-tech-considerations">
|
<section xml:id="designing-network-resources-tech-considerations">
|
||||||
<title>Designing network resources</title>
|
<title>Designing network resources</title>
|
||||||
<para>An OpenStack cloud traditionally has multiple network
|
<para>OpenStack clouds traditionally have multiple network
|
||||||
segments, each of which provides access to resources within
|
segments, each of which provides access to resources within
|
||||||
the cloud to both operators and tenants. In addition, the
|
the cloud to both operators and tenants. The network services
|
||||||
network services themselves also require network communication
|
themselves also require network communication paths which should
|
||||||
paths which should also be separated from the other networks.
|
be separated from the other networks. When designing network services
|
||||||
When designing network services for a general purpose cloud,
|
for a general purpose cloud, we recommend planning for a physical or
|
||||||
it is recommended to plan for either a physical or logical
|
logical separation of network segments that will be used by operators
|
||||||
separation of network segments which will be used by operators
|
and tenants. We further suggest the creation of an additional network
|
||||||
and tenants. It is further suggested to create an additional
|
segment for access to internal services such as the message bus and
|
||||||
network segment for access to internal services such as the
|
databse used by the various cloud services.
|
||||||
message bus and database used by the various cloud services.
|
Segregating these services onto separate networks helps to protect
|
||||||
Segregating these services onto separate networks helps to
|
sensitive data and protects against unauthorized access to services.</para>
|
||||||
protect sensitive data and also protects against unauthorized
|
<para>Based on the requirements of instances being serviced in the cloud,
|
||||||
access to services.</para>
|
the choice of network service will be the next decision that affects
|
||||||
<para>Based on the requirements of instances being serviced in the
|
your design architecture.</para>
|
||||||
cloud, the next design choice, which will affect your design is
|
<para>The choice between legacy networking (nova-network), as a
|
||||||
the choice of network service which will be used to service
|
|
||||||
instances in the cloud. The choice between legacy networking (nova-network), as a
|
|
||||||
part of OpenStack Compute, and OpenStack Networking
|
part of OpenStack Compute, and OpenStack Networking
|
||||||
(neutron), has tremendous implications and will have
|
(neutron), has a huge impact on the architecture and design of the cloud
|
||||||
a huge impact on the architecture and design of the cloud
|
|
||||||
network infrastructure.</para>
|
network infrastructure.</para>
|
||||||
<para>
|
<variablelist>
|
||||||
The legacy networking (nova-network) service is primarily a
|
<varlistentry>
|
||||||
layer-2 networking service that functions in two modes. In
|
<term>Legacy networking (nova-network)</term>
|
||||||
legacy networking, the two modes differ in their use of VLANs.
|
<listitem>
|
||||||
When using legacy networking in a flat network mode, all network
|
<para>The legacy networking (nova-network) service is primarily a
|
||||||
hardware nodes and devices throughout the cloud are connected to
|
layer-2 networking service that functions in two modes. In
|
||||||
a single layer-2 network segment that provides access to
|
legacy networking, the two modes differ in their use of VLANs.
|
||||||
application data.</para>
|
When using legacy networking in a flat network mode, all network
|
||||||
<para>When the network devices in the cloud support segmentation
|
hardware nodes and devices throughout the cloud are connected to
|
||||||
using VLANs, legacy networking can operate in the second mode. In
|
a single layer-2 network segment that provides access to
|
||||||
this design model, each tenant within the cloud is assigned a
|
application data.</para>
|
||||||
network subnet which is mapped to a VLAN on the physical
|
<para>When the network devices in the cloud support segmentation
|
||||||
network. It is especially important to remember the maximum
|
using VLANs, legacy networking can operate in the second mode. In
|
||||||
number of 4096 VLANs which can be used within a spanning tree
|
this design model, each tenant within the cloud is assigned a
|
||||||
domain. These limitations place hard limits on the amount of
|
network subnet which is mapped to a VLAN on the physical
|
||||||
growth possible within the data center. When designing a
|
network. It is especially important to remember the maximum
|
||||||
general purpose cloud intended to support multiple tenants, it
|
number of 4096 VLANs which can be used within a spanning tree
|
||||||
is especially recommended to use legacy networking with VLANs, and
|
domain. These limitations place hard limits on the amount of
|
||||||
not in flat network mode.</para>
|
growth possible within the data center. When designing a
|
||||||
|
general purpose cloud intended to support multiple tenants, we
|
||||||
|
recommend the use of legacy networking with VLANs, and
|
||||||
|
not in flat network mode.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
<para>Another consideration regarding network is the fact that
|
<para>Another consideration regarding network is the fact that
|
||||||
legacy networking is entirely managed by the cloud operator;
|
legacy networking is entirely managed by the cloud operator;
|
||||||
tenants do not have control over network resources. If tenants
|
tenants do not have control over network resources. If tenants
|
||||||
@ -161,18 +203,25 @@
|
|||||||
such as network segments and subnets, it will be necessary to
|
such as network segments and subnets, it will be necessary to
|
||||||
install the OpenStack Networking service to provide network
|
install the OpenStack Networking service to provide network
|
||||||
access to instances.</para>
|
access to instances.</para>
|
||||||
<para>OpenStack Networking is a first class networking
|
<variablelist>
|
||||||
service that gives full control over creation of virtual
|
<varlistentry>
|
||||||
network resources to tenants. This is often accomplished in
|
<term>OpenStack Networking (neutron)</term>
|
||||||
the form of tunneling protocols which will establish
|
<listitem>
|
||||||
encapsulated communication paths over existing network
|
<para>OpenStack Networking (neutron) is a first class networking
|
||||||
infrastructure in order to segment tenant traffic. These
|
service that gives full control over creation of virtual
|
||||||
methods vary depending on the specific implementation, but
|
network resources to tenants. This is often accomplished in
|
||||||
some of the more common methods include tunneling over GRE,
|
the form of tunneling protocols which will establish
|
||||||
encapsulating with VXLAN, and VLAN tags.</para>
|
encapsulated communication paths over existing network
|
||||||
|
infrastructure in order to segment tenant traffic. These
|
||||||
|
methods vary depending on the specific implementation, but
|
||||||
|
some of the more common methods include tunneling over GRE,
|
||||||
|
encapsulating with VXLAN, and VLAN tags.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
<para>Initially, it is suggested to design at least three network
|
<para>Initially, it is suggested to design at least three network
|
||||||
segments, the first of which will be used for access to the
|
segments, the first of which will be used for access to the
|
||||||
cloud's REST APIs by tenants and operators. This is generally
|
cloud's REST APIs by tenants and operators. This is
|
||||||
referred to as a public network. In most cases, the controller
|
referred to as a public network. In most cases, the controller
|
||||||
nodes and swift proxies within the cloud will be the only
|
nodes and swift proxies within the cloud will be the only
|
||||||
devices necessary to connect to this network segment. In some
|
devices necessary to connect to this network segment. In some
|
||||||
@ -197,15 +246,19 @@
|
|||||||
resource nodes will need to communicate on this network
|
resource nodes will need to communicate on this network
|
||||||
segment, as will any network gateway services which allow
|
segment, as will any network gateway services which allow
|
||||||
application data to access the physical network outside of the
|
application data to access the physical network outside of the
|
||||||
cloud.</para></section>
|
cloud.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="designing-storage-resources-tech-considerations">
|
<section xml:id="designing-storage-resources-tech-considerations">
|
||||||
<title>Designing storage resources</title>
|
<title>Designing storage resources</title>
|
||||||
<para>OpenStack has two independent storage services to consider,
|
<para>OpenStack has two independent storage services to consider,
|
||||||
each with its own specific design requirements and goals. In
|
each with its own specific design requirements and goals. In
|
||||||
addition to services which provide storage as their primary
|
addition to services which provide storage as their primary
|
||||||
function, there are additional design considerations with
|
function, there are additional design considerations with
|
||||||
regard to compute and controller nodes which will affect the
|
regard to compute and controller nodes which will affect the
|
||||||
overall cloud architecture.</para></section>
|
overall cloud architecture.</para> <!--Could there be room for more tech content here? A.S-->
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="designing-openstack-object-storage-tech-considerations">
|
<section xml:id="designing-openstack-object-storage-tech-considerations">
|
||||||
<title>Designing OpenStack Object Storage</title>
|
<title>Designing OpenStack Object Storage</title>
|
||||||
<para>When designing hardware resources for OpenStack Object
|
<para>When designing hardware resources for OpenStack Object
|
||||||
@ -217,30 +270,28 @@
|
|||||||
attached storage or an external chassis that holds a larger
|
attached storage or an external chassis that holds a larger
|
||||||
number of drives, the main goal is to maximize the storage
|
number of drives, the main goal is to maximize the storage
|
||||||
available in each node.</para>
|
available in each node.</para>
|
||||||
<para>It is not recommended to invest in enterprise class drives
|
<para>We do not recommended investing in enterprise class drives
|
||||||
for an OpenStack Object Storage cluster. The consistency and
|
for an OpenStack Object Storage cluster. The consistency and
|
||||||
partition tolerance characteristics of OpenStack Object
|
partition tolerance characteristics of OpenStack Object
|
||||||
Storage will ensure that data stays up to date and survives
|
Storage will ensure that data stays up to date and survives
|
||||||
hardware faults without the use of any specialized data
|
hardware faults without the use of any specialized data
|
||||||
replication devices.</para>
|
replication devices.</para>
|
||||||
<para>A great benefit of OpenStack Object Storage is the ability
|
<para>One of the benefits of OpenStack Object Storage is the ability
|
||||||
to mix and match drives by utilizing weighting within the
|
to mix and match drives by making use of weighting within the
|
||||||
swift ring. When designing your swift storage cluster, it is
|
swift ring. When designing your swift storage cluster, we
|
||||||
recommended to make use of the most cost effective storage
|
recommend making use of the most cost effective storage
|
||||||
solution available at the time. Many server chassis on the
|
solution available at the time. Many server chassis on the
|
||||||
market can hold 60 or more drives in 4U of rack space,
|
market can hold 60 or more drives in 4U of rack space,
|
||||||
therefore it is recommended to maximize the amount of storage
|
therefore we recommend maximizing the amount of storage
|
||||||
per rack unit at the best cost per terabyte. Furthermore, the
|
per rack unit at the best cost per terabyte. Furthermore, we
|
||||||
use of RAID controllers is not recommended in an object
|
do not recommend the use of RAID controllers in an object storage
|
||||||
storage node.</para>
|
node.</para>
|
||||||
<para>In order to achieve this durability and availability of data
|
<para>To achieve durability and availability of data stored as objects
|
||||||
stored as objects, it is important to design object storage
|
it is important to design object storage resource pools to ensure they can
|
||||||
resource pools in a way that provides the suggested
|
provide the suggested availability. Considering rack-level and zone-level
|
||||||
availability that the service can provide. Beyond designing at
|
designs to accommodate the number of replicas configured to be stored in the
|
||||||
the hardware node level, it is important to consider
|
Object Storage service (the defult number of replicas is three) is important
|
||||||
rack-level and zone-level designs to accommodate the number of
|
when designing beyond the hardware node level. Each replica of
|
||||||
replicas configured to be stored in the Object Storage service
|
|
||||||
(the default number of replicas is three). Each replica of
|
|
||||||
data should exist in its own availability zone with its own
|
data should exist in its own availability zone with its own
|
||||||
power, cooling, and network resources available to service
|
power, cooling, and network resources available to service
|
||||||
that specific zone.</para>
|
that specific zone.</para>
|
||||||
@ -248,79 +299,116 @@
|
|||||||
of requests does not hinder the performance of the cluster.
|
of requests does not hinder the performance of the cluster.
|
||||||
The object storage service is a chatty protocol, therefore
|
The object storage service is a chatty protocol, therefore
|
||||||
making use of multiple processors that have higher core counts
|
making use of multiple processors that have higher core counts
|
||||||
will ensure the IO requests do not inundate the server.</para></section>
|
will ensure the IO requests do not inundate the server.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="designing-openstack-block-storage">
|
<section xml:id="designing-openstack-block-storage">
|
||||||
<title>Designing OpenStack Block Storage</title>
|
<title>Designing OpenStack Block Storage</title>
|
||||||
<para>When designing OpenStack Block Storage resource nodes, it is
|
<para>When designing OpenStack Block Storage resource nodes, it is
|
||||||
helpful to understand the workloads and requirements that will
|
helpful to understand the workloads and requirements that will
|
||||||
drive the use of block storage in the cloud. In a general
|
drive the use of block storage in the cloud. We recommend designing
|
||||||
purpose cloud these use patterns are often unknown. It is
|
block storage pools so that tenants can choose appropriate storage
|
||||||
recommended to design block storage pools so that tenants can
|
solutions for their applications. By creating multiple storage pools of different
|
||||||
choose the appropriate storage solution for their
|
|
||||||
applications. By creating multiple storage pools of different
|
|
||||||
types, in conjunction with configuring an advanced storage
|
types, in conjunction with configuring an advanced storage
|
||||||
scheduler for the block storage service, it is possible to
|
scheduler for the block storage service, it is possible to
|
||||||
provide tenants with a large catalog of storage services with
|
provide tenants with a large catalog of storage services with
|
||||||
a variety of performance levels and redundancy options.</para>
|
a variety of performance levels and redundancy options.</para>
|
||||||
<para>In addition to directly attached storage populated in
|
<para>Block storage also takes advantage of a number of enterprise storage
|
||||||
servers, block storage can also take advantage of a number of
|
solutions. These are addressed via a plug-in driver developed by the
|
||||||
enterprise storage solutions. These are addressed via a plug-in
|
hardware vendor. A large number of
|
||||||
driver developed by the hardware vendor. A large number of
|
|
||||||
enterprise storage plug-in drivers ship out-of-the-box with
|
enterprise storage plug-in drivers ship out-of-the-box with
|
||||||
OpenStack Block Storage (and many more available via third
|
OpenStack Block Storage (and many more available via third
|
||||||
party channels). While a general purpose cloud would likely
|
party channels). General purpose clouds are more likely to use
|
||||||
use directly attached storage in the majority of block storage
|
directly attached storage in the majority of block storage nodes,
|
||||||
nodes, it may also be necessary to provide additional levels
|
deeming it necessary to provide additional levels of service to tenants
|
||||||
of service to tenants which can only be provided by enterprise
|
which can only be provided by enterprise class storage solutions.</para>
|
||||||
class storage solutions.</para>
|
<para>Redundancy and availability requirements impact the decision to use
|
||||||
<para>The determination to use a RAID controller card in block
|
a RAID controller card in block storage nodes. The input-output per second (IOPS)
|
||||||
storage nodes is impacted primarily by the redundancy and
|
demand of your application will influence whether or not you should use a RAID
|
||||||
availability requirements of the application. Applications
|
controller, and which level of RAID is required.
|
||||||
which have a higher demand on input-output per second (IOPS)
|
Making use of higher performing RAID volumes is suggested when
|
||||||
will influence both the choice to use a RAID controller and
|
considering performance. However, where redundancy of
|
||||||
the level of RAID configured on the volume. Where performance
|
block storage volumes is more important we recommend
|
||||||
is a consideration, it is suggested to make use of higher
|
making use of a redundant RAID configuration such as RAID 5 or
|
||||||
performing RAID volumes. In contrast, where redundancy of
|
|
||||||
block storage volumes is more important it is recommended to
|
|
||||||
make use of a redundant RAID configuration such as RAID 5 or
|
|
||||||
RAID 6. Some specialized features, such as automated
|
RAID 6. Some specialized features, such as automated
|
||||||
replication of block storage volumes, may require the use of
|
replication of block storage volumes, may require the use of
|
||||||
third-party plug-ins and enterprise block storage solutions in
|
third-party plug-ins and enterprise block storage solutions in
|
||||||
order to provide the high demand on storage. Furthermore,
|
order to provide the high demand on storage. Furthermore,
|
||||||
where extreme performance is a requirement it may also be
|
where extreme performance is a requirement it may also be
|
||||||
necessary to make use of high speed SSD disk drives' high
|
necessary to make use of high speed SSD disk drives' high
|
||||||
performing flash storage solutions.</para></section>
|
performing flash storage solutions.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="software-selection-tech-considerations">
|
<section xml:id="software-selection-tech-considerations">
|
||||||
<title>Software selection</title>
|
<title>Software selection</title>
|
||||||
<para>The software selection process can play a large role in the
|
<para>The software selection process plays a large role in the
|
||||||
architecture of a general purpose cloud. Choice of operating
|
architecture of a general purpose cloud. The following have
|
||||||
system, selection of OpenStack software components, choice of
|
a large impact on the design of the cloud:</para>
|
||||||
hypervisor and selection of supplemental software will have a
|
<itemizedlist>
|
||||||
large impact on the design of the cloud.</para>
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Choice of operating system
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Selection of OpenStack software components
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Choice of hypervisor
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Selection of supplemental software
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
<para>Operating system (OS) selection plays a large role in the
|
<para>Operating system (OS) selection plays a large role in the
|
||||||
design and architecture of a cloud. There are a number of OSes
|
design and architecture of a cloud. There are a number of OSes
|
||||||
which have native support for OpenStack including Ubuntu, Red
|
which have native support for OpenStack including:</para>
|
||||||
Hat Enterprise Linux (RHEL), CentOS, and SUSE Linux Enterprise
|
<itemizedlist>
|
||||||
Server (SLES). "Native support" in this context means that the
|
<listitem>
|
||||||
distribution provides distribution-native packages by which to
|
<para>
|
||||||
install OpenStack in their repositories. Note that "native
|
Ubuntu
|
||||||
support" is not a constraint on the choice of OS; users are
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Red Hat Enterprise Linux (RHEL)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
CentOS
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
SUSE Linux Enterprise Server (SLES)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
<note>
|
||||||
|
<para>Native support is not a constraint on the choice of OS; users are
|
||||||
free to choose just about any Linux distribution (or even
|
free to choose just about any Linux distribution (or even
|
||||||
Microsoft Windows) and install OpenStack directly from source
|
Microsoft Windows) and install OpenStack directly from source
|
||||||
(or compile their own packages). However, the reality is that
|
(or compile their own packages). However, many organizations will
|
||||||
many organizations will prefer to install OpenStack from
|
prefer to install OpenStack from distribution-supplied packages or
|
||||||
distribution-supplied packages or repositories (although using
|
repositories (although using the distribution vendor's OpenStack
|
||||||
the distribution vendor's OpenStack packages might be a
|
packages might be a requirement for support).
|
||||||
requirement for support).</para>
|
</para>
|
||||||
|
</note>
|
||||||
<para>OS selection also directly influences hypervisor selection.
|
<para>OS selection also directly influences hypervisor selection.
|
||||||
A cloud architect who selects Ubuntu, RHEL, or SLES has some
|
A cloud architect who selects Ubuntu, RHEL, or SLES has some
|
||||||
flexibility in hypervisor; KVM, Xen, and LXC are supported
|
flexibility in hypervisor; KVM, Xen, and LXC are supported
|
||||||
virtualization methods available under OpenStack Compute
|
virtualization methods available under OpenStack Compute
|
||||||
(nova) on these Linux distributions. A cloud architect who
|
(nova) on these Linux distributions. However, a cloud architect
|
||||||
selects Hyper-V, on the other hand, is limited to Windows
|
who selects Hyper-V is limited to Windows Servers. Similarly, a
|
||||||
Server. Similarly, a cloud architect who selects XenServer is
|
cloud architect who selects XenServer is limited to the CentOS-based
|
||||||
limited to the CentOS-based dom0 operating system provided
|
dom0 operating system provided with XenServer.</para>
|
||||||
with XenServer.</para>
|
|
||||||
<para>The primary factors that play into OS-hypervisor selection
|
<para>The primary factors that play into OS-hypervisor selection
|
||||||
include:</para>
|
include:</para>
|
||||||
<variablelist>
|
<variablelist>
|
||||||
@ -350,6 +438,7 @@
|
|||||||
</varlistentry>
|
</varlistentry>
|
||||||
</variablelist>
|
</variablelist>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section xml:id="hypervisor-tech-considerations">
|
<section xml:id="hypervisor-tech-considerations">
|
||||||
<title>Hypervisor</title>
|
<title>Hypervisor</title>
|
||||||
<para>OpenStack supports a wide variety of hypervisors, one or
|
<para>OpenStack supports a wide variety of hypervisors, one or
|
||||||
@ -380,13 +469,13 @@
|
|||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
<para>A complete list of supported hypervisors and their
|
<para>A complete list of supported hypervisors and their
|
||||||
capabilities can be found at
|
capabilities can be found at
|
||||||
<link xlink:href="https://wiki.openstack.org/wiki/HypervisorSupportMatrix">https://wiki.openstack.org/wiki/HypervisorSupportMatrix</link>.
|
<link xlink:href="https://wiki.openstack.org/wiki/HypervisorSupportMatrix">OpenStack Hypervisor Support Matrix</link>.
|
||||||
</para>
|
</para>
|
||||||
<para>General purpose clouds should make use of hypervisors that
|
<para>We recommend general purpose clouds use hypervisors that
|
||||||
support the most general purpose use cases, such as KVM and
|
support the most general purpose use cases, such as KVM and
|
||||||
Xen. More specific hypervisors should then be chosen to
|
Xen. More specific hypervisors should be chosen to account
|
||||||
account for specific functionality or a supported feature
|
for specific functionality or a supported feature requirement.
|
||||||
requirement. In some cases, there may also be a mandated
|
In some cases, there may also be a mandated
|
||||||
requirement to run software on a certified hypervisor
|
requirement to run software on a certified hypervisor
|
||||||
including solutions from VMware, Microsoft, and Citrix.</para>
|
including solutions from VMware, Microsoft, and Citrix.</para>
|
||||||
<para>The features offered through the OpenStack cloud platform
|
<para>The features offered through the OpenStack cloud platform
|
||||||
@ -394,7 +483,7 @@
|
|||||||
a general purpose cloud that predominantly supports a
|
a general purpose cloud that predominantly supports a
|
||||||
Microsoft-based migration, or is managed by staff that has a
|
Microsoft-based migration, or is managed by staff that has a
|
||||||
particular skill for managing certain hypervisors and
|
particular skill for managing certain hypervisors and
|
||||||
operating systems, Hyper-V might be the best available choice.
|
operating systems, Hyper-V would be the best available choice.
|
||||||
While the decision to use Hyper-V does not limit the ability
|
While the decision to use Hyper-V does not limit the ability
|
||||||
to run alternative operating systems, be mindful of those that
|
to run alternative operating systems, be mindful of those that
|
||||||
are deemed supported. Each different hypervisor also has their
|
are deemed supported. Each different hypervisor also has their
|
||||||
@ -409,7 +498,9 @@
|
|||||||
workloads to utilize software and hardware specific to their
|
workloads to utilize software and hardware specific to their
|
||||||
particular requirements. This functionality can be exposed
|
particular requirements. This functionality can be exposed
|
||||||
explicitly to the end user, or accessed through defined
|
explicitly to the end user, or accessed through defined
|
||||||
metadata within a particular flavor of an instance.</para></section>
|
metadata within a particular flavor of an instance.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="openstack-components-tech-considerations">
|
<section xml:id="openstack-components-tech-considerations">
|
||||||
<title>OpenStack components</title>
|
<title>OpenStack components</title>
|
||||||
<para>A general purpose OpenStack cloud design should incorporate
|
<para>A general purpose OpenStack cloud design should incorporate
|
||||||
@ -445,11 +536,15 @@
|
|||||||
<para>A general purpose cloud may also include OpenStack
|
<para>A general purpose cloud may also include OpenStack
|
||||||
<glossterm>Object Storage</glossterm> (<glossterm>swift</glossterm>).
|
<glossterm>Object Storage</glossterm> (<glossterm>swift</glossterm>).
|
||||||
OpenStack <glossterm>Block Storage</glossterm>
|
OpenStack <glossterm>Block Storage</glossterm>
|
||||||
(<glossterm>cinder</glossterm>) may be
|
(<glossterm>cinder</glossterm>). These may be
|
||||||
selected to provide persistent storage to applications and
|
selected to provide storage to applications and
|
||||||
instances although, depending on the use case, this could be
|
instances.</para>
|
||||||
|
<note>
|
||||||
|
<para>However, depending on the use case, these could be
|
||||||
optional.</para>
|
optional.</para>
|
||||||
|
</note>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section xml:id="supplemental-software-tech-considerations">
|
<section xml:id="supplemental-software-tech-considerations">
|
||||||
<title>Supplemental software</title>
|
<title>Supplemental software</title>
|
||||||
<para>A general purpose OpenStack deployment consists of more than
|
<para>A general purpose OpenStack deployment consists of more than
|
||||||
@ -471,7 +566,7 @@
|
|||||||
balancers to provide highly available API access and SSL
|
balancers to provide highly available API access and SSL
|
||||||
termination, software solutions, for example HAProxy, can also
|
termination, software solutions, for example HAProxy, can also
|
||||||
be considered. It is vital to ensure that such software
|
be considered. It is vital to ensure that such software
|
||||||
implementations are also made highly available. This high
|
implementations are also made highly available. High
|
||||||
availability can be achieved by using software such as
|
availability can be achieved by using software such as
|
||||||
Keepalived or Pacemaker with Corosync. Pacemaker and Corosync
|
Keepalived or Pacemaker with Corosync. Pacemaker and Corosync
|
||||||
can provide active-active or active-passive highly available
|
can provide active-active or active-passive highly available
|
||||||
@ -481,39 +576,43 @@
|
|||||||
infrastructure where one of those nodes may be running certain
|
infrastructure where one of those nodes may be running certain
|
||||||
services in standby mode.</para>
|
services in standby mode.</para>
|
||||||
<para>Memcached is a distributed memory object caching system, and
|
<para>Memcached is a distributed memory object caching system, and
|
||||||
Redis is a key-value store. Both are usually deployed on
|
Redis is a key-value store. Both are deployed on
|
||||||
general purpose clouds to assist in alleviating load to the
|
general purpose clouds to assist in alleviating load to the
|
||||||
Identity service. The memcached service caches tokens, and due
|
Identity service. The memcached service caches tokens, and due
|
||||||
to its distributed nature it can help alleviate some
|
to its distributed nature it can help alleviate some
|
||||||
bottlenecks to the underlying authentication system. Using
|
bottlenecks to the underlying authentication system. Using
|
||||||
memcached or Redis does not affect the overall design of your
|
memcached or Redis does not affect the overall design of your
|
||||||
architecture as they tend to be deployed onto the
|
architecture as they tend to be deployed onto the
|
||||||
infrastructure nodes providing the OpenStack services.</para></section>
|
infrastructure nodes providing the OpenStack services.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="performance-tech-considerations">
|
<section xml:id="performance-tech-considerations">
|
||||||
<title>Performance</title>
|
<title>Performance</title>
|
||||||
<para>Performance of an OpenStack deployment is dependent on a
|
<para>Performance of an OpenStack deployment is dependent on a
|
||||||
number of factors related to the infrastructure and controller
|
number of factors related to the infrastructure and controller
|
||||||
services. The user requirements can be split into general
|
services. The user requirements can be split into general
|
||||||
network performance, performance of compute resources, and
|
network performance, performance of compute resources, and
|
||||||
performance of storage systems.</para></section>
|
performance of storage systems.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="controller-infrastructure-tech-considerations">
|
<section xml:id="controller-infrastructure-tech-considerations">
|
||||||
<title>Controller infrastructure</title>
|
<title>Controller infrastructure</title>
|
||||||
<para>The Controller infrastructure nodes provide management
|
<para>The Controller infrastructure nodes provide management
|
||||||
services to the end-user as well as providing services
|
services to the end-user as well as providing services
|
||||||
internally for the operating of the cloud. The Controllers
|
internally for the operating of the cloud. The Controllers
|
||||||
typically run message queuing services that carry system
|
run message queuing services that carry system
|
||||||
messages between each service. Performance issues related to
|
messages between each service. Performance issues related to
|
||||||
the message bus would lead to delays in sending that message
|
the message bus would lead to delays in sending that message
|
||||||
to where it needs to go. The result of this condition would be
|
to where it needs to go. The result of this condition would be
|
||||||
delays in operation functions such as spinning up and deleting
|
delays in operation functions such as spinning up and deleting
|
||||||
instances, provisioning new storage volumes and managing
|
instances, provisioning new storage volumes and managing
|
||||||
network resources. Such delays could adversely affect an
|
network resources. Such delays could adversely affect an
|
||||||
application's ability to react to certain conditions,
|
application’s ability to react to certain conditions,
|
||||||
especially when using auto-scaling features. It is important
|
especially when using auto-scaling features. It is important
|
||||||
to properly design the hardware used to run the controller
|
to properly design the hardware used to run the controller
|
||||||
infrastructure as outlined above in the Hardware Selection
|
infrastructure as outlined above in the Hardware Selection
|
||||||
section.</para>
|
section.</para>
|
||||||
<para>Performance of the controller services is not just limited
|
<para>Performance of the controller services is not limited
|
||||||
to processing power, but restrictions may emerge in serving
|
to processing power, but restrictions may emerge in serving
|
||||||
concurrent users. Ensure that the APIs and Horizon services
|
concurrent users. Ensure that the APIs and Horizon services
|
||||||
are load tested to ensure that you are able to serve your
|
are load tested to ensure that you are able to serve your
|
||||||
@ -522,11 +621,13 @@
|
|||||||
authentication and authorization for all services, both
|
authentication and authorization for all services, both
|
||||||
internally to OpenStack itself and to end-users. This service
|
internally to OpenStack itself and to end-users. This service
|
||||||
can lead to a degradation of overall performance if this is
|
can lead to a degradation of overall performance if this is
|
||||||
not sized appropriately.</para></section>
|
not sized appropriately.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="network-performance-tech-considerations">
|
<section xml:id="network-performance-tech-considerations">
|
||||||
<title>Network performance</title>
|
<title>Network performance</title>
|
||||||
<para>In a general purpose OpenStack cloud, the requirements of
|
<para>In a general purpose OpenStack cloud, the requirements of
|
||||||
the network help determine its performance capabilities. For
|
the network help determine performance capabilities. For
|
||||||
example, small deployments may employ 1 Gigabit Ethernet (GbE)
|
example, small deployments may employ 1 Gigabit Ethernet (GbE)
|
||||||
networking, whereas larger installations serving multiple
|
networking, whereas larger installations serving multiple
|
||||||
departments or many users would be better architected with
|
departments or many users would be better architected with
|
||||||
@ -535,7 +636,8 @@
|
|||||||
environments that run a mix of networking capabilities. By
|
environments that run a mix of networking capabilities. By
|
||||||
utilizing the different interface speeds, the users of the
|
utilizing the different interface speeds, the users of the
|
||||||
OpenStack environment can choose networks that are fit for
|
OpenStack environment can choose networks that are fit for
|
||||||
their purpose. For example, web application instances may run
|
their purpose.</para>
|
||||||
|
<para>For example, web application instances may run
|
||||||
on a public network presented through OpenStack Networking
|
on a public network presented through OpenStack Networking
|
||||||
that has 1 GbE capability, whereas the back-end database uses
|
that has 1 GbE capability, whereas the back-end database uses
|
||||||
an OpenStack Networking network that has 10 GbE capability to
|
an OpenStack Networking network that has 10 GbE capability to
|
||||||
@ -547,7 +649,9 @@
|
|||||||
perform SSL termination if that is a requirement of your
|
perform SSL termination if that is a requirement of your
|
||||||
environment. When implementing SSL offloading, it is important
|
environment. When implementing SSL offloading, it is important
|
||||||
to understand the SSL offloading capabilities of the devices
|
to understand the SSL offloading capabilities of the devices
|
||||||
selected.</para></section>
|
selected.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="compute-host-tech-considerations">
|
<section xml:id="compute-host-tech-considerations">
|
||||||
<title>Compute host</title>
|
<title>Compute host</title>
|
||||||
<para>The choice of hardware specifications used in compute nodes
|
<para>The choice of hardware specifications used in compute nodes
|
||||||
@ -562,12 +666,14 @@
|
|||||||
Compute environment to avoid this scenario. For running
|
Compute environment to avoid this scenario. For running
|
||||||
general purpose OpenStack environments it is possible to keep
|
general purpose OpenStack environments it is possible to keep
|
||||||
to the defaults, but make sure to monitor your environment as
|
to the defaults, but make sure to monitor your environment as
|
||||||
usage increases.</para></section>
|
usage increases.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="storage-performance-tech-considerations">
|
<section xml:id="storage-performance-tech-considerations">
|
||||||
<title>Storage performance</title>
|
<title>Storage performance</title>
|
||||||
<para>When considering the performance of OpenStack Block Storage,
|
<para>When considering performance of OpenStack Block Storage,
|
||||||
hardware and architecture choices are important. Block Storage
|
hardware and architecture choice is important. Block Storage
|
||||||
can use enterprise back-end systems such as NetApp or EMC, use
|
can use enterprise back-end systems such as NetApp or EMC,
|
||||||
scale out storage such as GlusterFS and Ceph, or simply use
|
scale out storage such as GlusterFS and Ceph, or simply use
|
||||||
the capabilities of directly attached storage in the nodes
|
the capabilities of directly attached storage in the nodes
|
||||||
themselves. Block Storage may be deployed so that traffic
|
themselves. Block Storage may be deployed so that traffic
|
||||||
@ -577,13 +683,15 @@
|
|||||||
dedicated interfaces on the Controller and Compute
|
dedicated interfaces on the Controller and Compute
|
||||||
hosts.</para>
|
hosts.</para>
|
||||||
<para>When considering performance of OpenStack Object Storage, a
|
<para>When considering performance of OpenStack Object Storage, a
|
||||||
number of design choices will affect performance. A user's
|
number of design choices will affect performance. A user’s
|
||||||
access to the Object Storage is through the proxy services,
|
access to the Object Storage is through the proxy services,
|
||||||
which typically sit behind hardware load balancers. By the
|
which sit behind hardware load balancers. By the
|
||||||
very nature of a highly resilient storage system, replication
|
very nature of a highly resilient storage system, replication
|
||||||
of the data would affect performance of the overall system. In
|
of the data would affect performance of the overall system. In
|
||||||
this case, 10 GbE (or better) networking is recommended
|
this case, 10 GbE (or better) networking is recommended
|
||||||
throughout the storage network architecture.</para></section>
|
throughout the storage network architecture.</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="availability-tech-considerations">
|
<section xml:id="availability-tech-considerations">
|
||||||
<title>Availability</title>
|
<title>Availability</title>
|
||||||
<para>In OpenStack, the infrastructure is integral to providing
|
<para>In OpenStack, the infrastructure is integral to providing
|
||||||
@ -611,16 +719,16 @@
|
|||||||
your systems, will help determine scale out decisions.</para>
|
your systems, will help determine scale out decisions.</para>
|
||||||
<para>Care must be taken when deciding network functionality.
|
<para>Care must be taken when deciding network functionality.
|
||||||
Currently, OpenStack supports both the legacy networking (nova-network)
|
Currently, OpenStack supports both the legacy networking (nova-network)
|
||||||
system and the newer, extensible OpenStack Networking. Both
|
system and the newer, extensible OpenStack Networking (neutron). Both
|
||||||
have their pros and cons when it comes to providing highly
|
have their pros and cons when it comes to providing highly
|
||||||
available access. Legacy networking, which provides networking
|
available access. Legacy networking, which provides networking
|
||||||
access maintained in the OpenStack Compute code, provides a
|
access maintained in the OpenStack Compute code, provides a
|
||||||
feature that removes a single point of failure when it comes
|
feature that removes a single point of failure when it comes
|
||||||
to routing, and this feature is currently missing in OpenStack
|
to routing, and this feature is currently missing in OpenStack
|
||||||
Networking. The effect of legacy networking's multi-host
|
Networking. The effect of legacy networking’s multi-host
|
||||||
functionality restricts failure domains to the host running
|
functionality restricts failure domains to the host running
|
||||||
that instance.</para>
|
that instance.</para>
|
||||||
<para>On the other hand, when using OpenStack Networking, the
|
<para>When using OpenStack Networking, the
|
||||||
OpenStack controller servers or separate Networking
|
OpenStack controller servers or separate Networking
|
||||||
hosts handle routing. For a deployment that requires features
|
hosts handle routing. For a deployment that requires features
|
||||||
available in only Networking, it is possible to
|
available in only Networking, it is possible to
|
||||||
@ -632,9 +740,8 @@
|
|||||||
Networking, and instead rely on hardware routing capabilities.
|
Networking, and instead rely on hardware routing capabilities.
|
||||||
In this case, the switching infrastructure must support L3
|
In this case, the switching infrastructure must support L3
|
||||||
routing.</para>
|
routing.</para>
|
||||||
<para>
|
<para>OpenStack Networking and legacy networking
|
||||||
OpenStack Networking (neutron) and legacy networking
|
both have their advantages and
|
||||||
(nova-network) both have their advantages and
|
|
||||||
disadvantages. They are both valid and supported options that
|
disadvantages. They are both valid and supported options that
|
||||||
fit different network deployment models described in the
|
fit different network deployment models described in the
|
||||||
<citetitle><link
|
<citetitle><link
|
||||||
@ -661,12 +768,12 @@
|
|||||||
may include utilizing shared file systems on enterprise
|
may include utilizing shared file systems on enterprise
|
||||||
storage or OpenStack Block storage to provide a level of
|
storage or OpenStack Block storage to provide a level of
|
||||||
guarantee to match service features.</para>
|
guarantee to match service features.</para>
|
||||||
<para>
|
<para>For more information on high availability in OpenStack, see the <link
|
||||||
For more information on high availability in OpenStack, see the <link
|
|
||||||
xlink:href="http://docs.openstack.org/high-availability-guide"><citetitle>OpenStack
|
xlink:href="http://docs.openstack.org/high-availability-guide"><citetitle>OpenStack
|
||||||
High Availability Guide</citetitle></link>.
|
High Availability Guide</citetitle></link>.
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section xml:id="security-tech-considerations">
|
<section xml:id="security-tech-considerations">
|
||||||
<title>Security</title>
|
<title>Security</title>
|
||||||
<para>A security domain comprises users, applications, servers or
|
<para>A security domain comprises users, applications, servers or
|
||||||
@ -751,7 +858,7 @@
|
|||||||
the API services behind hardware that performs SSL termination
|
the API services behind hardware that performs SSL termination
|
||||||
is strongly recommended.</para>
|
is strongly recommended.</para>
|
||||||
<para>
|
<para>
|
||||||
For more information on OpenStack Security, see the <link
|
For more information OpenStack Security, see the <link
|
||||||
xlink:href="http://docs.openstack.org/security-guide/"><citetitle>OpenStack
|
xlink:href="http://docs.openstack.org/security-guide/"><citetitle>OpenStack
|
||||||
Security Guide</citetitle></link>
|
Security Guide</citetitle></link>
|
||||||
</para>
|
</para>
|
||||||
|
Loading…
Reference in New Issue
Block a user