Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fixes bug 938365 There was a lack of storage concepts in the early parts of the documentation. This adds a new section with a kick-start table to allow first time readers to quickly understand the different types of storage in an OpenStack installation. Just a few edits -- double-check the ephemeral explanation as I took it from the aboutcompute.xml file. Change-Id: I447423f98bc3e36b6018179cdd81d8bb6d56b221
- Loading branch information
1 parent
7b8e191
commit 2597384
Showing
2 changed files
with
80 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<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="storage-concepts"> | ||
<title>Storage Concepts</title> | ||
<para> | ||
Storage is found in many parts of the OpenStack stack, and the | ||
differing types can cause confusion to even experienced cloud | ||
engineers. Here's a simple chart to kick-start your understanding: | ||
</para> | ||
<table rules="all"> | ||
<caption>Types of Storage</caption> | ||
<col width="33%" /> | ||
<col width="33%" /> | ||
<col width="33%" /> | ||
<thead> | ||
<tr> | ||
<td>On-instance / ephemeral </td> | ||
<td>Volumes block storage (Cinder)</td> | ||
<td>Object Storage (Swift)</td> | ||
</tr> | ||
</thead> | ||
<tbody> | ||
<tr> | ||
<td>Used for running Operating System and scratch space</td> | ||
<td>Used for adding additional persistent storage to a virtual | ||
machine (VM)</td> | ||
<td>Used for storing virtual machine images and data</td> | ||
</tr> | ||
<tr> | ||
<td>Persists until VM is terminated</td> | ||
<td>Persists until deleted</td> | ||
<td>Persists until deleted</td> | ||
</tr> | ||
<tr> | ||
<td>Access associated with a VM</td> | ||
<td>Access associated with a VM</td> | ||
<td>Available from anywhere</td> | ||
</tr> | ||
<tr> | ||
<td>Implemented as a filesystem underlying OpenStack Compute</td> | ||
<td>Mounted via OpenStack Block-Storage controlled protocol | ||
(for example, iSCSI)</td> | ||
<td>REST API</td> | ||
</tr> | ||
<tr> | ||
<td>Administrator configures size setting, based on | ||
flavors</td> | ||
<td>Sizings based on need</td> | ||
<td>Easily scalable for future growth</td> | ||
</tr> | ||
<tr> | ||
<td>Example: 10GB first disk, 30GB/core second disk</td> | ||
<td>Example: 1TB "extra hard drive"</td> | ||
<td>Example: 10s of TBs of dataset storage</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
<para> Other points of note include: | ||
<itemizedlist> | ||
<listitem><para><emphasis>OpenStack Object Storage is not used like a | ||
traditional hard drive.</emphasis> Object storage is all | ||
about relaxing some of the constraints of a POSIX-style file | ||
system. The access to it is API-based (and the API uses | ||
http). This is a good idea as if you don't have to provide | ||
atomic operations (that is, you can rely on eventual | ||
consistency), you can much more easily scale a storage | ||
system and avoid a central point of failure. </para></listitem> | ||
<listitem><para><emphasis>The OpenStack Image Service is used to manage | ||
the virtual machine images in an OpenStack cluster, not store them. | ||
</emphasis> Instead, it provides an abstraction to different methods | ||
for storage - a bridge to the storage, not the storage itself.</para></listitem> | ||
<listitem><para><emphasis>OpenStack Object Storage can function on its | ||
own.</emphasis> The Object Storage (swift) product can be | ||
used independently of the Compute (nova) product.</para></listitem> | ||
</itemizedlist> | ||
</para> | ||
</section> |