Arch Design: Edits on compute_focus and storage_focus
Edits to follow conventions. Change-Id: I640d27ac6d6b1bc1878b6f196b6c4936f316c914
This commit is contained in:
parent
3499f2de60
commit
e5ba83585d
@ -11,7 +11,7 @@
|
|||||||
provides particle accelerators and other infrastructure for
|
provides particle accelerators and other infrastructure for
|
||||||
high-energy physics research.</para>
|
high-energy physics research.</para>
|
||||||
<para>As of 2011 CERN operated these two compute centers in Europe
|
<para>As of 2011 CERN operated these two compute centers in Europe
|
||||||
with plans to add a third:</para>
|
with plans to add a third.</para>
|
||||||
<para>To support a growing number of compute heavy users of
|
<para>To support a growing number of compute heavy users of
|
||||||
experiments related to the Large Hadron Collider (LHC) CERN
|
experiments related to the Large Hadron Collider (LHC) CERN
|
||||||
ultimately elected to deploy an OpenStack cloud using
|
ultimately elected to deploy an OpenStack cloud using
|
||||||
|
@ -1,4 +1,8 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE section [
|
||||||
|
<!ENTITY % openstack SYSTEM "../../common/entities/openstack.ent">
|
||||||
|
%openstack;
|
||||||
|
]>
|
||||||
<section xmlns="http://docbook.org/ns/docbook"
|
<section xmlns="http://docbook.org/ns/docbook"
|
||||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
@ -9,24 +13,33 @@
|
|||||||
<para>Compute intensive workloads are defined by their high
|
<para>Compute intensive workloads are defined by their high
|
||||||
utilization of CPU, RAM, or both. User requirements will
|
utilization of CPU, RAM, or both. User requirements will
|
||||||
determine if a cloud must be built to accommodate anticipated
|
determine if a cloud must be built to accommodate anticipated
|
||||||
performance demands.</para>
|
performance demands.
|
||||||
<itemizedlist>
|
</para>
|
||||||
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Cost</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Cost: Cost is not generally a primary concern for a
|
<para>Cost is not generally a primary concern for a
|
||||||
compute-focused cloud, however some organizations
|
compute-focused cloud, however some organizations
|
||||||
might be concerned with cost avoidance. Repurposing
|
might be concerned with cost avoidance. Repurposing
|
||||||
existing resources to tackle compute-intensive tasks
|
existing resources to tackle compute-intensive tasks
|
||||||
instead of needing to acquire additional resources may
|
instead of needing to acquire additional resources may
|
||||||
offer cost reduction opportunities.</para>
|
offer cost reduction opportunities.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Time to market</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Time to Market: Compute-focused clouds can be used
|
<para>Compute-focused clouds can be used
|
||||||
to deliver products more quickly, for example,
|
to deliver products more quickly, for example,
|
||||||
speeding up a company's software development life cycle
|
speeding up a company's software development life cycle
|
||||||
(SDLC) for building products and applications.</para>
|
(SDLC) for building products and applications.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Revenue opportunity</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Revenue Opportunity: Companies that are interested
|
<para>Companies that are interested
|
||||||
in building services or products that rely on the
|
in building services or products that rely on the
|
||||||
power of the compute resources will benefit from a
|
power of the compute resources will benefit from a
|
||||||
compute-focused cloud. Examples include the analysis
|
compute-focused cloud. Examples include the analysis
|
||||||
@ -35,7 +48,8 @@
|
|||||||
rendering, scientific computation, or
|
rendering, scientific computation, or
|
||||||
simulations.</para>
|
simulations.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
<section xml:id="legal-requirements-compute-focus">
|
<section xml:id="legal-requirements-compute-focus">
|
||||||
<title>Legal requirements</title>
|
<title>Legal requirements</title>
|
||||||
<para>Many jurisdictions have legislative and regulatory
|
<para>Many jurisdictions have legislative and regulatory
|
||||||
@ -57,33 +71,41 @@
|
|||||||
jurisdictions.</para>
|
jurisdictions.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Data compliance - certain types of information needs
|
<para>Data compliance—certain types of information needs
|
||||||
to reside in certain locations due to regular issues -
|
to reside in certain locations due to regular issues—and
|
||||||
and more important cannot reside in other locations
|
more important cannot reside in other locations
|
||||||
for the same reason.</para>
|
for the same reason.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
<para>Examples of such legal frameworks include the data
|
<para>
|
||||||
protection framework of the European Union
|
Examples of such legal frameworks include the <link
|
||||||
(http://ec.europa.eu/justice/data-protection/ ) and the
|
xlink:href="http://ec.europa.eu/justice/data-protection/">data
|
||||||
requirements of the Financial Industry Regulatory Authority
|
protection framework</link> of the European Union and the
|
||||||
(http://www.finra.org/Industry/Regulation/FINRARules/ ) in the
|
requirements of the <link
|
||||||
United States. Consult a local regulatory body for more
|
xlink:href="http://www.finra.org/Industry/Regulation/FINRARules/">Financial
|
||||||
|
Industry Regulatory Authority</link> in the United
|
||||||
|
States. Consult a local regulatory body for more
|
||||||
information.</para></section>
|
information.</para></section>
|
||||||
<section xml:id="technical-considerations-compute-focus-user">
|
<section xml:id="technical-considerations-compute-focus-user">
|
||||||
<title>Technical considerations</title>
|
<title>Technical considerations</title>
|
||||||
<para>The following are some technical requirements that need to
|
<para>The following are some technical requirements that need to
|
||||||
be incorporated into the architecture design.</para>
|
be incorporated into the architecture design.
|
||||||
<itemizedlist>
|
</para>
|
||||||
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Performance</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Performance: If a primary technical concern is for
|
<para>If a primary technical concern is for
|
||||||
the environment to deliver high performance
|
the environment to deliver high performance
|
||||||
capability, then a compute-focused design is an
|
capability, then a compute-focused design is an
|
||||||
obvious choice because it is specifically designed to
|
obvious choice because it is specifically designed to
|
||||||
host compute-intensive workloads.</para>
|
host compute-intensive workloads.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Workload persistence</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Workload persistence: Workloads can be either
|
<para>Workloads can be either
|
||||||
short-lived or long running. Short-lived workloads
|
short-lived or long running. Short-lived workloads
|
||||||
might include continuous integration and continuous
|
might include continuous integration and continuous
|
||||||
deployment (CI-CD) jobs, where large numbers of
|
deployment (CI-CD) jobs, where large numbers of
|
||||||
@ -104,8 +126,11 @@
|
|||||||
workloads is legacy applications that typically are
|
workloads is legacy applications that typically are
|
||||||
persistent over time.</para>
|
persistent over time.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Storage</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Storage: Workloads targeted for a compute-focused
|
<para>Workloads targeted for a compute-focused
|
||||||
OpenStack cloud generally do not require any
|
OpenStack cloud generally do not require any
|
||||||
persistent block storage (although some usages of
|
persistent block storage (although some usages of
|
||||||
Hadoop with HDFS may dictate the use of persistent
|
Hadoop with HDFS may dictate the use of persistent
|
||||||
@ -118,8 +143,11 @@
|
|||||||
scale the object store or shared file system to match
|
scale the object store or shared file system to match
|
||||||
the storage demand.</para>
|
the storage demand.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>User interface</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>User Interface: Like any other cloud architecture, a
|
<para>Like any other cloud architecture, a
|
||||||
compute-focused OpenStack cloud requires an on-demand
|
compute-focused OpenStack cloud requires an on-demand
|
||||||
and self-service user interface. End users must be
|
and self-service user interface. End users must be
|
||||||
able to provision computing power, storage, networks
|
able to provision computing power, storage, networks
|
||||||
@ -127,8 +155,11 @@
|
|||||||
scaling the infrastructure up to a substantial level
|
scaling the infrastructure up to a substantial level
|
||||||
without disrupting host operations.</para>
|
without disrupting host operations.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Security</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Security: Security is going to be highly dependent
|
<para>Security is going to be highly dependent
|
||||||
on the business requirements. For example, a
|
on the business requirements. For example, a
|
||||||
computationally intense drug discovery application
|
computationally intense drug discovery application
|
||||||
will obviously have much higher security requirements
|
will obviously have much higher security requirements
|
||||||
@ -137,11 +168,14 @@
|
|||||||
recommendations and guidelines provided in the
|
recommendations and guidelines provided in the
|
||||||
OpenStack Security Guide are applicable.</para>
|
OpenStack Security Guide are applicable.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist></section>
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
|
</section>
|
||||||
<section xml:id="operational-considerations-compute-focus-user">
|
<section xml:id="operational-considerations-compute-focus-user">
|
||||||
<title>Operational considerations</title>
|
<title>Operational considerations</title>
|
||||||
<para>The compute intensive cloud from the operational perspective
|
<para>The compute intensive cloud from the operational perspective
|
||||||
is similar to the requirements for the general-purpose cloud.
|
is similar to the requirements for the general-purpose cloud.
|
||||||
More details on operational requirements can be found in the
|
More details on operational requirements can be found in the
|
||||||
general-purpose design section.</para></section>
|
general-purpose design section.</para>
|
||||||
|
</section>
|
||||||
</section>
|
</section>
|
||||||
|
@ -1,4 +1,8 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE section [
|
||||||
|
<!ENTITY % openstack SYSTEM "../../common/entities/openstack.ent">
|
||||||
|
%openstack;
|
||||||
|
]>
|
||||||
<section xmlns="http://docbook.org/ns/docbook"
|
<section xmlns="http://docbook.org/ns/docbook"
|
||||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
@ -31,14 +35,19 @@
|
|||||||
performance and scalability of the design architecture. A
|
performance and scalability of the design architecture. A
|
||||||
number of different factors must be considered in the design
|
number of different factors must be considered in the design
|
||||||
process:</para>
|
process:</para>
|
||||||
<itemizedlist>
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Cost</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Cost: The overall cost of the solution will play a
|
<para>The overall cost of the solution will play a
|
||||||
major role in what storage architecture and the
|
major role in what storage architecture and the
|
||||||
resulting storage hardware that is selected.</para>
|
resulting storage hardware that is selected.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Performance</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Performance: The performance of the solution,
|
<para>The performance of the solution,
|
||||||
measured by observing the latency of storage I-O
|
measured by observing the latency of storage I-O
|
||||||
requests, also plays a major role. In a
|
requests, also plays a major role. In a
|
||||||
compute-focused OpenStack cloud storage latency could
|
compute-focused OpenStack cloud storage latency could
|
||||||
@ -48,10 +57,11 @@
|
|||||||
storage can have a significant impact on the overall
|
storage can have a significant impact on the overall
|
||||||
performance of the application.</para>
|
performance of the application.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</varlistentry>
|
||||||
<itemizedlist>
|
<varlistentry>
|
||||||
|
<term>Scalability</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Scalability: "Scalability" refers to how well the
|
<para>"Scalability" refers to how well the
|
||||||
storage solution performs as it is expanded up to its
|
storage solution performs as it is expanded up to its
|
||||||
maximum size. A storage solution that performs well in
|
maximum size. A storage solution that performs well in
|
||||||
small configurations but has degrading performance as
|
small configurations but has degrading performance as
|
||||||
@ -61,8 +71,11 @@
|
|||||||
ability of the storage solution to continue to perform
|
ability of the storage solution to continue to perform
|
||||||
well as it expands is important.</para>
|
well as it expands is important.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Expandability</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Expandability: Here we are referring to the overall
|
<para>Here we are referring to the overall
|
||||||
ability of the solution to grow. A storage solution
|
ability of the solution to grow. A storage solution
|
||||||
that expands to 50 PB is considered more expandable
|
that expands to 50 PB is considered more expandable
|
||||||
than a solution that only scales to 10 PB. Note that
|
than a solution that only scales to 10 PB. Note that
|
||||||
@ -70,7 +83,8 @@
|
|||||||
scalability which is a measure of the solution's
|
scalability which is a measure of the solution's
|
||||||
performance as it expands.</para>
|
performance as it expands.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
<para>Latency is one of the key considerations in a
|
<para>Latency is one of the key considerations in a
|
||||||
storage-focused OpenStack cloud . Using solid-state disks
|
storage-focused OpenStack cloud . Using solid-state disks
|
||||||
(SSDs) to minimize latency for instance storage and reduce CPU
|
(SSDs) to minimize latency for instance storage and reduce CPU
|
||||||
@ -97,9 +111,11 @@
|
|||||||
<para>Some potential impacts that might affect a particular
|
<para>Some potential impacts that might affect a particular
|
||||||
storage architecture (and corresponding storage hardware) of a
|
storage architecture (and corresponding storage hardware) of a
|
||||||
Storage-focused OpenStack cloud:</para>
|
Storage-focused OpenStack cloud:</para>
|
||||||
<itemizedlist>
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Connectivity</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Connectivity: Based on the storage solution
|
<para>Based on the storage solution
|
||||||
selected, ensure the connectivity matches the storage
|
selected, ensure the connectivity matches the storage
|
||||||
solution requirements. If a centralized storage array
|
solution requirements. If a centralized storage array
|
||||||
is selected it is important to determine how the
|
is selected it is important to determine how the
|
||||||
@ -109,48 +125,70 @@
|
|||||||
characteristics will minimize latency to boost the
|
characteristics will minimize latency to boost the
|
||||||
overall performance of the design.</para>
|
overall performance of the design.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Latency</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Latency: Determine if the use case will have
|
<para>Determine if the use case will have
|
||||||
consistent or highly variable latency.</para>
|
consistent or highly variable latency.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Throughput</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Throughput: Ensure that the storage solution
|
<para>Ensure that the storage solution
|
||||||
throughput is optimized based on application
|
throughput is optimized based on application
|
||||||
requirements.</para>
|
requirements.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Server hardware</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Server Hardware: Use of DAS impacts the server
|
<para>Use of DAS impacts the server
|
||||||
hardware choice and affects host density, instance
|
hardware choice and affects host density, instance
|
||||||
density, power density, OS-hypervisor, and management
|
density, power density, OS-hypervisor, and management
|
||||||
tools, to name a few.</para>
|
tools, to name a few.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
<section xml:id="compute-server-hardware-selection">
|
<section xml:id="compute-server-hardware-selection">
|
||||||
<title>Compute (server) hardware selection</title>
|
<title>Compute (server) hardware selection</title>
|
||||||
<para>Compute (server) hardware must be evaluated against four
|
<para>Compute (server) hardware must be evaluated against four
|
||||||
opposing dimensions:</para>
|
opposing dimensions:</para>
|
||||||
<itemizedlist>
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Server density</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Server density: A measure of how many servers can
|
<para>A measure of how many servers can
|
||||||
fit into a given measure of physical space, such as a
|
fit into a given measure of physical space, such as a
|
||||||
rack unit [U].</para>
|
rack unit [U].</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Resource capacity</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Resource capacity: The number of CPU cores, how much
|
<para>The number of CPU cores, how much
|
||||||
RAM, or how much storage a given server will
|
RAM, or how much storage a given server will
|
||||||
deliver.</para>
|
deliver.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Expandability</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Expandability: The number of additional resources
|
<para>The number of additional resources
|
||||||
that can be added to a server before it has reached
|
that can be added to a server before it has reached
|
||||||
its limit.</para>
|
its limit.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Cost</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Cost: The relative of the hardware weighted against
|
<para>The relative of the hardware weighted against
|
||||||
the level of design effort needed to build the
|
the level of design effort needed to build the
|
||||||
system.</para>
|
system.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
<para>The dimensions need to be weighed against each other to
|
<para>The dimensions need to be weighed against each other to
|
||||||
determine the best design for the desired purpose. For
|
determine the best design for the desired purpose. For
|
||||||
example, increasing server density can mean sacrificing
|
example, increasing server density can mean sacrificing
|
||||||
@ -231,31 +269,40 @@
|
|||||||
<para>Other factors that will strongly influence server hardware
|
<para>Other factors that will strongly influence server hardware
|
||||||
selection for a storage-focused OpenStack design
|
selection for a storage-focused OpenStack design
|
||||||
architecture:</para>
|
architecture:</para>
|
||||||
<itemizedlist>
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Instance density</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Instance density: In this architecture, instance
|
<para>In this architecture, instance
|
||||||
density and CPU-RAM oversubscription are lower. More
|
density and CPU-RAM oversubscription are lower. More
|
||||||
hosts will be required to support the anticipated
|
hosts will be required to support the anticipated
|
||||||
scale, especially if the design uses dual-socket
|
scale, especially if the design uses dual-socket
|
||||||
hardware designs.</para>
|
hardware designs.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Host density</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Host density: Another option to address the higher
|
<para>Another option to address the higher
|
||||||
host count is to use a quad socket platform. Taking
|
host count is to use a quad socket platform. Taking
|
||||||
this approach will decrease host density which also
|
this approach will decrease host density which also
|
||||||
increases rack count. This configuration affects the
|
increases rack count. This configuration affects the
|
||||||
number of power connections and also impacts network
|
number of power connections and also impacts network
|
||||||
and cooling requirements.</para>
|
and cooling requirements.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Power and cooling density</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Power and cooling density: The power and cooling
|
<para>The power and cooling
|
||||||
density requirements might be lower than with blade,
|
density requirements might be lower than with blade,
|
||||||
sled, or 1U server designs due to lower host density
|
sled, or 1U server designs due to lower host density
|
||||||
(by using 2U, 3U or even 4U server designs). For data
|
(by using 2U, 3U or even 4U server designs). For data
|
||||||
centers with older infrastructure, this might be a
|
centers with older infrastructure, this might be a
|
||||||
desirable feature.</para>
|
desirable feature.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
<para>Storage-focused OpenStack design architecture server
|
<para>Storage-focused OpenStack design architecture server
|
||||||
hardware selection should focus on a "scale up" versus "scale
|
hardware selection should focus on a "scale up" versus "scale
|
||||||
out" solution. The determination of which will be the best
|
out" solution. The determination of which will be the best
|
||||||
@ -267,17 +314,22 @@
|
|||||||
<title>Networking hardware selection</title>
|
<title>Networking hardware selection</title>
|
||||||
<para>Some of the key considerations that should be included in
|
<para>Some of the key considerations that should be included in
|
||||||
the selection of networking hardware include:</para>
|
the selection of networking hardware include:</para>
|
||||||
<itemizedlist>
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Port count</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Port count: The user will require networking
|
<para>The user will require networking
|
||||||
hardware that has the requisite port count.</para>
|
hardware that has the requisite port count.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Port density</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Port density: The network design will be affected by
|
<para>The network design will be affected by
|
||||||
the physical space that is required to provide the
|
the physical space that is required to provide the
|
||||||
requisite port count. A switch that can provide 48 10
|
requisite port count. A switch that can provide 48 10 GbE
|
||||||
GbE ports in 1U has a much higher port density than a
|
ports in 1U has a much higher port density than a
|
||||||
switch that provides 24 10 GbE ports in 2U. On a
|
switch that provides 24 10 GbE ports in 2U. On a
|
||||||
general scale, a higher port density leaves more rack
|
general scale, a higher port density leaves more rack
|
||||||
space for compute or storage components which is
|
space for compute or storage components which is
|
||||||
preferred. It is also important to consider fault
|
preferred. It is also important to consider fault
|
||||||
@ -285,13 +337,19 @@
|
|||||||
switches are more expensive, therefore it is important
|
switches are more expensive, therefore it is important
|
||||||
not to over design the network.</para>
|
not to over design the network.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Port speed</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Port speed: The networking hardware must support the
|
<para>The networking hardware must support the
|
||||||
proposed network speed, for example: 1 GbE, 10 GbE, or
|
proposed network speed, for example: 1 GbE, 10 GbE, or
|
||||||
40 GbE (or even 100 GbE).</para>
|
40 GbE (or even 100 GbE).</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Redundancy</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Redundancy: The level of network hardware redundancy
|
<para>The level of network hardware redundancy
|
||||||
required is influenced by the user requirements for
|
required is influenced by the user requirements for
|
||||||
high availability and cost considerations. Network
|
high availability and cost considerations. Network
|
||||||
redundancy can be achieved by adding redundant power
|
redundancy can be achieved by adding redundant power
|
||||||
@ -300,22 +358,30 @@
|
|||||||
User requirements will determine if a completely
|
User requirements will determine if a completely
|
||||||
redundant network infrastructure is required.</para>
|
redundant network infrastructure is required.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Power requirements</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Power requirements: Make sure that the physical data
|
<para>Make sure that the physical data
|
||||||
center provides the necessary power for the selected
|
center provides the necessary power for the selected
|
||||||
network hardware. This is not typically an issue for
|
network hardware. This is not typically an issue for
|
||||||
top of rack (ToR) switches, but may be an issue for
|
top of rack (ToR) switches, but may be an issue for
|
||||||
spine switches in a leaf and spine fabric, or end of
|
spine switches in a leaf and spine fabric, or end of
|
||||||
row (EoR) switches.</para>
|
row (EoR) switches.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Protocol support</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Protocol support: It is possible to gain even more
|
<para>It is possible to gain even more
|
||||||
performance out of a single storage system by using
|
performance out of a single storage system by using
|
||||||
specialized network technologies such as RDMA, SRP,
|
specialized network technologies such as RDMA, SRP,
|
||||||
iSER and SCST. The specifics for using these
|
iSER and SCST. The specifics for using these
|
||||||
technologies is beyond the scope of this book.</para>
|
technologies is beyond the scope of this book.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist></section>
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
|
</section>
|
||||||
<section xml:id="software-selection-arch-storage">
|
<section xml:id="software-selection-arch-storage">
|
||||||
<title>Software selection</title>
|
<title>Software selection</title>
|
||||||
<para>Selecting software to be included in a storage-focused
|
<para>Selecting software to be included in a storage-focused
|
||||||
@ -346,9 +412,11 @@
|
|||||||
support it.</para>
|
support it.</para>
|
||||||
<para>Some areas that could be impacted by the selection of OS and
|
<para>Some areas that could be impacted by the selection of OS and
|
||||||
hypervisor include:</para>
|
hypervisor include:</para>
|
||||||
<itemizedlist>
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Cost</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Cost: Selection of a commercially supported
|
<para>Selection of a commercially supported
|
||||||
hypervisor, such as Microsoft Hyper-V, will result in
|
hypervisor, such as Microsoft Hyper-V, will result in
|
||||||
a different cost model rather than selected a
|
a different cost model rather than selected a
|
||||||
community-supported open source hypervisor like
|
community-supported open source hypervisor like
|
||||||
@ -358,8 +426,11 @@
|
|||||||
requirements might dictate a specific or commercially
|
requirements might dictate a specific or commercially
|
||||||
supported hypervisor.</para>
|
supported hypervisor.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Supportability</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Supportability: Whichever hypervisor is chosen, the
|
<para>Whichever hypervisor is chosen, the
|
||||||
staff needs to have appropriate training and knowledge
|
staff needs to have appropriate training and knowledge
|
||||||
to support the selected OS and hypervisor combination.
|
to support the selected OS and hypervisor combination.
|
||||||
If they do not training will need to be provided,
|
If they do not training will need to be provided,
|
||||||
@ -372,8 +443,11 @@
|
|||||||
resources. Either decision has a cost that will have
|
resources. Either decision has a cost that will have
|
||||||
an impact on the design.</para>
|
an impact on the design.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Management tools</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Management tools: The management tools used for
|
<para>The management tools used for
|
||||||
Ubuntu and Kinstance differ from the management tools
|
Ubuntu and Kinstance differ from the management tools
|
||||||
for VMware vSphere. Although both OS and hypervisor
|
for VMware vSphere. Although both OS and hypervisor
|
||||||
combinations are supported by OpenStack, there will
|
combinations are supported by OpenStack, there will
|
||||||
@ -381,16 +455,22 @@
|
|||||||
design as a result of the selection of one combination
|
design as a result of the selection of one combination
|
||||||
versus the other.</para>
|
versus the other.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Scale and performance</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Scale and performance: Make sure that selected OS
|
<para>Make sure that selected OS
|
||||||
and hypervisor combination meet the appropriate scale
|
and hypervisor combination meet the appropriate scale
|
||||||
and performance requirements needed for this general
|
and performance requirements needed for this general
|
||||||
purpose OpenStack cloud. The chosen architecture will
|
purpose OpenStack cloud. The chosen architecture will
|
||||||
need to meet the targeted instance-host ratios with
|
need to meet the targeted instance-host ratios with
|
||||||
the selected OS-hypervisor combination.</para>
|
the selected OS-hypervisor combination.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Security</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Security: Make sure that the design can accommodate
|
<para>Make sure that the design can accommodate
|
||||||
the regular periodic installation of application
|
the regular periodic installation of application
|
||||||
security patches while maintaining the required
|
security patches while maintaining the required
|
||||||
workloads. The frequency of security patches for the
|
workloads. The frequency of security patches for the
|
||||||
@ -398,8 +478,11 @@
|
|||||||
on performance and the patch installation process
|
on performance and the patch installation process
|
||||||
could affect maintenance windows.</para>
|
could affect maintenance windows.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Supported features</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Supported features: Determine what features of
|
<para>Determine what features of
|
||||||
OpenStack are required. This will often determine the
|
OpenStack are required. This will often determine the
|
||||||
selection of the OS-hypervisor combination. Certain
|
selection of the OS-hypervisor combination. Certain
|
||||||
features are only available with specific OSs or
|
features are only available with specific OSs or
|
||||||
@ -407,8 +490,11 @@
|
|||||||
available, the design might need to be modified to
|
available, the design might need to be modified to
|
||||||
meet the user requirements.</para>
|
meet the user requirements.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
<varlistentry>
|
||||||
|
<term>Interoperability</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Interoperability: Consideration should be given to
|
<para>Consideration should be given to
|
||||||
the ability of the selected OS-hypervisor combination
|
the ability of the selected OS-hypervisor combination
|
||||||
to interoperate or co-exist with other OS-hypervisors
|
to interoperate or co-exist with other OS-hypervisors
|
||||||
,or other software solutions in the overall design, if
|
,or other software solutions in the overall design, if
|
||||||
@ -419,7 +505,9 @@
|
|||||||
address if the two sets of tools need to interoperate.
|
address if the two sets of tools need to interoperate.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist></section>
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
|
</section>
|
||||||
<section xml:id="openstack-components-arch-storage">
|
<section xml:id="openstack-components-arch-storage">
|
||||||
<title>OpenStack components</title>
|
<title>OpenStack components</title>
|
||||||
<para>The selection of OpenStack components has a significant
|
<para>The selection of OpenStack components has a significant
|
||||||
@ -439,36 +527,36 @@
|
|||||||
following components would typically be used:</para>
|
following components would typically be used:</para>
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Keystone</para>
|
<para>OpenStack Identity (keystone)</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Horizon</para>
|
<para>OpenStack dashboard (horizon)</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Nova (including the use of multiple hypervisor
|
<para>OpenStack Compute (nova) (including the use of multiple hypervisor
|
||||||
drivers)</para>
|
drivers)</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Swift (or another object storage solution)</para>
|
<para>OpenStack Object Storage (swift) (or another object storage solution)</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Cinder</para>
|
<para>OpenStack Block Storage (cinder)</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Glance</para>
|
<para>OpenStack Image Service (glance)</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Neutron or nova-network</para>
|
<para>OpenStack Networking (neutron) or nova-network</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
<para>The exclusion of certain OpenStack components may limit or
|
<para>The exclusion of certain OpenStack components may limit or
|
||||||
constrain the functionality of other components. If a design
|
constrain the functionality of other components. If a design
|
||||||
opts to include Heat but exclude Ceilometer, then the design
|
opts to include Orchestration but exclude Telemetry, then the design
|
||||||
will not be able to take advantage of Heat's auto scaling
|
will not be able to take advantage of Orchestration's auto scaling
|
||||||
functionality (which relies on information from Ceilometer).
|
functionality (which relies on information from Telemetry).
|
||||||
Due to the fact that you can use Heat to spin up a large
|
Due to the fact that you can use Orchestration to spin up a large
|
||||||
number of instances to perform the compute-intensive
|
number of instances to perform the compute-intensive
|
||||||
processing, including Heat in a compute-focused architecture
|
processing, including Orchestration in a compute-focused architecture
|
||||||
design is strongly recommended.</para></section>
|
design is strongly recommended.</para></section>
|
||||||
<section xml:id="supplemental-software-arch-storage">
|
<section xml:id="supplemental-software-arch-storage">
|
||||||
<title>Supplemental software</title>
|
<title>Supplemental software</title>
|
||||||
@ -478,18 +566,21 @@
|
|||||||
any given OpenStack design.</para></section>
|
any given OpenStack design.</para></section>
|
||||||
<section xml:id="networking-software-arch-storage">
|
<section xml:id="networking-software-arch-storage">
|
||||||
<title>Networking software</title>
|
<title>Networking software</title>
|
||||||
<para>OpenStack Neutron provides a wide variety of networking
|
<para>OpenStack Networking (neutron) provides a wide variety of networking
|
||||||
services for instances. There are many additional networking
|
services for instances. There are many additional networking
|
||||||
software packages that may be useful to manage the OpenStack
|
software packages that may be useful to manage the OpenStack
|
||||||
components themselves. Some examples include HAProxy,
|
components themselves. Some examples include HAProxy,
|
||||||
keepalived, and various routing daemons (like Quagga). Some of
|
keepalived, and various routing daemons (like Quagga). Some of
|
||||||
these software packages, HAProxy in particular, are described
|
these software packages, HAProxy in particular, are described
|
||||||
in more detail in the OpenStack HA Guide (refer to Chapter 8
|
in more detail in the <citetitle>OpenStack High Availability
|
||||||
of the OpenStack High Availability Guide). For a general
|
Guide</citetitle> (refer to the <link
|
||||||
purpose OpenStack cloud, it is reasonably likely that the
|
xlink:href="http://docs.openstack.org/high-availability-guide/content/ch-network.html">Network
|
||||||
OpenStack infrastructure components will need to be highly
|
controller cluster stack chapter</link> of the OpenStack High
|
||||||
available, and therefore networking software packages like
|
Availability Guide). For a general purpose OpenStack cloud, it
|
||||||
HAProxy will need to be included.</para></section>
|
is reasonably likely that the OpenStack infrastructure
|
||||||
|
components will need to be highly available, and therefore
|
||||||
|
networking software packages like HAProxy will need to be
|
||||||
|
included.</para></section>
|
||||||
<section xml:id="management-software-arch-storage">
|
<section xml:id="management-software-arch-storage">
|
||||||
<title>Management software</title>
|
<title>Management software</title>
|
||||||
<para>This includes software for providing clustering, logging,
|
<para>This includes software for providing clustering, logging,
|
||||||
@ -504,8 +595,8 @@
|
|||||||
Therefore, the impact of including (or not including) these
|
Therefore, the impact of including (or not including) these
|
||||||
software packages is determined by the availability of the
|
software packages is determined by the availability of the
|
||||||
cloud infrastructure and the complexity of supporting the
|
cloud infrastructure and the complexity of supporting the
|
||||||
configuration after it is deployed. The OpenStack High
|
configuration after it is deployed. The <citetitle>OpenStack High
|
||||||
Availability Guide provides more details on the installation
|
Availability Guide</citetitle> provides more details on the installation
|
||||||
and configuration of Corosync and Pacemaker, should these
|
and configuration of Corosync and Pacemaker, should these
|
||||||
packages need to be included in the design.</para>
|
packages need to be included in the design.</para>
|
||||||
<para>Requirements for logging, monitoring, and alerting are
|
<para>Requirements for logging, monitoring, and alerting are
|
||||||
@ -545,7 +636,7 @@
|
|||||||
of the OpenStack services.</para>
|
of the OpenStack services.</para>
|
||||||
<para>MySQL is generally considered to be the de facto database
|
<para>MySQL is generally considered to be the de facto database
|
||||||
for OpenStack, however, other compatible databases are also
|
for OpenStack, however, other compatible databases are also
|
||||||
known to work. Note, however, that Ceilometer uses
|
known to work. Note, however, that Telemetry uses
|
||||||
MongoDB.</para>
|
MongoDB.</para>
|
||||||
<para>The solution selected to provide high availability for the
|
<para>The solution selected to provide high availability for the
|
||||||
database will change based on the selected database. If MySQL
|
database will change based on the selected database. If MySQL
|
||||||
@ -570,4 +661,6 @@
|
|||||||
components might require it depending on the specific
|
components might require it depending on the specific
|
||||||
implementation.</para>
|
implementation.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist></section></section>
|
</itemizedlist>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
@ -58,13 +58,16 @@
|
|||||||
other locations for the same reason.</para>
|
other locations for the same reason.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
<para>Examples of such legal frameworks include the data
|
<para>
|
||||||
protection framework of the European Union
|
Examples of such legal frameworks include the <link
|
||||||
(http://ec.europa.eu/justice/data-protection/ ) and the
|
xlink:href="http://ec.europa.eu/justice/data-protection/">data
|
||||||
requirements of the Financial Industry Regulatory Authority
|
protection framework</link> of the European Union and the
|
||||||
(http://www.finra.org/Industry/Regulation/FINRARules/ ) in the
|
requirements of the <link
|
||||||
United States. Consult a local regulatory body for more
|
xlink:href="http://www.finra.org/Industry/Regulation/FINRARules/">Financial
|
||||||
information.</para></section>
|
Industry Regulatory Authority</link> in the United
|
||||||
|
States. Consult a local regulatory body for more information.
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
<section xml:id="technical-requirements-storage-focus">
|
<section xml:id="technical-requirements-storage-focus">
|
||||||
<title>Technical requirements</title>
|
<title>Technical requirements</title>
|
||||||
<para>The following are some technical requirements that could be
|
<para>The following are some technical requirements that could be
|
||||||
|
Loading…
Reference in New Issue
Block a user