1c76ef3f4a
Small scale edits to the examples appearing in the specialized chapter. Correct typos. Change-Id: I08d80b5268beafcae5fa4ea7120839c341ce3481 Implements: blueprint arch-guide
81 lines
3.8 KiB
XML
81 lines
3.8 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE section [
|
|
<!ENTITY % openstack SYSTEM "../../common/entities/openstack.ent">
|
|
%openstack;
|
|
]>
|
|
<section xmlns="http://docbook.org/ns/docbook"
|
|
xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
version="5.0"
|
|
xml:id="arch-guide-openstack-on-openstack">
|
|
<?dbhtml stop-chunking?>
|
|
<title>OpenStack on OpenStack</title>
|
|
<para>In some cases, users may run OpenStack nested on top
|
|
of another OpenStack cloud. This scenario describes how to
|
|
manage and provision complete OpenStack environments on instances
|
|
supported by hypervisors and servers, which an underlying OpenStack
|
|
environment controls.</para>
|
|
<para>Public cloud providers can use this technique to manage the
|
|
upgrade and maintenance process on complete OpenStack environments.
|
|
Developers and those testing OpenStack can also use this
|
|
technique to provision their own OpenStack environments on
|
|
available OpenStack Compute resources, whether public or
|
|
private.</para>
|
|
<section xml:id="challenges-for-nested-cloud">
|
|
<title>Challenges</title>
|
|
<para>The network aspect of deploying a nested cloud is the most
|
|
complicated aspect of this architecture. You must expose VLANs
|
|
to the physical ports on which the underlying cloud runs because
|
|
the bare metal cloud owns all the
|
|
hardware. You must also expose them to the nested
|
|
levels as well. Alternatively, you can use the network overlay
|
|
technologies on the OpenStack environment running on the host
|
|
OpenStack environment to provide the required software defined
|
|
networking for the deployment.</para>
|
|
</section>
|
|
<section xml:id="hypervisor-nested-cloud">
|
|
<title>Hypervisor</title>
|
|
<para>In this example architecture, consider which
|
|
approach you should take to provide a nested
|
|
hypervisor in OpenStack. This decision influences which
|
|
operating systems you use for the deployment of the nested
|
|
OpenStack deployments.</para>
|
|
</section>
|
|
<section xml:id="possible-solutions-nested-cloud-deployment">
|
|
<title>Possible solutions: deployment</title>
|
|
<para>Deployment of a full stack can be challenging but you can mitigate
|
|
this difficulty by creating a Heat template to deploy the
|
|
entire stack, or a configuration management system. After creating
|
|
the Heat template, you can automate the deployment of additional stacks.</para>
|
|
<para>The OpenStack-on-OpenStack project (<glossterm>TripleO</glossterm>)
|
|
addresses this issue. Currently, however, the project does
|
|
not completely cover nested stacks. For more information, see
|
|
<link xlink:href="https://wiki.openstack.org/wiki/TripleO">
|
|
https://wiki.openstack.org/wiki/TripleO</link>.</para>
|
|
</section>
|
|
<section xml:id="possible-solutions-nested-cloud-hypervisor">
|
|
<title>Possible solutions: hypervisor</title>
|
|
<para>In the case of running TripleO, the underlying OpenStack
|
|
cloud deploys the Compute nodes as bare-metal. You then deploy
|
|
OpenStack on these Compute bare-metal servers with the
|
|
appropriate hypervisor, such as KVM.</para>
|
|
<para>In the case of running smaller OpenStack clouds for testing
|
|
purposes, where performance is not a critical factor, you can use
|
|
QEMU instead. It is also possible to run a KVM hypervisor in an instance
|
|
(see <link xlink:href="http://davejingtian.org/2014/03/30/nested-kvm-just-for-fun/">
|
|
http://davejingtian.org/2014/03/30/nested-kvm-just-for-fun/</link>),
|
|
though this is not a supported configuration, and could be a
|
|
complex solution for such a use case.</para>
|
|
</section>
|
|
<section xml:id="nested-cloud-diagram">
|
|
<title>Diagram</title>
|
|
<para>
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata contentwidth="4in" fileref="../figures/Specialized_OOO.png"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
</para>
|
|
</section>
|
|
</section>
|