Merge lp:~koolhead17/openstackbook/cssbook into lp:openstackbook

Proposed by koolhead17
Status: Needs review
Proposed branch: lp:~koolhead17/openstackbook/cssbook
Merge into: lp:openstackbook
Diff against target: 1258 lines (+313/-292)
8 files modified
Image.xml (+5/-4)
Installation.xml (+10/-14)
Introduction.xml (+12/-10)
Openstackbook.xml (+1/-1)
Storage.xml (+1/-1)
pom.xml (+99/-73)
target/docbkx/images/cloud/cover.svg (+1/-1)
target/docbkx/pdf/Openstackbook.fo (+184/-188)
To merge this branch: bzr merge lp:~koolhead17/openstackbook/cssbook
Reviewer Review Type Date Requested Status
Kiran Murari Pending
Review via email: mp+89312@code.launchpad.net

Description of the change

To post a comment you must log in.

Unmerged revisions

16. By Atul Jha <email address hidden>

This will fix #917288

15. By Kiran Murari

Merge Lorin's glance changes

14. By Kiran Murari

Merge Annes's epub changes, fix typos

13. By Kiran Murari

Changed build date

12. By Kiran Murari

Minor edits to Introduction chapter

11. By Kiran Murari

modified vlan_interface macro in nova.conf

10. By Kiran Murari

minor edits

9. By Kiran Murari

fix bug 878782

8. By Kiran Murari

fix bug 878778

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'Image.xml'
--- Image.xml 2011-10-19 14:27:25 +0000
+++ Image.xml 2012-01-19 18:01:31 +0000
@@ -1,8 +1,8 @@
1<?xml version="1.0" encoding="UTF-8"?><chapter xmlns:db="http://docbook.org/ns/docbook" xmlns="http://docbook.org/ns/docbook" xml:id="Image_Management-d1e1252" version="5.0" xml:base="Image.xml">1<?xml version="1.0" encoding="UTF-8"?><chapter xmlns:db="http://docbook.org/ns/docbook" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="Image_Management-d1e1252" version="5.0" xml:base="Image.xml">
2 <title>Image Management</title>2 <title>Image Management</title>
3<section xml:id="Introduction-d1e1257">3<section xml:id="Introduction-d1e1257">
4<title>Introduction</title>4<title>Introduction</title>
5<para> There are several pre-built images for OpenStack available from various sources. You can download such images and use them to get familiar with OpenStack. You can refer to http://docs.openstack.org/cactus/openstack-compute/admin/content/starting-images.html for details on using such images.</para>5<para> There are several pre-built images for OpenStack available from various sources. You can download such images and use them to get familiar with OpenStack. You can refer to <link xlink:href="http://docs.openstack.org/diablo/openstack-compute/admin/content/starting-images.html">http://docs.openstack.org/diablo/openstack-compute/admin/content/starting-images.html</link> for details on using such images.</para>
6<para>For any production deployment, you may like to have the ability to bundle custom images, with a custom set of applications or configuration. This chapter will guide you through the process of creating Linux images of Debian and RedHat based distributions from scratch. We have also covered an approach to bundling Windows images.6<para>For any production deployment, you may like to have the ability to bundle custom images, with a custom set of applications or configuration. This chapter will guide you through the process of creating Linux images of Debian and RedHat based distributions from scratch. We have also covered an approach to bundling Windows images.
7 </para>7 </para>
8 <para>There are some minor differences in the way you would bundle a Linux image, based on the distribution. Ubuntu makes it very easy by providing cloud-init package, which can be used to take care of the instance configuration at the time of launch. cloud-init handles importing ssh keys for password-less login, setting host name etc. The instance acquires the instance specific configuration from Nova-compute by connecting to a meta data interface running on 169.254.169.254.</para>8 <para>There are some minor differences in the way you would bundle a Linux image, based on the distribution. Ubuntu makes it very easy by providing cloud-init package, which can be used to take care of the instance configuration at the time of launch. cloud-init handles importing ssh keys for password-less login, setting host name etc. The instance acquires the instance specific configuration from Nova-compute by connecting to a meta data interface running on 169.254.169.254.</para>
@@ -80,7 +80,6 @@
80<programlisting> 80<programlisting>
81LABEL=uec-rootfs / ext4 defaults 0 081LABEL=uec-rootfs / ext4 defaults 0 0
82</programlisting> 82</programlisting>
83</section>
84<para>Also remove the network persistence rules from /etc/udev/rules.d as their presence will result in the network interface in the instance coming up as an interface other than eth0.</para>83<para>Also remove the network persistence rules from /etc/udev/rules.d as their presence will result in the network interface in the instance coming up as an interface other than eth0.</para>
8584
86<programlisting> 85<programlisting>
@@ -179,7 +178,7 @@
179cat /root/.ssh/authorized_keys178cat /root/.ssh/authorized_keys
180echo "************************"179echo "************************"
181</programlisting> 180</programlisting>
182</section>181
183<para>Unmount the Loop partition</para>182<para>Unmount the Loop partition</para>
184183
185<programlisting> 184<programlisting>
@@ -264,4 +263,6 @@
264euca-register mybucket/windowsserver.img.manifest.xml263euca-register mybucket/windowsserver.img.manifest.xml
265</programlisting>264</programlisting>
266</section>265</section>
266</section>
267</section>
267</chapter>268</chapter>
268\ No newline at end of file269\ No newline at end of file
269270
=== modified file 'Installation.xml'
--- Installation.xml 2011-10-19 14:27:25 +0000
+++ Installation.xml 2012-01-19 18:01:31 +0000
@@ -102,7 +102,7 @@
102 netmask 255.255.255.0102 netmask 255.255.255.0
103 broadcast 10.10.10.255103 broadcast 10.10.10.255
104 gateway 10.10.10.1104 gateway 10.10.10.1
105 dns-nameservers 10.10.10.100105 dns-nameservers 10.10.10.3
106106
107auto eth1107auto eth1
108iface eth1 inet static108iface eth1 inet static
@@ -265,17 +265,15 @@
265--s3_host=10.10.10.2265--s3_host=10.10.10.2
266--rabbit_host=10.10.10.2266--rabbit_host=10.10.10.2
267--cc_host=10.10.10.2267--cc_host=10.10.10.2
268--ec2_url=http://10.10.10.2:8773/services/Cloud
269--nova_url=http://10.10.10.2:8774/v1.1/268--nova_url=http://10.10.10.2:8774/v1.1/
270--fixed_range=192.168.0.0/16269--fixed_range=192.168.0.0/16
271--network_size=8270--network_size=8
272--FAKE_subdomain=ec2
273--routing_source_ip=10.10.10.2271--routing_source_ip=10.10.10.2
274--sql_connection=mysql://novadbadmin:novasecret@10.10.10.2/nova272--sql_connection=mysql://novadbadmin:novasecret@10.10.10.2/nova
275--glance_api_servers=192.168.3.2:9292273--glance_api_servers=192.168.3.2:9292
276--image_service=nova.image.glance.GlanceImageService274--image_service=nova.image.glance.GlanceImageService
277--iscsi_ip_prefix=192.168.275--iscsi_ip_prefix=192.168.
278--vlan_interface=eth1276--vlan_interface=br100
279--public_interface=eth0277--public_interface=eth0
280</programlisting>278</programlisting>
281<para>For configuring with PostgreSQL change the line with --sql_connection to:</para>279<para>For configuring with PostgreSQL change the line with --sql_connection to:</para>
@@ -304,7 +302,7 @@
304<para>Create nova schema in the MySQL Database.</para>302<para>Create nova schema in the MySQL Database.</para>
305<programlisting>sudo nova-manage db sync</programlisting>303<programlisting>sudo nova-manage db sync</programlisting>
306<para>Provide a range of IPs to be attached to the instances.</para>304<para>Provide a range of IPs to be attached to the instances.</para>
307<programlisting>sudo nova-manage network create private 192.168.4.0/24 1 256305<programlisting>sudo nova-manage network create [lable] 192.168.4.0/24 1 256
308</programlisting>306</programlisting>
309<para>Allocate 32 pubic IP addresses for use with the instances starting from 10.10.10.225.</para>307<para>Allocate 32 pubic IP addresses for use with the instances starting from 10.10.10.225.</para>
310<programlisting>sudo nova-manage floating create --ip_range=10.10.10.224/27308<programlisting>sudo nova-manage floating create --ip_range=10.10.10.224/27
@@ -378,7 +376,7 @@
378<programlisting>376<programlisting>
379sudo fdisk /dev/sdb377sudo fdisk /dev/sdb
380</programlisting>378</programlisting>
381<para>Press m for help; n for new partition; p to view the partition table; w to write changes to disk once you are done. You should now have a partiton /dev/sda1.</para>379<para>Press m for help; n for new partition; p to view the partition table; w to write changes to disk once you are done. You should now have a partition /dev/sdb1.</para>
382</section>380</section>
383<section xml:id="Loopback_device_as_storage">381<section xml:id="Loopback_device_as_storage">
384<title>Loopback Device (File) as storage</title>382<title>Loopback Device (File) as storage</title>
@@ -519,7 +517,7 @@
519</programlisting>517</programlisting>
520<para>Set RSYNC_ENABLE=true in /etc/default/rsync and then restart the rsync service.</para>518<para>Set RSYNC_ENABLE=true in /etc/default/rsync and then restart the rsync service.</para>
521<programlisting>519<programlisting>
522service rsync restart520sudo service rsync restart
523</programlisting>521</programlisting>
524</section>522</section>
525<section xml:id="Swift_hash_configuration">523<section xml:id="Swift_hash_configuration">
@@ -530,7 +528,7 @@
530# random unique (preferably alphanumeric) string that can never change (DO NOT LOSE)528# random unique (preferably alphanumeric) string that can never change (DO NOT LOSE)
531swift_hash_path_suffix = {place_random_unique_string_here}529swift_hash_path_suffix = {place_random_unique_string_here}
532</programlisting>530</programlisting>
533<para>You will need the random string when you add more nodes to the setup. So never loose the string.</para>531<para>You will need the random string when you add more nodes to the setup. So never lose the string.</para>
534<para>You can generate a random string by running the following command:</para>532<para>You can generate a random string by running the following command:</para>
535<programlisting>533<programlisting>
536od -t x8 -N 8 -A n &lt; /dev/random534od -t x8 -N 8 -A n &lt; /dev/random
@@ -778,7 +776,7 @@
778 netmask 255.255.255.0776 netmask 255.255.255.0
779 broadcast 10.10.10.255777 broadcast 10.10.10.255
780 gateway 10.10.10.1778 gateway 10.10.10.1
781 dns-nameservers 10.10.10.100779 dns-nameservers 10.10.10.3
782780
783auto eth1781auto eth1
784iface eth1 inet static782iface eth1 inet static
@@ -823,15 +821,13 @@
823--s3_host=10.10.10.2821--s3_host=10.10.10.2
824--rabbit_host=10.10.10.2822--rabbit_host=10.10.10.2
825--cc_host=10.10.10.2823--cc_host=10.10.10.2
826--ec2_url=http://10.10.10.2:8773/services/Cloud
827--network_size=8824--network_size=8
828--FAKE_subdomain=ec2
829--routing_source_ip=10.10.10.2825--routing_source_ip=10.10.10.2
830--sql_connection=mysql://novadbadmin:novasecret@10.10.10.2/nova826--sql_connection=mysql://novadbadmin:novasecret@10.10.10.2/nova
831--glance_api_servers=192.168.3.1:9292827--glance_api_servers=192.168.3.1:9292
832--image_service=nova.image.glance.GlanceImageService828--image_service=nova.image.glance.GlanceImageService
833--iscsi_ip_prefix=192.168.829--iscsi_ip_prefix=192.168.
834--vlan_interface=eth1830--vlan_interface=br100
835</programlisting>831</programlisting>
836<para>Restart nova-compute on Server2.</para>832<para>Restart nova-compute on Server2.</para>
837<programlisting>sudo service restart nova-compute</programlisting>833<programlisting>sudo service restart nova-compute</programlisting>
@@ -869,7 +865,7 @@
869 netmask 255.255.255.0865 netmask 255.255.255.0
870 broadcast 10.10.10.255866 broadcast 10.10.10.255
871 gateway 10.10.10.1867 gateway 10.10.10.1
872 dns-nameservers 10.10.10.100868 dns-nameservers 10.10.10.3
873</programlisting>869</programlisting>
874</section>870</section>
875<section xml:id="NTP_Client-d1e1181">871<section xml:id="NTP_Client-d1e1181">
@@ -912,4 +908,4 @@
912</programlisting>908</programlisting>
913</section>909</section>
914</section>910</section>
915</chapter>
916\ No newline at end of file911\ No newline at end of file
912</chapter>
917913
=== modified file 'Introduction.xml'
--- Introduction.xml 2011-10-19 14:27:25 +0000
+++ Introduction.xml 2012-01-19 18:01:31 +0000
@@ -9,11 +9,11 @@
9 <listitem><para>Platform as a Service (PaaS)</para></listitem>9 <listitem><para>Platform as a Service (PaaS)</para></listitem>
10 <listitem><para>Software as a Service (SaaS)</para></listitem>10 <listitem><para>Software as a Service (SaaS)</para></listitem>
11 </itemizedlist>11 </itemizedlist>
12 <para>Amazon Web Services (AWS) is one of the major players providing IAAS. They have two popular services - Elastic Compute Cloud (EC2) and Simple Storage Service (S3). These services are available through web services.</para>12 <para>Amazon Web Services (AWS) is one of the major players providing IaaS. AWS have two popular services - Elastic Compute Cloud (EC2) and Simple Storage Service (S3), available through web services.</para>
13 </section>13 </section>
14 <section xml:id="OpenStack-d1e94">14 <section xml:id="OpenStack-d1e94">
15 <title>OpenStack</title>15 <title>OpenStack</title>
16 <para>OpenStack is a collection of open source software projects that enterprises/service providers can use to setup and run their cloud compute and storage infrastructure. Rackspace and NASA are the key initial contributors to the stack. Rackspace contributed their "Cloud Files" platform to power the Object Storage part of the OpenStack, while NASA contributed their "Nebula" code to power the Compute part. OpenStack consortium has managed to have more than 100 members including Canonical, Dell, Citrix etc. in less than a year.</para>16 <para>OpenStack is a collection of open source software projects that enterprises/service providers can use to setup and run their cloud compute and storage infrastructure. Rackspace and NASA are the key initial contributors to the stack. Rackspace contributed their "Cloud Files" platform (code) to power the Object Storage part of the OpenStack, while NASA contributed their "Nebula" platform (code) to power the Compute part. OpenStack consortium has managed to have more than 100 members including Canonical, Dell, Citrix etc. in less than a year.</para>
17 <para>OpenStack makes its services available through Amazon EC2/S3 compatible APIs and hence the client tools written for AWS can be used with OpenStack as well.</para>17 <para>OpenStack makes its services available through Amazon EC2/S3 compatible APIs and hence the client tools written for AWS can be used with OpenStack as well.</para>
18 <para>There are 3 main service families under OpenStack</para>18 <para>There are 3 main service families under OpenStack</para>
19 <itemizedlist>19 <itemizedlist>
@@ -23,7 +23,7 @@
23 </itemizedlist>23 </itemizedlist>
24<section xml:id="Open_Stack_Compute_Infrastructure_Nova_-d1e124">24<section xml:id="Open_Stack_Compute_Infrastructure_Nova_-d1e124">
25 <title>Open Stack Compute Infrastructure ( Nova )</title>25 <title>Open Stack Compute Infrastructure ( Nova )</title>
26 <para>Nova is the underlying cloud computing fabric controller for the OpenStack cloud. All activities needed to support the life cycle of instances within the OpenStack cloud are handled by Nova. It manages all the compute resources, networking, authorization, and scalability needs of the OpenStack cloud. Nova is a management platform and does not provide any virtualization capabilities by itself; instead, it uses libvirt APIs to interact with the supported hypervisors. Nova exposes its capabilities through a web services API that is compatible with that of EC2 of Amazon Web Services.</para>26 <para>Nova is the Computing Fabric controller for the OpenStack Cloud. All activities needed to support the life cycle of instances within the OpenStack cloud are handled by Nova. This makes Nova a Management Platform that manages compute resources, networking, authorization, and scalability needs of the OpenStack cloud. But, Nova does not provide any virtualization capabilities by itself; instead, it uses libvirt APIs to interact with the supported hypervisors. Nova exposes all its capabilities through a web services API that is compatible with the EC2 API of Amazon Web Services.</para>
27 <section xml:id="Functions_and_Features-d1e132">27 <section xml:id="Functions_and_Features-d1e132">
28 <title>Functions and Features:</title>28 <title>Functions and Features:</title>
29 <itemizedlist>29 <itemizedlist>
@@ -48,10 +48,10 @@
48 </itemizedlist>48 </itemizedlist>
49<para>49<para>
50<mediaobject>50<mediaobject>
51 <imageobject role="fo">51 <!--<imageobject role="fo">
52 <imagedata fileref="images/Arch.png"52 <imagedata fileref="images/Arch.png"
53 format="PNG" scale="60"/>53 format="PNG" scale="60"/>
54 </imageobject>54 </imageobject>-->
55 <imageobject role="html">55 <imageobject role="html">
56 <imagedata fileref="images/Archhtml.png"56 <imagedata fileref="images/Archhtml.png"
57 format="PNG" />57 format="PNG" />
@@ -60,11 +60,11 @@
60</para>60</para>
61<section xml:id="API_Server_nova-api_-d1e213">61<section xml:id="API_Server_nova-api_-d1e213">
62 <title>API Server ( nova-api )</title>62 <title>API Server ( nova-api )</title>
63 <para>The API Server provides an interface to the outside world to interact with the cloud infrastructure. API server is the only component that the outside world uses to manage the infrastructure. The management is done through web services calls using EC2 API. The API Server then, in turn, communicates with the relevant components of the cloud infrastructure through the Message Queue. Also there is an OpenStack API as well now, as an alternative to the EC2 API.</para>63 <para>The API Server provides an interface to the outside world to interact with the cloud infrastructure. API server is the only component that the outside world uses to manage the infrastructure. The management is done through web services calls using EC2 API. The API Server then, in turn, communicates with the relevant components of the cloud infrastructure through the Message Queue. As an alternative to EC2 API, OpenStack also provides a native API called "OpenStack API".</para>
64 </section>64 </section>
65 <section xml:id="Message_Queue_Rabbit_MQ_Server_-d1e223">65 <section xml:id="Message_Queue_Rabbit_MQ_Server_-d1e223">
66 <title>Message Queue ( Rabbit MQ Server )</title>66 <title>Message Queue ( Rabbit MQ Server )</title>
67 <para>The OpenStack Cloud Controller communicates with other nova components such as the Scheduler, Network Controller, and Volume Controller via AMQP(Advanced Message Queue Protocol). Nova uses asynchronous calls for request response, with a call-back that gets triggered once a response is received. Since asynchronous communication is used, none of the end points get stuck for long in a waiting state. This is especially true since many actions expected by the API calls such as launching an instance or uploading an image are time consuming.</para>67 <para>The OpenStack Cloud Controller communicates with other nova components such as the Scheduler, Network Controller, and Volume Controller via AMQP(Advanced Message Queue Protocol). Nova uses asynchronous calls for request response, with a call-back that gets triggered once a response is received. Since asynchronous communication is used, none of the user actions get stuck for long in a waiting state. This is especially true since many actions expected by the API calls such as launching an instance or uploading an image are time consuming.</para>
68 </section>68 </section>
69 <section xml:id="Compute_Worker_nova-compute_-d1e232">69 <section xml:id="Compute_Worker_nova-compute_-d1e232">
70 <title>Compute Worker ( nova-compute )</title>70 <title>Compute Worker ( nova-compute )</title>
@@ -101,7 +101,7 @@
101 <listitem><para>Storage of large sized objects</para></listitem>101 <listitem><para>Storage of large sized objects</para></listitem>
102 <listitem><para>Data Redundancy</para></listitem>102 <listitem><para>Data Redundancy</para></listitem>
103 <listitem><para>Archival capabilities - Work with large datasets</para></listitem>103 <listitem><para>Archival capabilities - Work with large datasets</para></listitem>
104 <listitem><para>Data container for virtial machines and cloud apps</para></listitem>104 <listitem><para>Data container for virtual machines and cloud apps</para></listitem>
105 <listitem><para>Media Streaming capabilities</para></listitem>105 <listitem><para>Media Streaming capabilities</para></listitem>
106 <listitem><para>Secure storage of objects</para></listitem>106 <listitem><para>Secure storage of objects</para></listitem>
107 <listitem><para>Backup and archival</para></listitem>107 <listitem><para>Backup and archival</para></listitem>
@@ -146,11 +146,13 @@
146 </section>146 </section>
147 <section xml:id="OpenStack_Imaging_Service_Glance_-d1e329">147 <section xml:id="OpenStack_Imaging_Service_Glance_-d1e329">
148 <title>OpenStack Imaging Service ( Glance )</title>148 <title>OpenStack Imaging Service ( Glance )</title>
149 <para>OpenStack Imaging Service is a lookup and retrieval system for virtual machine images. It can be configured to use any one of the following 3 storage backends:</para>149 <para>OpenStack Imaging Service is a lookup and retrieval system for virtual machine images. It can be configured to use any one of the following storage backends:</para>
150 <itemizedlist>150 <itemizedlist>
151 <listitem><para>Local filesystem (default)</para></listitem>
151 <listitem><para>OpenStack Object Store to store images</para></listitem>152 <listitem><para>OpenStack Object Store to store images</para></listitem>
152 <listitem><para>S3 storage directly</para></listitem>153 <listitem><para>S3 storage directly</para></listitem>
153 <listitem><para>S3 storage with Object Store as the intermediate for S3 access.</para></listitem>154 <listitem><para>S3 storage with Object Store as the intermediate for S3 access.</para></listitem>
155 <listitem><para>HTTP (read-only)</para></listitem>
154 </itemizedlist>156 </itemizedlist>
155 <section xml:id="Functions_and_Features_Glance_-d1e352">157 <section xml:id="Functions_and_Features_Glance_-d1e352">
156 <title>Functions and Features ( Glance )</title>158 <title>Functions and Features ( Glance )</title>
@@ -167,4 +169,4 @@
167 </section>169 </section>
168 </section>170 </section>
169</section>171</section>
170</chapter>
171\ No newline at end of file172\ No newline at end of file
173</chapter>
172174
=== modified file 'Openstackbook.xml'
--- Openstackbook.xml 2011-10-19 14:27:25 +0000
+++ Openstackbook.xml 2012-01-19 18:01:31 +0000
@@ -23,7 +23,7 @@
23 </copyright>23 </copyright>
24 <releaseinfo>diablo</releaseinfo>24 <releaseinfo>diablo</releaseinfo>
25 <productname>OpenStack Compute</productname>25 <productname>OpenStack Compute</productname>
26 <pubdate>2011-10-19</pubdate>26 <pubdate>2011-11-30</pubdate>
27 <legalnotice role="cc-by-nc-sa">27 <legalnotice role="cc-by-nc-sa">
28 <annotation>28 <annotation>
29 <remark>Remaining licensing details are filled in by the template.</remark>29 <remark>Remaining licensing details are filled in by the template.</remark>
3030
=== modified file 'Storage.xml'
--- Storage.xml 2011-10-19 14:27:25 +0000
+++ Storage.xml 2012-01-19 18:01:31 +0000
@@ -26,7 +26,7 @@
26<para>The data on the volume persists even after the volume is detached from an instance. You can see the data on reattaching the volume to another instance.</para>26<para>The data on the volume persists even after the volume is detached from an instance. You can see the data on reattaching the volume to another instance.</para>
27<para>Even though you have indicated /dev/vdb as the device on the instance, the actual device name created by the OS running inside the instance may differ. You can find the name of the device by looking at the device nodes in /dev or by watching the syslog when the volume is being attached.</para>27<para>Even though you have indicated /dev/vdb as the device on the instance, the actual device name created by the OS running inside the instance may differ. You can find the name of the device by looking at the device nodes in /dev or by watching the syslog when the volume is being attached.</para>
28</section>28</section>
29<section>29<section xml:id="Swift_storage_operations--d1e2125">
30<title>Swift</title>30<title>Swift</title>
31<para>Swift is a storage service that can be used for storage and archival of objects. Swift provides a REST interface. You can use 'curl' command to get familiar with the service. All requests to Swift service need an authentication token. This authentication token can be obtained by providing your user credentials on Swift. For more details refer to the Swift section in the "Installation &amp; Configuration" chapter.</para>31<para>Swift is a storage service that can be used for storage and archival of objects. Swift provides a REST interface. You can use 'curl' command to get familiar with the service. All requests to Swift service need an authentication token. This authentication token can be obtained by providing your user credentials on Swift. For more details refer to the Swift section in the "Installation &amp; Configuration" chapter.</para>
32<para>Execute the following command and make a note of X-Auth-Token. You will need this token to use in all subsequent commands.</para>32<para>Execute the following command and make a note of X-Auth-Token. You will need this token to use in all subsequent commands.</para>
3333
=== modified file 'pom.xml'
--- pom.xml 2011-10-20 14:44:13 +0000
+++ pom.xml 2012-01-19 18:01:31 +0000
@@ -46,100 +46,126 @@
46 </resource>46 </resource>
47 </resources>47 </resources>
48 <plugins>48 <plugins>
49 <!--<plugin>49
50 <groupId>org.codehaus.mojo</groupId>
51 <artifactId>batik-maven-plugin</artifactId>
52 <version>1.0-beta-1</version>
53
54 <executions>
55 <execution>
56 <goals>
57 <goal>rasterize</goal>
58 </goals>
59 <phase>generate-sources</phase>
60 <configuration>
61 <srcDir>${basedir}/source/docbkx/openstack-api-extensions/figures</srcDir>
62 <destDir>${basedir}/target/docbkx/webhelp/apix-intro-proposal/content/figures</destDir>
63 </configuration>
64 </execution>
65 </executions>
66 </plugin>-->
67 <plugin>50 <plugin>
68 <groupId>com.rackspace.cloud.api</groupId>51 <groupId>com.rackspace.cloud.api</groupId>
69 <artifactId>clouddocs-maven-plugin</artifactId>52 <artifactId>clouddocs-maven-plugin</artifactId>
70 <version>1.0.4</version>53 <version>1.0.8-SNAPSHOT</version>
71 <executions>54 <executions>
72 <execution>55 <execution>
56 <id>goal1</id>
73 <goals>57 <goals>
74 <goal>generate-pdf</goal>58 <goal>generate-pdf</goal>
59 </goals>
60 <phase>generate-sources</phase>
61 <configuration>
62 <highlightSource>false</highlightSource>
63 <!-- The following elements sets the autonumbering of sections in output for chapter numbers but no numbered sections-->
64 <sectionAutolabel>0</sectionAutolabel>
65 <sectionLabelIncludesComponentLabel>0</sectionLabelIncludesComponentLabel>
66 </configuration>
67 </execution>
68 <execution>
69 <id>goal2</id>
70 <goals>
75 <goal>generate-webhelp</goal>71 <goal>generate-webhelp</goal>
76 </goals>72 </goals>
77 <phase>generate-sources</phase>73 <phase>generate-sources</phase>
74 <configuration>
75 <!-- These parameters only apply to webhelp -->
76 <enableDisqus>0</enableDisqus>
77 <disqusShortname>openstackstarterdoc</disqusShortname>
78 <enableGoogleAnalytics>1</enableGoogleAnalytics>
79 <googleAnalyticsId>UA-17511903-6</googleAnalyticsId>
80 <generateToc>
81 appendix toc,title
82 article/appendix nop
83 article toc,title
84 book title,figure,table,example,equation
85 chapter toc,title
86 part toc,title
87 preface toc,title
88 qandadiv toc
89 qandaset toc
90 reference toc,title
91 set toc,title
92 </generateToc>
93 <!-- The following elements sets the autonumbering of sections in output for chapter numbers but no numbered sections-->
94 <sectionAutolabel>0</sectionAutolabel>
95 <sectionLabelIncludesComponentLabel>0</sectionLabelIncludesComponentLabel>
96 <postProcess>
97 <!-- Copies the figures to the correct location for webhelp -->
98
99 <copy todir="${basedir}/target/docbkx/webhelp/OpenStackbook/content/images">
100 <fileset dir="${basedir}/images">
101 <include name="**/*.*" />
102 </fileset>
103 </copy>
104
105 <!-- Copies webhelp (HTML output) to desired URL location on docs.openstack.org -->
106
107 <copy
108 todir="${basedir}/target/docbkx/webhelp/openstack-compute/starter">
109 <fileset
110 dir="${basedir}/target/docbkx/webhelp/Openstackbook/">
111 <include name="**/*" />
112 </fileset>
113 </copy>
114
115 <!--Moves PDFs to the needed placement -->
116
117 <move failonerror="false"
118 file="${basedir}/target/docbkx/pdf/Openstackbook.pdf"
119 tofile="${basedir}/target/docbkx/webhelp/openstack-compute/starter/os-compute-starterguide-trunk.pdf"/>
120
121 <!--Deletes leftover uneeded directories -->
122
123 <delete dir="${basedir}/target/docbkx/webhelp/Openstackbook"/>
124
125 </postProcess>
126 </configuration>
127 </execution>
128 <execution>
129 <id>goal3</id>
130 <goals>
131 <goal>generate-epub</goal>
132 </goals>
133 <phase>generate-sources</phase>
134 <configuration>
135 <highlightSource>true</highlightSource>
136 <!-- The following elements sets the autonumbering of sections in output for chapter numbers but no numbered sections-->
137 <sectionAutolabel>0</sectionAutolabel>
138 <sectionLabelIncludesComponentLabel>0</sectionLabelIncludesComponentLabel>
139 <postProcess>
140 <!-- Copies the figures to the correct location for epub -->
141 <mkdir dir="${basedir}/target/docbkx/epub/Openstackbook/images"/>
142 <copy todir="${basedir}/target/docbkx/epub/Openstackbook/images">
143 <fileset dir="${basedir}/images">
144 <include name="**/*.png" />
145 </fileset>
146 </copy>
147
148 <!-- Rezip now that the figures are in the correct location -->
149 <zip
150 destfile="${basedir}/target/docbkx/webhelp/openstack-compute/starter/os-compute-starterguide.epub"
151 basedir="${basedir}/target/docbkx/epub/Openstackbook/"
152 update="true"
153 excludes="**/*.epub"/>
154
155 </postProcess>
156 </configuration>
78 </execution>157 </execution>
79 </executions>158 </executions>
80 <dependencies>
81 <dependency>
82 <groupId>org.docbook</groupId>
83 <artifactId>docbook-xml</artifactId>
84 <version>4.4</version>
85 <scope>runtime</scope>
86 </dependency>
87 </dependencies>
88 <configuration>159 <configuration>
160 <!-- These parameters apply to all the goals -->
89 <xincludeSupported>true</xincludeSupported>161 <xincludeSupported>true</xincludeSupported>
90 <sourceDirectory>.</sourceDirectory>162 <sourceDirectory>.</sourceDirectory>
91 <includes>163 <includes>
92 Openstackbook.xml164 Openstackbook.xml
93 </includes>165 </includes>
94 <highlightSource>false</highlightSource>
95 <profileSecurity>reviewer</profileSecurity>166 <profileSecurity>reviewer</profileSecurity>
96 <branding>openstack</branding>167 <branding>openstack</branding>
97 <enableDisqus>1</enableDisqus>
98 <disqusShortname>openstackstarterdoc</disqusShortname>
99 <enableGoogleAnalytics>1</enableGoogleAnalytics>
100 <googleAnalyticsId>UA-17511903-6</googleAnalyticsId>
101 <generateToc>
102 appendix toc,title
103 article/appendix nop
104 article toc,title
105 book title,figure,table,example,equation
106 chapter toc,title
107 part toc,title
108 preface toc,title
109 qandadiv toc
110 qandaset toc
111 reference toc,title
112 set toc,title
113 </generateToc>
114 <!-- The following elements sets the autonumbering of sections in output for chapter numbers but no numbered sections-->
115 <sectionAutolabel>0</sectionAutolabel>
116 <sectionLabelIncludesComponentLabel>0</sectionLabelIncludesComponentLabel>
117 <postProcess>
118 <!-- Copies the figures to the correct location for webhelp -->
119 <copy todir="${basedir}/target/docbkx/webhelp/Openstackbook/content/images">
120 <fileset dir="${basedir}/images">
121 <include name="**/*.png"/>
122 </fileset>
123 </copy>
124
125 <!-- Moves HTML of Starter Guide to diablo directory -->
126 <copy todir="${basedir}/target/docbkx/webhelp/diablo/openstack-compute/starter/">
127 <fileset
128 dir="${basedir}/target/docbkx/webhelp/Openstackbook">
129 <include name="**/*" />
130 </fileset>
131 </copy>
132
133 <!--Moves PDFs to the needed placement -->
134 <move failonerror="false"
135 file="${basedir}/target/docbkx/pdf/Openstackbook.pdf"
136 tofile="${basedir}/target/docbkx/webhelp/diablo/openstack-compute/starter/openstack-starter-guide-diablo.pdf"/>
137 <!--Deletes leftover uneeded directories -->
138 <!--<delete
139 dir="${basedir}/target/docbkx/pdf"/>-->
140 </postProcess>
141 </configuration>168 </configuration>
142
143 </plugin>169 </plugin>
144 170
145 </plugins>171 </plugins>
146172
=== modified file 'target/docbkx/images/cloud/cover.svg'
--- target/docbkx/images/cloud/cover.svg 2011-10-20 14:44:13 +0000
+++ target/docbkx/images/cloud/cover.svg 2012-01-19 18:01:31 +0000
@@ -1560,7 +1560,7 @@
1560 <text transform="translate(50.5791,249.1152)" id="text2733"><tspan x="0" y="0" font-size="39.6113" id="tspan2735" style="font-size: ;fill:#f2f2f2;font-family:CartoGothic Std;font-weight:bold;">OpenStack Compute</tspan></text>1560 <text transform="translate(50.5791,249.1152)" id="text2733"><tspan x="0" y="0" font-size="39.6113" id="tspan2735" style="font-size: ;fill:#f2f2f2;font-family:CartoGothic Std;font-weight:bold;">OpenStack Compute</tspan></text>
15611561
15621562
1563 <text id="text2749" style="text-align:end;line-height:125%;writing-mode:lr-tb;text-anchor:end" sodipodi:linespacing="125%" x="528.53357" y="306.31589"><tspan x="528.53357" y="306.31589" font-size="10.3668" id="tspan2751" style="font-size:10.36680031px;text-align:end;line-height:125%;writing-mode:lr-tb;text-anchor:end;fill:#333333;font-family:CartoGothic Std">diablo (Oct 19, 2011)</tspan></text>1563 <text id="text2749" style="text-align:end;line-height:125%;writing-mode:lr-tb;text-anchor:end" sodipodi:linespacing="125%" x="528.53357" y="306.31589"><tspan x="528.53357" y="306.31589" font-size="10.3668" id="tspan2751" style="font-size:10.36680031px;text-align:end;line-height:125%;writing-mode:lr-tb;text-anchor:end;fill:#333333;font-family:CartoGothic Std">diablo (Nov 11, 2011)</tspan></text>
15641564
15651565
1566 1566
15671567
=== modified file 'target/docbkx/pdf/Openstackbook.fo'
--- target/docbkx/pdf/Openstackbook.fo 2011-10-20 14:44:13 +0000
+++ target/docbkx/pdf/Openstackbook.fo 2012-01-19 18:01:31 +0000
@@ -1,9 +1,9 @@
1<?xml version="1.0" encoding="utf-8"?><fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="CartoGothic Std" font-size="10.5pt" text-align="start" line-height="normal" font-selection-strategy="character-by-character" line-height-shift-adjustment="disregard-shifts" writing-mode="lr-tb" language="en"><fo:layout-master-set><fo:simple-page-master master-name="blank" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body display-align="center" margin-bottom="0.5in" margin-top="0.5in"/><fo:region-before region-name="xsl-region-before-blank" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-blank" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="titlepage-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="titlepage-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="titlepage-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="lot-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="lot-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="lot-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="front-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="front-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="front-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="body-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="body-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="body-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="back-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="back-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="back-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="index-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="2"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="index-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="2"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="index-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="2"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:page-sequence-master master-name="titlepage"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="titlepage-first" page-position="first"/><fo:conditional-page-master-reference master-reference="titlepage-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="titlepage-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="lot"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="lot-first" page-position="first"/><fo:conditional-page-master-reference master-reference="lot-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="lot-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="front"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="front-first" page-position="first"/><fo:conditional-page-master-reference master-reference="front-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="front-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="body"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="body-first" page-position="first"/><fo:conditional-page-master-reference master-reference="body-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="body-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="back"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="back-first" page-position="first"/><fo:conditional-page-master-reference master-reference="back-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="back-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="index"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="index-first" page-position="first"/><fo:conditional-page-master-reference master-reference="index-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="index-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:simple-page-master master-name="cloudpage-first" page-width="8.5in" page-height="11in" margin-top="0.0in" margin-bottom="0.0in" margin-left="0.0in" margin-right="0.0in"><fo:region-body margin-bottom="0.0in" margin-top="0.0in" column-gap="0pt" column-count="1"/><fo:region-before extent="11.0in" display-align="before" background-image="url(/Users/anne.gentle/src/cssoss/working/pomwork/target/docbkx/images/cloud/cover.svg)" background-repeat="no-repeat" background-position-horizontal="0%" background-position-vertical="0%"/></fo:simple-page-master><fo:page-sequence-master master-name="cloud-titlepage"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="cloudpage-first" page-position="first"/><fo:conditional-page-master-reference master-reference="titlepage-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="titlepage-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master></fo:layout-master-set><fo:declarations><x:xmpmeta xmlns:x="adobe:ns:meta/"><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xapRights="http://ns.adobe.com/xap/1.0/rights/" rdf:about=""><xapRights:Marked>True</xapRights:Marked></rdf:Description><rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" rdf:about=""><dc:rights><rdf:Alt><rdf:li xml:lang="x-default">Copyright © 2011 CSS Corp Private Limited ( http://www.csscorp.com/ ) Some rights reserved. Licensed to the public under Creative Commons Attribution NonCommercial ShareAlike 3.0 License</rdf:li></rdf:Alt></dc:rights><dc:title>OpenStack Compute Starter Guide</dc:title><dc:creator/></rdf:Description><rdf:Description xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about=""/><rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about=""><xmp:CreatorTool>Cloud API Docs Plugin</xmp:CreatorTool></rdf:Description><rdf:Description xmlns:cc="http://creativecommons.org/ns#" rdf:about=""><cc:license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode"/></rdf:Description></rdf:RDF></x:xmpmeta></fo:declarations><fo:bookmark-tree><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="d5e1" starting-state="hide"><fo:bookmark-title>OpenStack Compute Starter Guide</fo:bookmark-title></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction_to_OpenStack_and_its_components-d1e59" starting-state="hide"><fo:bookmark-title>1. Introduction to OpenStack and Its Components</fo:bookmark-title><fo:bookmark internal-destination="Cloud_Computing-d1e64" starting-state="hide"><fo:bookmark-title>Cloud Computing</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="OpenStack-d1e94" starting-state="hide"><fo:bookmark-title>OpenStack</fo:bookmark-title><fo:bookmark internal-destination="Open_Stack_Compute_Infrastructure_Nova_-d1e124" starting-state="hide"><fo:bookmark-title>Open Stack Compute Infrastructure ( Nova )</fo:bookmark-title><fo:bookmark internal-destination="Functions_and_Features-d1e132" starting-state="hide"><fo:bookmark-title>Functions and Features:</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Components_of_OpenStack-Compute-d1e166" starting-state="hide"><fo:bookmark-title>Components of OpenStack Compute</fo:bookmark-title><fo:bookmark internal-destination="API_Server_nova-api_-d1e213" starting-state="hide"><fo:bookmark-title>API Server ( nova-api )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Message_Queue_Rabbit_MQ_Server_-d1e223" starting-state="hide"><fo:bookmark-title>Message Queue ( Rabbit MQ Server )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Compute_Worker_nova-compute_-d1e232" starting-state="hide"><fo:bookmark-title>Compute Worker ( nova-compute )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Network_Controller_nova-network_-d1e241" starting-state="hide"><fo:bookmark-title>Network Controller ( nova-network )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Volume_Workers_nova-volume_-d1e250" starting-state="hide"><fo:bookmark-title>Volume Workers ( nova-volume )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Scheduler_nova-scheduler_-d1e262" starting-state="hide"><fo:bookmark-title>Scheduler (nova-scheduler)</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="OpenStack_Storage_Infrastructure_Swift_-d1e271" starting-state="hide"><fo:bookmark-title>OpenStack Storage Infrastructure (Swift)</fo:bookmark-title><fo:bookmark internal-destination="Functions_and_Features-d1e279" starting-state="hide"><fo:bookmark-title>Functions and Features</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Components_of_Swift-d1e281" starting-state="hide"><fo:bookmark-title>Components of Swift</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_Proxy_Server-d1e289" starting-state="hide"><fo:bookmark-title>Swift Proxy Server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_Object_Server-d1e291" starting-state="hide"><fo:bookmark-title>Swift Object Server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_Swift_Server-d1e294" starting-state="hide"><fo:bookmark-title>Swift Container server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_Account_Server-d1e296" starting-state="hide"><fo:bookmark-title>Swift Account Server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="The_Ring-d1e299" starting-state="hide"><fo:bookmark-title>The Ring</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="OpenStack_Imaging_Service_Glance_-d1e329" starting-state="hide"><fo:bookmark-title>OpenStack Imaging Service ( Glance )</fo:bookmark-title><fo:bookmark internal-destination="Functions_and_Features_Glance_-d1e352" starting-state="hide"><fo:bookmark-title>Functions and Features ( Glance )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Components_of_OpenStack_Imaging_Service_Glance_-d1e365" starting-state="hide"><fo:bookmark-title>Components of OpenStack Imaging Service ( Glance )</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Installation_and_configuration-d1e385" starting-state="hide"><fo:bookmark-title>2. Installation and Configuration</fo:bookmark-title><fo:bookmark internal-destination="Introduction-d1e390" starting-state="hide"><fo:bookmark-title>Introduction</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Server1-d1e537" starting-state="hide"><fo:bookmark-title>Server1</fo:bookmark-title><fo:bookmark internal-destination="Base_OS-d1e542" starting-state="hide"><fo:bookmark-title>Base OS</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Networking_Configuration-d1e591" starting-state="hide"><fo:bookmark-title>Networking Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="NTP_Server-d1e609" starting-state="hide"><fo:bookmark-title>NTP Server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Database_Server-d1e657" starting-state="hide"><fo:bookmark-title>Databases</fo:bookmark-title><fo:bookmark internal-destination="MySQL-d1e856" starting-state="hide"><fo:bookmark-title>MySQL</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="PostgreSQL-dle678" starting-state="hide"><fo:bookmark-title>PostgreSQL</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="SQLite-dle899" starting-state="hide"><fo:bookmark-title>SQLite</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Glance-d1e634" starting-state="hide"><fo:bookmark-title>Glance</fo:bookmark-title><fo:bookmark internal-destination="Glancedb-d1a734" starting-state="hide"><fo:bookmark-title>Database Configuration</fo:bookmark-title><fo:bookmark internal-destination="GlanceMS-d2s21" starting-state="hide"><fo:bookmark-title>MySQL</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="GlancePS-d1f234" starting-state="hide"><fo:bookmark-title>PostgreSQL</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Nova-d1e718" starting-state="hide"><fo:bookmark-title>Nova</fo:bookmark-title><fo:bookmark internal-destination="NovaDB-d2s241" starting-state="hide"><fo:bookmark-title>Database Configuration</fo:bookmark-title><fo:bookmark internal-destination="MySQL_Server-d1e657" starting-state="hide"><fo:bookmark-title>MySQL</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="PostgreSQL-d2s315" starting-state="hide"><fo:bookmark-title>PostgreSQL</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Nova_conf-d2s367" starting-state="hide"><fo:bookmark-title>Nova Configuration</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Swift_install" starting-state="hide"><fo:bookmark-title>Swift</fo:bookmark-title><fo:bookmark internal-destination="Swift_configuration" starting-state="hide"><fo:bookmark-title>Swift Configuration</fo:bookmark-title><fo:bookmark internal-destination="Physical_device_as_storage" starting-state="hide"><fo:bookmark-title>Physical Device (Partition) as a storage</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Loopback_device_as_storage" starting-state="hide"><fo:bookmark-title>Loopback Device (File) as storage</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Configuring_rsync" starting-state="hide"><fo:bookmark-title>Configuring Rsync</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_hash_configuration" starting-state="hide"><fo:bookmark-title>Swift Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Proxy_server_configuration" starting-state="hide"><fo:bookmark-title>Proxy Server Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Account_server_configuration" starting-state="hide"><fo:bookmark-title>Account Server Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Container_server_configuration" starting-state="hide"><fo:bookmark-title>Container Server Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Object_server_configuration" starting-state="hide"><fo:bookmark-title>Object Server Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Building_the_rings" starting-state="hide"><fo:bookmark-title>Building the rings</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Running_Swift_services" starting-state="hide"><fo:bookmark-title>Running_Swift_Services</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Testing_Swift" starting-state="hide"><fo:bookmark-title>Testing Swift</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Server_2-d1e1059" starting-state="hide"><fo:bookmark-title>Server2</fo:bookmark-title><fo:bookmark internal-destination="BaseOS-d1e1064" starting-state="hide"><fo:bookmark-title>BaseOS</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Networking_Configuration-d1e1073" starting-state="hide"><fo:bookmark-title>Networking Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="NTP_Client-d1e1098" starting-state="hide"><fo:bookmark-title>NTP Client</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Nova_Components_nova-compute_alone_-d1e1123" starting-state="hide"><fo:bookmark-title>Nova Components (nova-compute alone)</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Client1-d1e1155" starting-state="hide"><fo:bookmark-title>Client1</fo:bookmark-title><fo:bookmark internal-destination="BaseOS-d1e1160" starting-state="hide"><fo:bookmark-title>BaseOS</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Networking_Configuration-d1e1169" starting-state="hide"><fo:bookmark-title>Networking Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="NTP_Client-d1e1181" starting-state="hide"><fo:bookmark-title>NTP Client</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Client_Tools-d1e1206" starting-state="hide"><fo:bookmark-title>Client Tools</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Image_Management-d1e1252" starting-state="hide"><fo:bookmark-title>3. Image Management</fo:bookmark-title><fo:bookmark internal-destination="Introduction-d1e1257" starting-state="hide"><fo:bookmark-title>Introduction</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Creating_a_Linux_Image_-_Ubuntu_Fedora-d1e1287" starting-state="hide"><fo:bookmark-title>Creating a Linux Image - Ubuntu &amp; Fedora</fo:bookmark-title><fo:bookmark internal-destination="OS_Installation-d1e1298" starting-state="hide"><fo:bookmark-title>OS Installation</fo:bookmark-title><fo:bookmark internal-destination="Tweaking_etc_fstab-d1e1463" starting-state="hide"><fo:bookmark-title>Tweaking /etc/fstab</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Extracting_the_EXT4_partition-d1e1377" starting-state="hide"><fo:bookmark-title>Extracting the EXT4 partition</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Fetching_Metadata_in_Fedora-d1e1488" starting-state="hide"><fo:bookmark-title>Fetching Metadata in Fedora</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Uploading_to_OpenStack-d1e1534" starting-state="hide"><fo:bookmark-title>Uploading to OpenStack</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Image_Listing-d1e1568" starting-state="hide"><fo:bookmark-title>Image Listing</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Creating_a_Windows_Image-d1e1594" starting-state="hide"><fo:bookmark-title>Creating a Windows Image</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Instance_Management-d1e1646" starting-state="hide"><fo:bookmark-title>4. Instance Management</fo:bookmark-title><fo:bookmark internal-destination="Introduction-d1e1651" starting-state="hide"><fo:bookmark-title>Introduction</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Euca2ools-Command_Line_Tools-d1e1828" starting-state="hide"><fo:bookmark-title>Euca2ools-Command Line Tools</fo:bookmark-title><fo:bookmark internal-destination="Installation-d1e1839" starting-state="hide"><fo:bookmark-title>Installation</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Creation_of_Key_Pairs-d1e1848" starting-state="hide"><fo:bookmark-title>Creation of Key Pairs</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Launch_and_manage_instances-d1e1885" starting-state="hide"><fo:bookmark-title>Launch and manage instances</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Storage_Management-d1e1995" starting-state="hide"><fo:bookmark-title>5. Storage Management</fo:bookmark-title><fo:bookmark internal-destination="Nova-volume-d1e2000" starting-state="hide"><fo:bookmark-title>Nova-volume</fo:bookmark-title><fo:bookmark internal-destination="Interacting_with_Storage_Controller-d1e2014" starting-state="hide"><fo:bookmark-title>Interacting with Storage Controller</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="d5e774" starting-state="hide"><fo:bookmark-title>Swift</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Network_Management-d1e2079" starting-state="hide"><fo:bookmark-title>6. Network Management</fo:bookmark-title><fo:bookmark internal-destination="Introduction-d1e2084" starting-state="hide"><fo:bookmark-title>Introduction</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Security-d1e2500" starting-state="hide"><fo:bookmark-title>7. Security</fo:bookmark-title><fo:bookmark internal-destination="Security_Overview-d1e2505" starting-state="hide"><fo:bookmark-title>Security Overview</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack_Commands-d1e2584" starting-state="hide"><fo:bookmark-title>8. OpenStack Commands</fo:bookmark-title><fo:bookmark internal-destination="Nova_Manage_Commands-d1e2589" starting-state="hide"><fo:bookmark-title>Nova Manage Commands</fo:bookmark-title><fo:bookmark internal-destination="User_Role_Management-d1e2597" starting-state="hide"><fo:bookmark-title>User/Role Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Project_Management-d1e2672" starting-state="hide"><fo:bookmark-title>Project Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Database_Management-d1e2713" starting-state="hide"><fo:bookmark-title>Database Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Instance_Type_Management-d1e2734" starting-state="hide"><fo:bookmark-title>Instance Type Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Service_Management-d1e2761" starting-state="hide"><fo:bookmark-title>Service Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Euca2ools_Commands-d1e2791" starting-state="hide"><fo:bookmark-title>Euca2ools Commands</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark></fo:bookmark-tree><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="d5e1"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction_to_OpenStack_and_its_components-d1e59"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Cloud_Computing-d1e64"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack-d1e94"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Open_Stack_Compute_Infrastructure_Nova_-d1e124"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Functions_and_Features-d1e132"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Components_of_OpenStack-Compute-d1e166"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="API_Server_nova-api_-d1e213"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Message_Queue_Rabbit_MQ_Server_-d1e223"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Compute_Worker_nova-compute_-d1e232"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Network_Controller_nova-network_-d1e241"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Volume_Workers_nova-volume_-d1e250"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Scheduler_nova-scheduler_-d1e262"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack_Storage_Infrastructure_Swift_-d1e271"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Functions_and_Features-d1e279"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Components_of_Swift-d1e281"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_Proxy_Server-d1e289"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_Object_Server-d1e291"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_Swift_Server-d1e294"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_Account_Server-d1e296"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="The_Ring-d1e299"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack_Imaging_Service_Glance_-d1e329"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Functions_and_Features_Glance_-d1e352"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Components_of_OpenStack_Imaging_Service_Glance_-d1e365"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Installation_and_configuration-d1e385"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction-d1e390"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Server1-d1e537"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Base_OS-d1e542"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Networking_Configuration-d1e591"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="NTP_Server-d1e609"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Database_Server-d1e657"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="MySQL-d1e856"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="PostgreSQL-dle678"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="SQLite-dle899"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Glance-d1e634"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Glancedb-d1a734"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="GlanceMS-d2s21"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="GlancePS-d1f234"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova-d1e718"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="NovaDB-d2s241"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="MySQL_Server-d1e657"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="PostgreSQL-d2s315"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova_conf-d2s367"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_install"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Physical_device_as_storage"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Loopback_device_as_storage"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Configuring_rsync"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_hash_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Proxy_server_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Account_server_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Container_server_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Object_server_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Building_the_rings"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Running_Swift_services"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Testing_Swift"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Server_2-d1e1059"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="BaseOS-d1e1064"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Networking_Configuration-d1e1073"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="NTP_Client-d1e1098"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova_Components_nova-compute_alone_-d1e1123"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Client1-d1e1155"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="BaseOS-d1e1160"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Networking_Configuration-d1e1169"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="NTP_Client-d1e1181"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Client_Tools-d1e1206"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Image_Management-d1e1252"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction-d1e1257"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Creating_a_Linux_Image_-_Ubuntu_Fedora-d1e1287"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OS_Installation-d1e1298"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Tweaking_etc_fstab-d1e1463"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Extracting_the_EXT4_partition-d1e1377"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Fetching_Metadata_in_Fedora-d1e1488"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Uploading_to_OpenStack-d1e1534"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Image_Listing-d1e1568"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Creating_a_Windows_Image-d1e1594"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Instance_Management-d1e1646"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction-d1e1651"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Euca2ools-Command_Line_Tools-d1e1828"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Installation-d1e1839"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Creation_of_Key_Pairs-d1e1848"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Launch_and_manage_instances-d1e1885"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Storage_Management-d1e1995"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova-volume-d1e2000"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Interacting_with_Storage_Controller-d1e2014"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="d5e774"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Network_Management-d1e2079"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction-d1e2084"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Security-d1e2500"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Security_Overview-d1e2505"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack_Commands-d1e2584"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova_Manage_Commands-d1e2589"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="User_Role_Management-d1e2597"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Project_Management-d1e2672"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Database_Management-d1e2713"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Instance_Type_Management-d1e2734"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Service_Management-d1e2761"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Euca2ools_Commands-d1e2791"/><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="cloud-titlepage" language="en" format="i" initial-page-number="1" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body"><fo:block id="d5e1"><fo:block><fo:block><fo:block break-after="page"/><fo:block font-size="14.4pt" font-weight="bold" font-family="CartoGothic Std"><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block><fo:block font-size="10pt"><fo:block> </fo:block></fo:block><fo:block font-size="10pt" space-before="0.5em">diablo (2011-10-19)</fo:block><fo:block font-size="10pt">Copyright © 2011 CSS Corp Private Limited ( http://www.csscorp.com/ ) Some rights reserved.</fo:block><fo:block font-size="10pt"><fo:block start-indent="0.0in" end-indent="0.0in"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.optimum="10pt" space-before.minimum="10pt * 0.8" space-before.maximum="10pt * 1.2" hyphenate="false" text-align="center"/><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">This is a tutorial style beginner's guide for OpenStack™ on Ubuntu 11.10, Oneiric Ocelot.1<?xml version="1.0" encoding="utf-8"?><fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="CartoGothic Std" font-size="10.5pt" text-align="start" line-height="normal" font-selection-strategy="character-by-character" line-height-shift-adjustment="disregard-shifts" writing-mode="lr-tb" language="en"><fo:layout-master-set><fo:simple-page-master master-name="blank" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body display-align="center" margin-bottom="0.5in" margin-top="0.5in"/><fo:region-before region-name="xsl-region-before-blank" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-blank" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="titlepage-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="titlepage-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="titlepage-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="lot-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="lot-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="lot-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="front-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="front-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="front-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="body-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="body-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="body-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="back-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="back-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="back-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="1"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="index-first" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="2"/><fo:region-before region-name="xsl-region-before-first" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-first" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="index-odd" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="2"/><fo:region-before region-name="xsl-region-before-odd" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-odd" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:simple-page-master master-name="index-even" page-width="8.5in" page-height="11in" margin-top="0.5in" margin-bottom="0.5in" margin-left="1in" margin-right="1in"><fo:region-body margin-bottom="0.5in" margin-top="0.5in" column-gap="12pt" column-count="2"/><fo:region-before region-name="xsl-region-before-even" extent="0.4in" display-align="before"/><fo:region-after region-name="xsl-region-after-even" extent="0.4in" display-align="after"/></fo:simple-page-master><fo:page-sequence-master master-name="titlepage"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="titlepage-first" page-position="first"/><fo:conditional-page-master-reference master-reference="titlepage-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="titlepage-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="lot"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="lot-first" page-position="first"/><fo:conditional-page-master-reference master-reference="lot-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="lot-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="front"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="front-first" page-position="first"/><fo:conditional-page-master-reference master-reference="front-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="front-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="body"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="body-first" page-position="first"/><fo:conditional-page-master-reference master-reference="body-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="body-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="back"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="back-first" page-position="first"/><fo:conditional-page-master-reference master-reference="back-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="back-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:page-sequence-master master-name="index"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="index-first" page-position="first"/><fo:conditional-page-master-reference master-reference="index-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="index-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master><fo:simple-page-master xmlns:exslt="http://exslt.org/common" master-name="cloudpage-first" page-width="8.5in" page-height="11in" margin-top="0.0in" margin-bottom="0.0in" margin-left="0.0in" margin-right="0.0in"><fo:region-body margin-bottom="0.0in" margin-top="0.0in" column-gap="0pt" column-count="1"/><fo:region-before extent="11.0in" display-align="before" background-image="url(/Users/anne.gentle/src/cssoss/diablo/target/docbkx/images/cloud/cover.svg)" background-repeat="no-repeat" background-position-horizontal="0%" background-position-vertical="0%"/></fo:simple-page-master><fo:page-sequence-master xmlns:exslt="http://exslt.org/common" master-name="cloud-titlepage"><fo:repeatable-page-master-alternatives><fo:conditional-page-master-reference master-reference="blank" blank-or-not-blank="blank"/><fo:conditional-page-master-reference master-reference="cloudpage-first" page-position="first"/><fo:conditional-page-master-reference master-reference="titlepage-odd" odd-or-even="odd"/><fo:conditional-page-master-reference odd-or-even="even" master-reference="titlepage-odd"/></fo:repeatable-page-master-alternatives></fo:page-sequence-master></fo:layout-master-set><fo:declarations><x:xmpmeta xmlns:x="adobe:ns:meta/"><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xapRights="http://ns.adobe.com/xap/1.0/rights/" rdf:about=""><xapRights:Marked>True</xapRights:Marked></rdf:Description><rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" rdf:about=""><dc:rights><rdf:Alt><rdf:li xml:lang="x-default">Copyright © 2011 CSS Corp Private Limited ( http://www.csscorp.com/ ) Some rights reserved. Licensed to the public under Creative Commons Attribution NonCommercial ShareAlike 3.0 License</rdf:li></rdf:Alt></dc:rights><dc:title>OpenStack Compute Starter Guide</dc:title><dc:creator/></rdf:Description><rdf:Description xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about=""/><rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about=""><xmp:CreatorTool>Cloud API Docs Plugin</xmp:CreatorTool></rdf:Description><rdf:Description xmlns:cc="http://creativecommons.org/ns#" rdf:about=""><cc:license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode"/></rdf:Description></rdf:RDF></x:xmpmeta></fo:declarations><fo:bookmark-tree><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="d6e1" starting-state="hide"><fo:bookmark-title>OpenStack Compute Starter Guide</fo:bookmark-title></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="toc...d6e1"><fo:bookmark-title>Table of Contents</fo:bookmark-title></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction_to_OpenStack_and_its_components-d1e59" starting-state="hide"><fo:bookmark-title>1. Introduction to OpenStack and Its Components</fo:bookmark-title><fo:bookmark internal-destination="Cloud_Computing-d1e64" starting-state="hide"><fo:bookmark-title>Cloud Computing</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="OpenStack-d1e94" starting-state="hide"><fo:bookmark-title>OpenStack</fo:bookmark-title><fo:bookmark internal-destination="Open_Stack_Compute_Infrastructure_Nova_-d1e124" starting-state="hide"><fo:bookmark-title>Open Stack Compute Infrastructure ( Nova )</fo:bookmark-title><fo:bookmark internal-destination="Functions_and_Features-d1e132" starting-state="hide"><fo:bookmark-title>Functions and Features:</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Components_of_OpenStack-Compute-d1e166" starting-state="hide"><fo:bookmark-title>Components of OpenStack Compute</fo:bookmark-title><fo:bookmark internal-destination="API_Server_nova-api_-d1e213" starting-state="hide"><fo:bookmark-title>API Server ( nova-api )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Message_Queue_Rabbit_MQ_Server_-d1e223" starting-state="hide"><fo:bookmark-title>Message Queue ( Rabbit MQ Server )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Compute_Worker_nova-compute_-d1e232" starting-state="hide"><fo:bookmark-title>Compute Worker ( nova-compute )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Network_Controller_nova-network_-d1e241" starting-state="hide"><fo:bookmark-title>Network Controller ( nova-network )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Volume_Workers_nova-volume_-d1e250" starting-state="hide"><fo:bookmark-title>Volume Workers ( nova-volume )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Scheduler_nova-scheduler_-d1e262" starting-state="hide"><fo:bookmark-title>Scheduler (nova-scheduler)</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="OpenStack_Storage_Infrastructure_Swift_-d1e271" starting-state="hide"><fo:bookmark-title>OpenStack Storage Infrastructure (Swift)</fo:bookmark-title><fo:bookmark internal-destination="Functions_and_Features-d1e279" starting-state="hide"><fo:bookmark-title>Functions and Features</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Components_of_Swift-d1e281" starting-state="hide"><fo:bookmark-title>Components of Swift</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_Proxy_Server-d1e289" starting-state="hide"><fo:bookmark-title>Swift Proxy Server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_Object_Server-d1e291" starting-state="hide"><fo:bookmark-title>Swift Object Server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_Swift_Server-d1e294" starting-state="hide"><fo:bookmark-title>Swift Container server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_Account_Server-d1e296" starting-state="hide"><fo:bookmark-title>Swift Account Server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="The_Ring-d1e299" starting-state="hide"><fo:bookmark-title>The Ring</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="OpenStack_Imaging_Service_Glance_-d1e329" starting-state="hide"><fo:bookmark-title>OpenStack Imaging Service ( Glance )</fo:bookmark-title><fo:bookmark internal-destination="Functions_and_Features_Glance_-d1e352" starting-state="hide"><fo:bookmark-title>Functions and Features ( Glance )</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Components_of_OpenStack_Imaging_Service_Glance_-d1e365" starting-state="hide"><fo:bookmark-title>Components of OpenStack Imaging Service ( Glance )</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Installation_and_configuration-d1e385" starting-state="hide"><fo:bookmark-title>2. Installation and Configuration</fo:bookmark-title><fo:bookmark internal-destination="Introduction-d1e390" starting-state="hide"><fo:bookmark-title>Introduction</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Server1-d1e537" starting-state="hide"><fo:bookmark-title>Server1</fo:bookmark-title><fo:bookmark internal-destination="Base_OS-d1e542" starting-state="hide"><fo:bookmark-title>Base OS</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Networking_Configuration-d1e591" starting-state="hide"><fo:bookmark-title>Networking Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="NTP_Server-d1e609" starting-state="hide"><fo:bookmark-title>NTP Server</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Database_Server-d1e657" starting-state="hide"><fo:bookmark-title>Databases</fo:bookmark-title><fo:bookmark internal-destination="MySQL-d1e856" starting-state="hide"><fo:bookmark-title>MySQL</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="PostgreSQL-dle678" starting-state="hide"><fo:bookmark-title>PostgreSQL</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="SQLite-dle899" starting-state="hide"><fo:bookmark-title>SQLite</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Glance-d1e634" starting-state="hide"><fo:bookmark-title>Glance</fo:bookmark-title><fo:bookmark internal-destination="Glancedb-d1a734" starting-state="hide"><fo:bookmark-title>Database Configuration</fo:bookmark-title><fo:bookmark internal-destination="GlanceMS-d2s21" starting-state="hide"><fo:bookmark-title>MySQL</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="GlancePS-d1f234" starting-state="hide"><fo:bookmark-title>PostgreSQL</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Nova-d1e718" starting-state="hide"><fo:bookmark-title>Nova</fo:bookmark-title><fo:bookmark internal-destination="NovaDB-d2s241" starting-state="hide"><fo:bookmark-title>Database Configuration</fo:bookmark-title><fo:bookmark internal-destination="MySQL_Server-d1e657" starting-state="hide"><fo:bookmark-title>MySQL</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="PostgreSQL-d2s315" starting-state="hide"><fo:bookmark-title>PostgreSQL</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Nova_conf-d2s367" starting-state="hide"><fo:bookmark-title>Nova Configuration</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Swift_install" starting-state="hide"><fo:bookmark-title>Swift</fo:bookmark-title><fo:bookmark internal-destination="Swift_configuration" starting-state="hide"><fo:bookmark-title>Swift Configuration</fo:bookmark-title><fo:bookmark internal-destination="Physical_device_as_storage" starting-state="hide"><fo:bookmark-title>Physical Device (Partition) as a storage</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Loopback_device_as_storage" starting-state="hide"><fo:bookmark-title>Loopback Device (File) as storage</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Configuring_rsync" starting-state="hide"><fo:bookmark-title>Configuring Rsync</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_hash_configuration" starting-state="hide"><fo:bookmark-title>Swift Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Proxy_server_configuration" starting-state="hide"><fo:bookmark-title>Proxy Server Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Account_server_configuration" starting-state="hide"><fo:bookmark-title>Account Server Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Container_server_configuration" starting-state="hide"><fo:bookmark-title>Container Server Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Object_server_configuration" starting-state="hide"><fo:bookmark-title>Object Server Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Building_the_rings" starting-state="hide"><fo:bookmark-title>Building the rings</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Running_Swift_services" starting-state="hide"><fo:bookmark-title>Running_Swift_Services</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Testing_Swift" starting-state="hide"><fo:bookmark-title>Testing Swift</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Server_2-d1e1059" starting-state="hide"><fo:bookmark-title>Server2</fo:bookmark-title><fo:bookmark internal-destination="BaseOS-d1e1064" starting-state="hide"><fo:bookmark-title>BaseOS</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Networking_Configuration-d1e1073" starting-state="hide"><fo:bookmark-title>Networking Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="NTP_Client-d1e1098" starting-state="hide"><fo:bookmark-title>NTP Client</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Nova_Components_nova-compute_alone_-d1e1123" starting-state="hide"><fo:bookmark-title>Nova Components (nova-compute alone)</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark internal-destination="Client1-d1e1155" starting-state="hide"><fo:bookmark-title>Client1</fo:bookmark-title><fo:bookmark internal-destination="BaseOS-d1e1160" starting-state="hide"><fo:bookmark-title>BaseOS</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Networking_Configuration-d1e1169" starting-state="hide"><fo:bookmark-title>Networking Configuration</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="NTP_Client-d1e1181" starting-state="hide"><fo:bookmark-title>NTP Client</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Client_Tools-d1e1206" starting-state="hide"><fo:bookmark-title>Client Tools</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Image_Management-d1e1252" starting-state="hide"><fo:bookmark-title>3. Image Management</fo:bookmark-title><fo:bookmark internal-destination="Introduction-d1e1257" starting-state="hide"><fo:bookmark-title>Introduction</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Creating_a_Linux_Image_-_Ubuntu_Fedora-d1e1287" starting-state="hide"><fo:bookmark-title>Creating a Linux Image - Ubuntu &amp; Fedora</fo:bookmark-title><fo:bookmark internal-destination="OS_Installation-d1e1298" starting-state="hide"><fo:bookmark-title>OS Installation</fo:bookmark-title><fo:bookmark internal-destination="Tweaking_etc_fstab-d1e1463" starting-state="hide"><fo:bookmark-title>Tweaking /etc/fstab</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Extracting_the_EXT4_partition-d1e1377" starting-state="hide"><fo:bookmark-title>Extracting the EXT4 partition</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Fetching_Metadata_in_Fedora-d1e1488" starting-state="hide"><fo:bookmark-title>Fetching Metadata in Fedora</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Uploading_to_OpenStack-d1e1534" starting-state="hide"><fo:bookmark-title>Uploading to OpenStack</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Image_Listing-d1e1568" starting-state="hide"><fo:bookmark-title>Image Listing</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Creating_a_Windows_Image-d1e1594" starting-state="hide"><fo:bookmark-title>Creating a Windows Image</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Instance_Management-d1e1646" starting-state="hide"><fo:bookmark-title>4. Instance Management</fo:bookmark-title><fo:bookmark internal-destination="Introduction-d1e1651" starting-state="hide"><fo:bookmark-title>Introduction</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Euca2ools-Command_Line_Tools-d1e1828" starting-state="hide"><fo:bookmark-title>Euca2ools-Command Line Tools</fo:bookmark-title><fo:bookmark internal-destination="Installation-d1e1839" starting-state="hide"><fo:bookmark-title>Installation</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Creation_of_Key_Pairs-d1e1848" starting-state="hide"><fo:bookmark-title>Creation of Key Pairs</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Launch_and_manage_instances-d1e1885" starting-state="hide"><fo:bookmark-title>Launch and manage instances</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Storage_Management-d1e1995" starting-state="hide"><fo:bookmark-title>5. Storage Management</fo:bookmark-title><fo:bookmark internal-destination="Nova-volume-d1e2000" starting-state="hide"><fo:bookmark-title>Nova-volume</fo:bookmark-title><fo:bookmark internal-destination="Interacting_with_Storage_Controller-d1e2014" starting-state="hide"><fo:bookmark-title>Interacting with Storage Controller</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Swift_storage_operations--d1e2125" starting-state="hide"><fo:bookmark-title>Swift</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Network_Management-d1e2079" starting-state="hide"><fo:bookmark-title>6. Network Management</fo:bookmark-title><fo:bookmark internal-destination="Introduction-d1e2084" starting-state="hide"><fo:bookmark-title>Introduction</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Security-d1e2500" starting-state="hide"><fo:bookmark-title>7. Security</fo:bookmark-title><fo:bookmark internal-destination="Security_Overview-d1e2505" starting-state="hide"><fo:bookmark-title>Security Overview</fo:bookmark-title></fo:bookmark></fo:bookmark><fo:bookmark xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack_Commands-d1e2584" starting-state="hide"><fo:bookmark-title>8. OpenStack Commands</fo:bookmark-title><fo:bookmark internal-destination="Nova_Manage_Commands-d1e2589" starting-state="hide"><fo:bookmark-title>Nova Manage Commands</fo:bookmark-title><fo:bookmark internal-destination="User_Role_Management-d1e2597" starting-state="hide"><fo:bookmark-title>User/Role Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Project_Management-d1e2672" starting-state="hide"><fo:bookmark-title>Project Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Database_Management-d1e2713" starting-state="hide"><fo:bookmark-title>Database Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Instance_Type_Management-d1e2734" starting-state="hide"><fo:bookmark-title>Instance Type Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Service_Management-d1e2761" starting-state="hide"><fo:bookmark-title>Service Management</fo:bookmark-title></fo:bookmark><fo:bookmark internal-destination="Euca2ools_Commands-d1e2791" starting-state="hide"><fo:bookmark-title>Euca2ools Commands</fo:bookmark-title></fo:bookmark></fo:bookmark></fo:bookmark></fo:bookmark-tree><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="d6e1"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction_to_OpenStack_and_its_components-d1e59"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Cloud_Computing-d1e64"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack-d1e94"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Open_Stack_Compute_Infrastructure_Nova_-d1e124"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Functions_and_Features-d1e132"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Components_of_OpenStack-Compute-d1e166"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="API_Server_nova-api_-d1e213"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Message_Queue_Rabbit_MQ_Server_-d1e223"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Compute_Worker_nova-compute_-d1e232"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Network_Controller_nova-network_-d1e241"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Volume_Workers_nova-volume_-d1e250"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Scheduler_nova-scheduler_-d1e262"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack_Storage_Infrastructure_Swift_-d1e271"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Functions_and_Features-d1e279"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Components_of_Swift-d1e281"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_Proxy_Server-d1e289"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_Object_Server-d1e291"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_Swift_Server-d1e294"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_Account_Server-d1e296"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="The_Ring-d1e299"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack_Imaging_Service_Glance_-d1e329"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Functions_and_Features_Glance_-d1e352"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Components_of_OpenStack_Imaging_Service_Glance_-d1e365"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Installation_and_configuration-d1e385"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction-d1e390"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Server1-d1e537"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Base_OS-d1e542"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Networking_Configuration-d1e591"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="NTP_Server-d1e609"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Database_Server-d1e657"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="MySQL-d1e856"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="PostgreSQL-dle678"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="SQLite-dle899"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Glance-d1e634"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Glancedb-d1a734"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="GlanceMS-d2s21"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="GlancePS-d1f234"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova-d1e718"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="NovaDB-d2s241"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="MySQL_Server-d1e657"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="PostgreSQL-d2s315"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova_conf-d2s367"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_install"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Physical_device_as_storage"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Loopback_device_as_storage"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Configuring_rsync"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_hash_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Proxy_server_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Account_server_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Container_server_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Object_server_configuration"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Building_the_rings"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Running_Swift_services"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Testing_Swift"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Server_2-d1e1059"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="BaseOS-d1e1064"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Networking_Configuration-d1e1073"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="NTP_Client-d1e1098"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova_Components_nova-compute_alone_-d1e1123"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Client1-d1e1155"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="BaseOS-d1e1160"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Networking_Configuration-d1e1169"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="NTP_Client-d1e1181"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Client_Tools-d1e1206"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Image_Management-d1e1252"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction-d1e1257"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Creating_a_Linux_Image_-_Ubuntu_Fedora-d1e1287"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OS_Installation-d1e1298"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Tweaking_etc_fstab-d1e1463"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Extracting_the_EXT4_partition-d1e1377"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Fetching_Metadata_in_Fedora-d1e1488"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Uploading_to_OpenStack-d1e1534"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Image_Listing-d1e1568"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Creating_a_Windows_Image-d1e1594"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Instance_Management-d1e1646"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction-d1e1651"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Euca2ools-Command_Line_Tools-d1e1828"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Installation-d1e1839"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Creation_of_Key_Pairs-d1e1848"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Launch_and_manage_instances-d1e1885"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Storage_Management-d1e1995"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova-volume-d1e2000"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Interacting_with_Storage_Controller-d1e2014"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Swift_storage_operations--d1e2125"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Network_Management-d1e2079"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Introduction-d1e2084"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Security-d1e2500"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Security_Overview-d1e2505"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="OpenStack_Commands-d1e2584"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Nova_Manage_Commands-d1e2589"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="User_Role_Management-d1e2597"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Project_Management-d1e2672"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Database_Management-d1e2713"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Instance_Type_Management-d1e2734"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Service_Management-d1e2761"/><fox:destination xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" internal-destination="Euca2ools_Commands-d1e2791"/><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="cloud-titlepage" language="en" format="i" initial-page-number="1" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body"><fo:block id="d6e1"><fo:block><fo:block><fo:block break-after="page"/><fo:block font-size="14.4pt" font-weight="bold" font-family="CartoGothic Std"><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block><fo:block font-size="10pt"><fo:block> </fo:block></fo:block><fo:block font-size="10pt" space-before="0.5em">diablo (2011-11-11)</fo:block><fo:block font-size="10pt">Copyright © 2011 CSS Corp Private Limited ( http://www.csscorp.com/ ) Some rights reserved.</fo:block><fo:block font-size="10pt"><fo:block xmlns:exslt="http://exslt.org/common" start-indent="0.0in" end-indent="0.0in"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.optimum="10pt" space-before.minimum="10pt * 0.8" space-before.maximum="10pt * 1.2" hyphenate="false" text-align="center"/><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">This is a tutorial style beginner's guide for OpenStack™ on Ubuntu 11.10, Oneiric Ocelot.
2 The aim is to help the reader in setting up a minimal installation of OpenStack. </fo:block></fo:block></fo:block><fo:block font-size="8pt" space-before="1.0em"><fo:block id="d5e16"><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em"><fo:list-item><fo:list-item-label end-indent="label-end()"><fo:block><fo:basic-link external-destination="url(http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode)"><fo:external-graphic src="url(/Users/anne.gentle/src/cssoss/working/pomwork/target/docbkx/images/cc/by-nc-sa.svg)" width="auto" height="auto" content-width="75%" content-height="75%"/></fo:basic-link></fo:block></fo:list-item-label><fo:list-item-body start-indent="1.125in"><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Except where otherwise noted, this document is licensed under <fo:block/><fo:basic-link external-destination="url(http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode)"><fo:inline font-weight="bold">Creative Commons Attribution NonCommercial ShareAlike 3.0 License</fo:inline></fo:basic-link>.<fo:block/><fo:basic-link external-destination="url(http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode)"><fo:inline>http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode</fo:inline></fo:basic-link></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block></fo:block></fo:block><fo:block break-after="page"/></fo:block></fo:block></fo:flow></fo:page-sequence><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="lot" language="en" format="i" initial-page-number="auto" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"><fo:block id="lot...table...d5e1"><fo:block><fo:block><fo:block space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="0pt" start-indent="0pt" font-size="20.736pt" font-weight="bold" color="rgb(196,0,34)" font-family="CartoGothic Std">List of Tables</fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="d5e203">2.1. Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="d5e203"><fo:page-number-citation ref-id="d5e203"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:flow></fo:page-sequence><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="body" language="en" format="1" initial-page-number="1" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"><fo:block id="Introduction_to_OpenStack_and_its_components-d1e59"><fo:block font-family="CartoGothic Std"><fo:block margin-left="0pt"><fo:block font-size="24.8832pt" font-weight="bold"><fo:block keep-with-next.within-column="always" space-before.optimum="10pt" space-before.minimum="10pt * 0.8" space-before.maximum="10pt * 1.2" hyphenate="false" text-align="start" start-indent="0pt" font-family="CartoGothic Std" color="rgb(196,0,34)" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2">1. Introduction to OpenStack and Its Components</fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.minimum="0.5em" space-before.optimum="1em" space-before.maximum="2em" space-after.minimum="0.5em" space-after.optimum="1em" space-after.maximum="2em" id="toc...Introduction_to_OpenStack_and_its_components-d1e59"><fo:block><fo:block><fo:block space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="0pt" start-indent="0pt" font-size="20.736pt" font-weight="bold" color="rgb(196,0,34)" font-family="CartoGothic Std">Table of Contents</fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Cloud_Computing-d1e64">Cloud Computing</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Cloud_Computing-d1e64"><fo:page-number-citation ref-id="Cloud_Computing-d1e64"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="OpenStack-d1e94">OpenStack</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="OpenStack-d1e94"><fo:page-number-citation ref-id="OpenStack-d1e94"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.Introduction_to_OpenStack_and_its_components-d1e59.OpenStack-d1e94" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Open_Stack_Compute_Infrastructure_Nova_-d1e124">Open Stack Compute Infrastructure ( Nova )</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Open_Stack_Compute_Infrastructure_Nova_-d1e124"><fo:page-number-citation ref-id="Open_Stack_Compute_Infrastructure_Nova_-d1e124"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="OpenStack_Storage_Infrastructure_Swift_-d1e271">OpenStack Storage Infrastructure (Swift)</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="OpenStack_Storage_Infrastructure_Swift_-d1e271"><fo:page-number-citation ref-id="OpenStack_Storage_Infrastructure_Swift_-d1e271"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="OpenStack_Imaging_Service_Glance_-d1e329">OpenStack Imaging Service ( Glance )</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="OpenStack_Imaging_Service_Glance_-d1e329"><fo:page-number-citation ref-id="OpenStack_Imaging_Service_Glance_-d1e329"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:block><fo:block id="Cloud_Computing-d1e64"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Cloud Computing</fo:marker><fo:block font-size="20.735999999999997pt">Cloud Computing</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Cloud computing is a computing model, where resources such as computing power, storage, network and software are abstracted and provided as services on the Internet in a remotely accessible fashion. Billing models for these services are generally similar to the ones adopted for public utilities. On-demand availability, ease of provisioning, dynamic and virtually infinite scalability are some of the key attributes of cloud computing.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">An infrastructure setup using the cloud computing model is generally referred to as the "cloud". The following are the broad categories of services available on the cloud:</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e27"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e28"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Infrastructure as a Service (IaaS)</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e30"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Platform as a Service (PaaS)</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e32"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Software as a Service (SaaS)</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Amazon Web Services (AWS) is one of the major players providing IAAS. They have two popular services - Elastic Compute Cloud (EC2) and Simple Storage Service (S3). These services are available through web services.</fo:block></fo:block><fo:block id="OpenStack-d1e94"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">OpenStack</fo:marker><fo:block font-size="20.735999999999997pt">OpenStack</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">OpenStack is a collection of open source software projects that enterprises/service providers can use to setup and run their cloud compute and storage infrastructure. Rackspace and NASA are the key initial contributors to the stack. Rackspace contributed their "Cloud Files" platform to power the Object Storage part of the OpenStack, while NASA contributed their "Nebula" code to power the Compute part. OpenStack consortium has managed to have more than 100 members including Canonical, Dell, Citrix etc. in less than a year.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">OpenStack makes its services available through Amazon EC2/S3 compatible APIs and hence the client tools written for AWS can be used with OpenStack as well.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">There are 3 main service families under OpenStack</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e40"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e41"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Compute Infrastructure (Nova)</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e43"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Storage Infrastructure (Swift)</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e45"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Imaging Service (Glance)</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block id="Open_Stack_Compute_Infrastructure_Nova_-d1e124"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Open Stack Compute Infrastructure ( Nova )</fo:marker><fo:block font-size="17.28pt">Open Stack Compute Infrastructure ( Nova )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Nova is the underlying cloud computing fabric controller for the OpenStack cloud. All activities needed to support the life cycle of instances within the OpenStack cloud are handled by Nova. It manages all the compute resources, networking, authorization, and scalability needs of the OpenStack cloud. Nova is a management platform and does not provide any virtualization capabilities by itself; instead, it uses libvirt APIs to interact with the supported hypervisors. Nova exposes its capabilities through a web services API that is compatible with that of EC2 of Amazon Web Services.</fo:block><fo:block id="Functions_and_Features-d1e132"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Functions and Features:</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e52"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e53"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Instance life cycle management</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e55"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Management of compute resources</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e57"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Networking and Authorization</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e59"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>REST-based API</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e61"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Asynchronous eventually consistent communication</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e63"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Hypervisor agnostic : support for Xen, XenServer/XCP, KVM, UML, VMware vSphere and Hyper-V</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block><fo:block id="Components_of_OpenStack-Compute-d1e166"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Components of OpenStack Compute</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Nova Cloud Fabric is composed of the following major components:</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e68"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e69"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>API Server ( nova-api )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e71"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Message Queue ( rabbit-mq server )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e73"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Compute Workers ( nova-compute )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e75"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Network Controller ( nova-network )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e77"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Volume Worker ( nova-volume )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e79"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Scheduler ( nova-scheduler )</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">2 The aim is to help the reader in setting up a minimal installation of OpenStack. </fo:block></fo:block></fo:block><fo:block font-size="8pt" space-before="1.0em"><fo:block xmlns:exslt="http://exslt.org/common" id="d6e16"><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em"><fo:list-item><fo:list-item-label end-indent="label-end()"><fo:block><fo:basic-link external-destination="url(http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode)"><fo:external-graphic src="url(/Users/anne.gentle/src/cssoss/diablo/target/docbkx/images/cc/by-nc-sa.svg)" width="auto" height="auto" content-width="75%" content-height="75%"/></fo:basic-link></fo:block></fo:list-item-label><fo:list-item-body start-indent="1.125in"><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Except where otherwise noted, this document is licensed under <fo:block/><fo:basic-link external-destination="url(http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode)"><fo:inline font-weight="bold">Creative Commons Attribution NonCommercial ShareAlike 3.0 License</fo:inline></fo:basic-link>.<fo:block/><fo:basic-link external-destination="url(http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode)"><fo:inline>http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode</fo:inline></fo:basic-link></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block></fo:block></fo:block><fo:block break-after="page"/></fo:block></fo:block></fo:flow></fo:page-sequence><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="lot" language="en" format="i" initial-page-number="auto" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"><fo:block space-before.minimum="0.5em" space-before.optimum="1em" space-before.maximum="2em" space-after.minimum="0.5em" space-after.optimum="1em" space-after.maximum="2em" id="toc...d6e1"><fo:block><fo:block><fo:block space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="0pt" start-indent="0pt" font-size="20.736pt" font-weight="bold" color="rgb(196,0,34)" font-family="CartoGothic Std">Table of Contents</fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Introduction_to_OpenStack_and_its_components-d1e59">1. Introduction to OpenStack and Its Components</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Introduction_to_OpenStack_and_its_components-d1e59"><fo:page-number-citation ref-id="Introduction_to_OpenStack_and_its_components-d1e59"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Introduction_to_OpenStack_and_its_components-d1e59" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Cloud_Computing-d1e64">Cloud Computing</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Cloud_Computing-d1e64"><fo:page-number-citation ref-id="Cloud_Computing-d1e64"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="OpenStack-d1e94">OpenStack</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="OpenStack-d1e94"><fo:page-number-citation ref-id="OpenStack-d1e94"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.OpenStack-d1e94" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Open_Stack_Compute_Infrastructure_Nova_-d1e124">Open Stack Compute Infrastructure ( Nova )</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Open_Stack_Compute_Infrastructure_Nova_-d1e124"><fo:page-number-citation ref-id="Open_Stack_Compute_Infrastructure_Nova_-d1e124"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="OpenStack_Storage_Infrastructure_Swift_-d1e271">OpenStack Storage Infrastructure (Swift)</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="OpenStack_Storage_Infrastructure_Swift_-d1e271"><fo:page-number-citation ref-id="OpenStack_Storage_Infrastructure_Swift_-d1e271"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="OpenStack_Imaging_Service_Glance_-d1e329">OpenStack Imaging Service ( Glance )</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="OpenStack_Imaging_Service_Glance_-d1e329"><fo:page-number-citation ref-id="OpenStack_Imaging_Service_Glance_-d1e329"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Installation_and_configuration-d1e385">2. Installation and Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Installation_and_configuration-d1e385"><fo:page-number-citation ref-id="Installation_and_configuration-d1e385"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Installation_and_configuration-d1e385" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Introduction-d1e390">Introduction</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Introduction-d1e390"><fo:page-number-citation ref-id="Introduction-d1e390"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Server1-d1e537">Server1</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Server1-d1e537"><fo:page-number-citation ref-id="Server1-d1e537"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Server1-d1e537" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Base_OS-d1e542">Base OS</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Base_OS-d1e542"><fo:page-number-citation ref-id="Base_OS-d1e542"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Networking_Configuration-d1e591">Networking Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Networking_Configuration-d1e591"><fo:page-number-citation ref-id="Networking_Configuration-d1e591"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="NTP_Server-d1e609">NTP Server</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="NTP_Server-d1e609"><fo:page-number-citation ref-id="NTP_Server-d1e609"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Database_Server-d1e657">Databases</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Database_Server-d1e657"><fo:page-number-citation ref-id="Database_Server-d1e657"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Glance-d1e634">Glance</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Glance-d1e634"><fo:page-number-citation ref-id="Glance-d1e634"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Nova-d1e718">Nova</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Nova-d1e718"><fo:page-number-citation ref-id="Nova-d1e718"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Swift_install">Swift</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Swift_install"><fo:page-number-citation ref-id="Swift_install"/></fo:basic-link></fo:inline></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Server_2-d1e1059">Server2</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Server_2-d1e1059"><fo:page-number-citation ref-id="Server_2-d1e1059"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Server_2-d1e1059" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="BaseOS-d1e1064">BaseOS</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="BaseOS-d1e1064"><fo:page-number-citation ref-id="BaseOS-d1e1064"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Networking_Configuration-d1e1073">Networking Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Networking_Configuration-d1e1073"><fo:page-number-citation ref-id="Networking_Configuration-d1e1073"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="NTP_Client-d1e1098">NTP Client</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="NTP_Client-d1e1098"><fo:page-number-citation ref-id="NTP_Client-d1e1098"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Nova_Components_nova-compute_alone_-d1e1123">Nova Components (nova-compute alone)</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Nova_Components_nova-compute_alone_-d1e1123"><fo:page-number-citation ref-id="Nova_Components_nova-compute_alone_-d1e1123"/></fo:basic-link></fo:inline></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Client1-d1e1155">Client1</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Client1-d1e1155"><fo:page-number-citation ref-id="Client1-d1e1155"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Client1-d1e1155" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="BaseOS-d1e1160">BaseOS</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="BaseOS-d1e1160"><fo:page-number-citation ref-id="BaseOS-d1e1160"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Networking_Configuration-d1e1169">Networking Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Networking_Configuration-d1e1169"><fo:page-number-citation ref-id="Networking_Configuration-d1e1169"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="NTP_Client-d1e1181">NTP Client</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="NTP_Client-d1e1181"><fo:page-number-citation ref-id="NTP_Client-d1e1181"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Client_Tools-d1e1206">Client Tools</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Client_Tools-d1e1206"><fo:page-number-citation ref-id="Client_Tools-d1e1206"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Image_Management-d1e1252">3. Image Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Image_Management-d1e1252"><fo:page-number-citation ref-id="Image_Management-d1e1252"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Image_Management-d1e1252" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Introduction-d1e1257">Introduction</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Introduction-d1e1257"><fo:page-number-citation ref-id="Introduction-d1e1257"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Creating_a_Linux_Image_-_Ubuntu_Fedora-d1e1287">Creating a Linux Image - Ubuntu &amp; Fedora</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Creating_a_Linux_Image_-_Ubuntu_Fedora-d1e1287"><fo:page-number-citation ref-id="Creating_a_Linux_Image_-_Ubuntu_Fedora-d1e1287"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Creating_a_Linux_Image_-_Ubuntu_Fedora-d1e1287" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="OS_Installation-d1e1298">OS Installation</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="OS_Installation-d1e1298"><fo:page-number-citation ref-id="OS_Installation-d1e1298"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Instance_Management-d1e1646">4. Instance Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Instance_Management-d1e1646"><fo:page-number-citation ref-id="Instance_Management-d1e1646"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Instance_Management-d1e1646" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Introduction-d1e1651">Introduction</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Introduction-d1e1651"><fo:page-number-citation ref-id="Introduction-d1e1651"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Euca2ools-Command_Line_Tools-d1e1828">Euca2ools-Command Line Tools</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Euca2ools-Command_Line_Tools-d1e1828"><fo:page-number-citation ref-id="Euca2ools-Command_Line_Tools-d1e1828"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Euca2ools-Command_Line_Tools-d1e1828" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Installation-d1e1839">Installation</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Installation-d1e1839"><fo:page-number-citation ref-id="Installation-d1e1839"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Creation_of_Key_Pairs-d1e1848">Creation of Key Pairs</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Creation_of_Key_Pairs-d1e1848"><fo:page-number-citation ref-id="Creation_of_Key_Pairs-d1e1848"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Launch_and_manage_instances-d1e1885">Launch and manage instances</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Launch_and_manage_instances-d1e1885"><fo:page-number-citation ref-id="Launch_and_manage_instances-d1e1885"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Storage_Management-d1e1995">5. Storage Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Storage_Management-d1e1995"><fo:page-number-citation ref-id="Storage_Management-d1e1995"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Storage_Management-d1e1995" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Nova-volume-d1e2000">Nova-volume</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Nova-volume-d1e2000"><fo:page-number-citation ref-id="Nova-volume-d1e2000"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Nova-volume-d1e2000" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Interacting_with_Storage_Controller-d1e2014">Interacting with Storage Controller</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Interacting_with_Storage_Controller-d1e2014"><fo:page-number-citation ref-id="Interacting_with_Storage_Controller-d1e2014"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Swift_storage_operations--d1e2125">Swift</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Swift_storage_operations--d1e2125"><fo:page-number-citation ref-id="Swift_storage_operations--d1e2125"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Network_Management-d1e2079">6. Network Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Network_Management-d1e2079"><fo:page-number-citation ref-id="Network_Management-d1e2079"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Network_Management-d1e2079" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Introduction-d1e2084">Introduction</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Introduction-d1e2084"><fo:page-number-citation ref-id="Introduction-d1e2084"/></fo:basic-link></fo:inline></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Security-d1e2500">7. Security</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Security-d1e2500"><fo:page-number-citation ref-id="Security-d1e2500"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Security-d1e2500" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Security_Overview-d1e2505">Security Overview</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Security_Overview-d1e2505"><fo:page-number-citation ref-id="Security_Overview-d1e2505"/></fo:basic-link></fo:inline></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="OpenStack_Commands-d1e2584">8. OpenStack Commands</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="OpenStack_Commands-d1e2584"><fo:page-number-citation ref-id="OpenStack_Commands-d1e2584"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.OpenStack_Commands-d1e2584" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Nova_Manage_Commands-d1e2589">Nova Manage Commands</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Nova_Manage_Commands-d1e2589"><fo:page-number-citation ref-id="Nova_Manage_Commands-d1e2589"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.d6e1.Nova_Manage_Commands-d1e2589" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="User_Role_Management-d1e2597">User/Role Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="User_Role_Management-d1e2597"><fo:page-number-citation ref-id="User_Role_Management-d1e2597"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Project_Management-d1e2672">Project Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Project_Management-d1e2672"><fo:page-number-citation ref-id="Project_Management-d1e2672"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Database_Management-d1e2713">Database Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Database_Management-d1e2713"><fo:page-number-citation ref-id="Database_Management-d1e2713"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Instance_Type_Management-d1e2734">Instance Type Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Instance_Type_Management-d1e2734"><fo:page-number-citation ref-id="Instance_Type_Management-d1e2734"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Service_Management-d1e2761">Service Management</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Service_Management-d1e2761"><fo:page-number-citation ref-id="Service_Management-d1e2761"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Euca2ools_Commands-d1e2791">Euca2ools Commands</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Euca2ools_Commands-d1e2791"><fo:page-number-citation ref-id="Euca2ools_Commands-d1e2791"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:block></fo:block></fo:flow></fo:page-sequence><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="lot" language="en" format="i" initial-page-number="auto" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"><fo:block id="lot...table...d6e1"><fo:block><fo:block><fo:block space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="0pt" start-indent="0pt" font-size="20.736pt" font-weight="bold" color="rgb(196,0,34)" font-family="CartoGothic Std">List of Tables</fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="d6e201">2.1. Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="d6e201"><fo:page-number-citation ref-id="d6e201"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:flow></fo:page-sequence><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="body" language="en" format="1" initial-page-number="1" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"><fo:block id="Introduction_to_OpenStack_and_its_components-d1e59"><fo:block font-family="CartoGothic Std"><fo:block margin-left="0pt"><fo:block font-size="24.8832pt" font-weight="bold"><fo:block keep-with-next.within-column="always" space-before.optimum="10pt" space-before.minimum="10pt * 0.8" space-before.maximum="10pt * 1.2" hyphenate="false" text-align="start" start-indent="0pt" font-family="CartoGothic Std" color="rgb(196,0,34)" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2">1. Introduction to OpenStack and Its Components</fo:block></fo:block></fo:block></fo:block></fo:block><fo:block id="Cloud_Computing-d1e64"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Cloud Computing</fo:marker><fo:block font-size="20.735999999999997pt">Cloud Computing</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Cloud computing is a computing model, where resources such as computing power, storage, network and software are abstracted and provided as services on the Internet in a remotely accessible fashion. Billing models for these services are generally similar to the ones adopted for public utilities. On-demand availability, ease of provisioning, dynamic and virtually infinite scalability are some of the key attributes of cloud computing.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">An infrastructure setup using the cloud computing model is generally referred to as the "cloud". The following are the broad categories of services available on the cloud:</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e27"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e28"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Infrastructure as a Service (IaaS)</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e30"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Platform as a Service (PaaS)</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e32"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Software as a Service (SaaS)</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Amazon Web Services (AWS) is one of the major players providing IaaS. AWS have two popular services - Elastic Compute Cloud (EC2) and Simple Storage Service (S3), available through web services.</fo:block></fo:block><fo:block id="OpenStack-d1e94"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">OpenStack</fo:marker><fo:block font-size="20.735999999999997pt">OpenStack</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">OpenStack is a collection of open source software projects that enterprises/service providers can use to setup and run their cloud compute and storage infrastructure. Rackspace and NASA are the key initial contributors to the stack. Rackspace contributed their "Cloud Files" platform (code) to power the Object Storage part of the OpenStack, while NASA contributed their "Nebula" platform (code) to power the Compute part. OpenStack consortium has managed to have more than 100 members including Canonical, Dell, Citrix etc. in less than a year.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">OpenStack makes its services available through Amazon EC2/S3 compatible APIs and hence the client tools written for AWS can be used with OpenStack as well.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">There are 3 main service families under OpenStack</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e40"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e41"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Compute Infrastructure (Nova)</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e43"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Storage Infrastructure (Swift)</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e45"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Imaging Service (Glance)</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block id="Open_Stack_Compute_Infrastructure_Nova_-d1e124"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Open Stack Compute Infrastructure ( Nova )</fo:marker><fo:block font-size="17.28pt">Open Stack Compute Infrastructure ( Nova )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Nova is the Computing Fabric controller for the OpenStack Cloud. All activities needed to support the life cycle of instances within the OpenStack cloud are handled by Nova. This makes Nova a Management Platform that manages compute resources, networking, authorization, and scalability needs of the OpenStack cloud. But, Nova does not provide any virtualization capabilities by itself; instead, it uses libvirt APIs to interact with the supported hypervisors. Nova exposes all its capabilities through a web services API that is compatible with the EC2 API of Amazon Web Services.</fo:block><fo:block id="Functions_and_Features-d1e132"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Functions and Features:</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e52"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e53"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Instance life cycle management</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e55"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Management of compute resources</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e57"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Networking and Authorization</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e59"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>REST-based API</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e61"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Asynchronous eventually consistent communication</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e63"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Hypervisor agnostic : support for Xen, XenServer/XCP, KVM, UML, VMware vSphere and Hyper-V</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block><fo:block id="Components_of_OpenStack-Compute-d1e166"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Components of OpenStack Compute</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Nova Cloud Fabric is composed of the following major components:</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e68"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e69"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>API Server ( nova-api )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e71"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Message Queue ( rabbit-mq server )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e73"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Compute Workers ( nova-compute )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e75"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Network Controller ( nova-network )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e77"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Volume Worker ( nova-volume )</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e79"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Scheduler ( nova-scheduler )</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">
3<fo:block id="d5e82"><fo:external-graphic src="url(/Users/anne.gentle/src/cssoss/working/pomwork/images/Arch.png)" width="auto" height="auto" content-width="60%" content-height="60%" content-type="content-type:image/png"/></fo:block>3<fo:block id="d6e82"><fo:external-graphic src="url(/Users/anne.gentle/src/cssoss/diablo/images/Archhtml.png)" width="auto" height="auto" content-width="auto" content-height="auto" content-type="content-type:image/png"/></fo:block>
4</fo:block><fo:block id="API_Server_nova-api_-d1e213"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">API Server ( nova-api )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The API Server provides an interface to the outside world to interact with the cloud infrastructure. API server is the only component that the outside world uses to manage the infrastructure. The management is done through web services calls using EC2 API. The API Server then, in turn, communicates with the relevant components of the cloud infrastructure through the Message Queue. Also there is an OpenStack API as well now, as an alternative to the EC2 API.</fo:block></fo:block><fo:block id="Message_Queue_Rabbit_MQ_Server_-d1e223"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Message Queue ( Rabbit MQ Server )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The OpenStack Cloud Controller communicates with other nova components such as the Scheduler, Network Controller, and Volume Controller via AMQP(Advanced Message Queue Protocol). Nova uses asynchronous calls for request response, with a call-back that gets triggered once a response is received. Since asynchronous communication is used, none of the end points get stuck for long in a waiting state. This is especially true since many actions expected by the API calls such as launching an instance or uploading an image are time consuming.</fo:block></fo:block><fo:block id="Compute_Worker_nova-compute_-d1e232"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Compute Worker ( nova-compute )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Compute workers deal with instance management life cycle. they receive the requests for life cycle management via the Message Queue and carry out operations. There are several Compute Workers in a typical production cloud deployment. An instance is deployed on any of the available compute worker based on the scheduling algorithm used.</fo:block></fo:block><fo:block id="Network_Controller_nova-network_-d1e241"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Network Controller ( nova-network )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The Network Controller deals with the network configuration of host machines. It does operations like allocating IP addresses, configuring VLANs for projects, implementing security groups and configuring networks for compute nodes.</fo:block></fo:block><fo:block id="Volume_Workers_nova-volume_-d1e250"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Volume Workers ( nova-volume )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Volume workers are used for the management of LVM-based instance volumes. Volume Workers perform volume related functions such as creation, deletion, attaching a volume to an instance, and detaching a volume from an instance. Volumes provide a way of providing persistent storage for use by instances, as the main disk attached to an instance is non-persistent and any changes made to it are lost when the volume is detached or the instance is terminated. When a volume is detached from an instance or when an instance, to which the volume is attached, is terminated, it retains the data that was stored on it when it was attached to an instance earlier. This data can be accessed by reattaching the volume to the same instance or by attaching it to another instances.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Any valuable data that gets accumulated during the life cycle of an instance should be written to a volume, so that it can be accessed later. This typically applies to the storage needs of database servers etc.</fo:block></fo:block><fo:block id="Scheduler_nova-scheduler_-d1e262"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Scheduler (nova-scheduler)</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The scheduler maps the nova-API calls to the appropriate openstack components. It runs as a daemon named nova-schedule and picks up a compute/network/volume server from a pool of available resources depending upon the scheduling algorithm in place. A scheduler can base its decisions on various factors such as load, memory, physical distance of the availability zone, CPU architecture, etc. The nova scheduler implements a pluggable architecture.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Currently the nova-scheduler implements a few basic scheduling algorithms:</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e107"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e108"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>chance: In this method, a compute host is chosen randomly across availability zones.</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e110"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>availability zone: Similar to chance, but the compute host is chosen randomly from within a specified availability zone.</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e112"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>simple: In this method, hosts whose load is least are chosen to run the instance. The load information may be fetched from a load balancer.</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block></fo:block></fo:block><fo:block id="OpenStack_Storage_Infrastructure_Swift_-d1e271"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">OpenStack Storage Infrastructure (Swift)</fo:marker><fo:block font-size="17.28pt">OpenStack Storage Infrastructure (Swift)</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Swift provides a distributed, eventually consistent virtual object store for OpenStack. It is analogous to Amazon Web Services - Simple Storage Service (S3). Swift is capable of storing billions of objects distributed across nodes. Swift has built-in redundancy and failover management and is capable of archiving and media streaming. It is extremely scalable in terms of both size (Several petabytes) and capacity (Number of objects).</fo:block><fo:block id="Functions_and_Features-d1e279"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Functions and Features</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e119"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e120"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Storage of large number of objects</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e122"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Storage of large sized objects</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e124"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Data Redundancy</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e126"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Archival capabilities - Work with large datasets</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e128"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Data container for virtial machines and cloud apps</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e130"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Media Streaming capabilities</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e132"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Secure storage of objects</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e134"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Backup and archival</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e136"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Extreme scalability</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block><fo:block id="Components_of_Swift-d1e281"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Components of Swift</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e140"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e141"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Swift Account</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e143"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Swift Container</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e145"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Swift Object</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e147"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Swift Proxy</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e149"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>The RING</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block><fo:block id="Swift_Proxy_Server-d1e289"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Proxy Server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The consumers interact with the Swift setup through the proxy server using the Swift API. The proxy server acts as a gatekeeper and recieves requests from the world. It looks up the location of the appropriate entities and routes the requests to them. </fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The proxy server also handles failures of entities by rerouting requests to failover entities (handoff entities)</fo:block></fo:block><fo:block id="Swift_Object_Server-d1e291"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Object Server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The Object server is a blob store. It's responsibility is to handle storage, retrieval and deletion of objects stored in the local storage. Objects are typically binary files stored in the filesystem with metadata contained as extended file attributes (xattr).</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Note: xattr is supported in several filesystems such as ext3, ext4, XFS, Btrfs, JFS and ReiserFS in Linux. But it is known to work best under XFS, JFS, ReiserFS, Reiser4, and ZFS. XFS is considered to be the best option.</fo:block></fo:block><fo:block id="Swift_Swift_Server-d1e294"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Container server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The container server lists the objects in a container. The lists are stored as SQLite files. The container server also tracks the statistics like the number of objects contained and the storage size occupied by a container.</fo:block></fo:block><fo:block id="Swift_Account_Server-d1e296"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Account Server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The account server lists containers the same way a container server lists objects.</fo:block></fo:block><fo:block id="The_Ring-d1e299"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">The Ring</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The ring contains information about the physical location of the objects stored inside Swift. It is a virtual representation of mapping of names of entities to their real physical location. It is analogous to an indexing service that various processes use to lookup and locate the real physical location of entities within the cluster. Entities like Accounts, Containers, Objects have their own seperate rings.</fo:block></fo:block></fo:block><fo:block id="OpenStack_Imaging_Service_Glance_-d1e329"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">OpenStack Imaging Service ( Glance )</fo:marker><fo:block font-size="17.28pt">OpenStack Imaging Service ( Glance )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">OpenStack Imaging Service is a lookup and retrieval system for virtual machine images. It can be configured to use any one of the following 3 storage backends:</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e171"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e172"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>OpenStack Object Store to store images</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e174"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>S3 storage directly</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e176"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>S3 storage with Object Store as the intermediate for S3 access.</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block id="Functions_and_Features_Glance_-d1e352"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Functions and Features ( Glance )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e180"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e181"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Provides imaging service</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block><fo:block id="Components_of_OpenStack_Imaging_Service_Glance_-d1e365"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Components of OpenStack Imaging Service ( Glance )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e185"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e186"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Glance-control</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e188"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Glance-registry</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block></fo:block></fo:block></fo:flow></fo:page-sequence><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="body" language="en" format="1" initial-page-number="auto" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Oct 19, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"><fo:block id="Installation_and_configuration-d1e385"><fo:block font-family="CartoGothic Std"><fo:block margin-left="0pt"><fo:block font-size="24.8832pt" font-weight="bold"><fo:block keep-with-next.within-column="always" space-before.optimum="10pt" space-before.minimum="10pt * 0.8" space-before.maximum="10pt * 1.2" hyphenate="false" text-align="start" start-indent="0pt" font-family="CartoGothic Std" color="rgb(196,0,34)" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2">2. Installation and Configuration</fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.minimum="0.5em" space-before.optimum="1em" space-before.maximum="2em" space-after.minimum="0.5em" space-after.optimum="1em" space-after.maximum="2em" id="toc...Installation_and_configuration-d1e385"><fo:block><fo:block><fo:block space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="0pt" start-indent="0pt" font-size="20.736pt" font-weight="bold" color="rgb(196,0,34)" font-family="CartoGothic Std">Table of Contents</fo:block></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Introduction-d1e390">Introduction</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Introduction-d1e390"><fo:page-number-citation ref-id="Introduction-d1e390"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Server1-d1e537">Server1</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Server1-d1e537"><fo:page-number-citation ref-id="Server1-d1e537"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.Installation_and_configuration-d1e385.Server1-d1e537" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Base_OS-d1e542">Base OS</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Base_OS-d1e542"><fo:page-number-citation ref-id="Base_OS-d1e542"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Networking_Configuration-d1e591">Networking Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Networking_Configuration-d1e591"><fo:page-number-citation ref-id="Networking_Configuration-d1e591"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="NTP_Server-d1e609">NTP Server</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="NTP_Server-d1e609"><fo:page-number-citation ref-id="NTP_Server-d1e609"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Database_Server-d1e657">Databases</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Database_Server-d1e657"><fo:page-number-citation ref-id="Database_Server-d1e657"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Glance-d1e634">Glance</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Glance-d1e634"><fo:page-number-citation ref-id="Glance-d1e634"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Nova-d1e718">Nova</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Nova-d1e718"><fo:page-number-citation ref-id="Nova-d1e718"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Swift_install">Swift</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Swift_install"><fo:page-number-citation ref-id="Swift_install"/></fo:basic-link></fo:inline></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Server_2-d1e1059">Server2</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Server_2-d1e1059"><fo:page-number-citation ref-id="Server_2-d1e1059"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.Installation_and_configuration-d1e385.Server_2-d1e1059" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="BaseOS-d1e1064">BaseOS</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="BaseOS-d1e1064"><fo:page-number-citation ref-id="BaseOS-d1e1064"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Networking_Configuration-d1e1073">Networking Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Networking_Configuration-d1e1073"><fo:page-number-citation ref-id="Networking_Configuration-d1e1073"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="NTP_Client-d1e1098">NTP Client</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="NTP_Client-d1e1098"><fo:page-number-citation ref-id="NTP_Client-d1e1098"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Nova_Components_nova-compute_alone_-d1e1123">Nova Components (nova-compute alone)</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Nova_Components_nova-compute_alone_-d1e1123"><fo:page-number-citation ref-id="Nova_Components_nova-compute_alone_-d1e1123"/></fo:basic-link></fo:inline></fo:block></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Client1-d1e1155">Client1</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Client1-d1e1155"><fo:page-number-citation ref-id="Client1-d1e1155"/></fo:basic-link></fo:inline></fo:block><fo:block id="toc.Installation_and_configuration-d1e385.Client1-d1e1155" margin-left="24pt"><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="BaseOS-d1e1160">BaseOS</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="BaseOS-d1e1160"><fo:page-number-citation ref-id="BaseOS-d1e1160"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Networking_Configuration-d1e1169">Networking Configuration</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Networking_Configuration-d1e1169"><fo:page-number-citation ref-id="Networking_Configuration-d1e1169"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="NTP_Client-d1e1181">NTP Client</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="NTP_Client-d1e1181"><fo:page-number-citation ref-id="NTP_Client-d1e1181"/></fo:basic-link></fo:inline></fo:block><fo:block text-align-last="justify" text-align="start" end-indent="24pt" last-line-end-indent="-24pt"><fo:inline keep-with-next.within-line="always"><fo:basic-link internal-destination="Client_Tools-d1e1206">Client Tools</fo:basic-link></fo:inline><fo:inline keep-together.within-line="always"> <fo:leader leader-pattern="dots" leader-pattern-width="3pt" leader-alignment="reference-area" keep-with-next.within-line="always"/> <fo:basic-link internal-destination="Client_Tools-d1e1206"><fo:page-number-citation ref-id="Client_Tools-d1e1206"/></fo:basic-link></fo:inline></fo:block></fo:block></fo:block><fo:block id="Introduction-d1e390"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Introduction</fo:marker><fo:block font-size="20.735999999999997pt">Introduction</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The following section describes how to set up a minimal cloud infrastructure based on OpenStack using 3 machines. These machines are referred to in this and subsequent chapters as Server1 and Server2 and Client1. Server1 runs all the components of Nova as well as Glance and Swift. Server2 runs only nova-compute. Since OpenStack components follow a shared-nothing policy, each component or any group of components can be installed on any server.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Client1 is not a required component. In our sample setup, it is used for bundling images, as a client to the web interface, and to run euca commands to manage the infrastructure. Having this client ensures that you do not need to meddle with the servers for tasks such as bundling. Also, bundling of Desktop Systems including Windows will require a GUI and it is better to have a dedicated machine for this purpose. We would recommend this machine to be VT-Enabled so that KVM can be run which allows for Windows VMs during image creation for bundling.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">4</fo:block><fo:block id="API_Server_nova-api_-d1e213"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">API Server ( nova-api )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The API Server provides an interface to the outside world to interact with the cloud infrastructure. API server is the only component that the outside world uses to manage the infrastructure. The management is done through web services calls using EC2 API. The API Server then, in turn, communicates with the relevant components of the cloud infrastructure through the Message Queue. As an alternative to EC2 API, OpenStack also provides a native API called "OpenStack API".</fo:block></fo:block><fo:block id="Message_Queue_Rabbit_MQ_Server_-d1e223"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Message Queue ( Rabbit MQ Server )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The OpenStack Cloud Controller communicates with other nova components such as the Scheduler, Network Controller, and Volume Controller via AMQP(Advanced Message Queue Protocol). Nova uses asynchronous calls for request response, with a call-back that gets triggered once a response is received. Since asynchronous communication is used, none of the user actions get stuck for long in a waiting state. This is especially true since many actions expected by the API calls such as launching an instance or uploading an image are time consuming.</fo:block></fo:block><fo:block id="Compute_Worker_nova-compute_-d1e232"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Compute Worker ( nova-compute )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Compute workers deal with instance management life cycle. they receive the requests for life cycle management via the Message Queue and carry out operations. There are several Compute Workers in a typical production cloud deployment. An instance is deployed on any of the available compute worker based on the scheduling algorithm used.</fo:block></fo:block><fo:block id="Network_Controller_nova-network_-d1e241"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Network Controller ( nova-network )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The Network Controller deals with the network configuration of host machines. It does operations like allocating IP addresses, configuring VLANs for projects, implementing security groups and configuring networks for compute nodes.</fo:block></fo:block><fo:block id="Volume_Workers_nova-volume_-d1e250"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Volume Workers ( nova-volume )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Volume workers are used for the management of LVM-based instance volumes. Volume Workers perform volume related functions such as creation, deletion, attaching a volume to an instance, and detaching a volume from an instance. Volumes provide a way of providing persistent storage for use by instances, as the main disk attached to an instance is non-persistent and any changes made to it are lost when the volume is detached or the instance is terminated. When a volume is detached from an instance or when an instance, to which the volume is attached, is terminated, it retains the data that was stored on it when it was attached to an instance earlier. This data can be accessed by reattaching the volume to the same instance or by attaching it to another instances.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Any valuable data that gets accumulated during the life cycle of an instance should be written to a volume, so that it can be accessed later. This typically applies to the storage needs of database servers etc.</fo:block></fo:block><fo:block id="Scheduler_nova-scheduler_-d1e262"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Scheduler (nova-scheduler)</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The scheduler maps the nova-API calls to the appropriate openstack components. It runs as a daemon named nova-schedule and picks up a compute/network/volume server from a pool of available resources depending upon the scheduling algorithm in place. A scheduler can base its decisions on various factors such as load, memory, physical distance of the availability zone, CPU architecture, etc. The nova scheduler implements a pluggable architecture.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Currently the nova-scheduler implements a few basic scheduling algorithms:</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e105"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e106"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>chance: In this method, a compute host is chosen randomly across availability zones.</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e108"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>availability zone: Similar to chance, but the compute host is chosen randomly from within a specified availability zone.</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e110"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>simple: In this method, hosts whose load is least are chosen to run the instance. The load information may be fetched from a load balancer.</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block></fo:block></fo:block><fo:block id="OpenStack_Storage_Infrastructure_Swift_-d1e271"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">OpenStack Storage Infrastructure (Swift)</fo:marker><fo:block font-size="17.28pt">OpenStack Storage Infrastructure (Swift)</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Swift provides a distributed, eventually consistent virtual object store for OpenStack. It is analogous to Amazon Web Services - Simple Storage Service (S3). Swift is capable of storing billions of objects distributed across nodes. Swift has built-in redundancy and failover management and is capable of archiving and media streaming. It is extremely scalable in terms of both size (Several petabytes) and capacity (Number of objects).</fo:block><fo:block id="Functions_and_Features-d1e279"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Functions and Features</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e117"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e118"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Storage of large number of objects</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e120"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Storage of large sized objects</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e122"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Data Redundancy</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e124"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Archival capabilities - Work with large datasets</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e126"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Data container for virtual machines and cloud apps</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e128"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Media Streaming capabilities</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e130"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Secure storage of objects</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e132"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Backup and archival</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e134"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Extreme scalability</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block><fo:block id="Components_of_Swift-d1e281"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Components of Swift</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e138"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e139"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Swift Account</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e141"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Swift Container</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e143"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Swift Object</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e145"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Swift Proxy</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e147"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>The RING</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block><fo:block id="Swift_Proxy_Server-d1e289"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Proxy Server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The consumers interact with the Swift setup through the proxy server using the Swift API. The proxy server acts as a gatekeeper and recieves requests from the world. It looks up the location of the appropriate entities and routes the requests to them. </fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The proxy server also handles failures of entities by rerouting requests to failover entities (handoff entities)</fo:block></fo:block><fo:block id="Swift_Object_Server-d1e291"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Object Server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The Object server is a blob store. It's responsibility is to handle storage, retrieval and deletion of objects stored in the local storage. Objects are typically binary files stored in the filesystem with metadata contained as extended file attributes (xattr).</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Note: xattr is supported in several filesystems such as ext3, ext4, XFS, Btrfs, JFS and ReiserFS in Linux. But it is known to work best under XFS, JFS, ReiserFS, Reiser4, and ZFS. XFS is considered to be the best option.</fo:block></fo:block><fo:block id="Swift_Swift_Server-d1e294"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Container server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The container server lists the objects in a container. The lists are stored as SQLite files. The container server also tracks the statistics like the number of objects contained and the storage size occupied by a container.</fo:block></fo:block><fo:block id="Swift_Account_Server-d1e296"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Account Server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The account server lists containers the same way a container server lists objects.</fo:block></fo:block><fo:block id="The_Ring-d1e299"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">The Ring</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The ring contains information about the physical location of the objects stored inside Swift. It is a virtual representation of mapping of names of entities to their real physical location. It is analogous to an indexing service that various processes use to lookup and locate the real physical location of entities within the cluster. Entities like Accounts, Containers, Objects have their own seperate rings.</fo:block></fo:block></fo:block><fo:block id="OpenStack_Imaging_Service_Glance_-d1e329"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">OpenStack Imaging Service ( Glance )</fo:marker><fo:block font-size="17.28pt">OpenStack Imaging Service ( Glance )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">OpenStack Imaging Service is a lookup and retrieval system for virtual machine images. It can be configured to use any one of the following 3 storage backends:</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e169"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e170"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>OpenStack Object Store to store images</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e172"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>S3 storage directly</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e174"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>S3 storage with Object Store as the intermediate for S3 access.</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block id="Functions_and_Features_Glance_-d1e352"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Functions and Features ( Glance )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e178"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e179"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Provides imaging service</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block><fo:block id="Components_of_OpenStack_Imaging_Service_Glance_-d1e365"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Components of OpenStack Imaging Service ( Glance )</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e183"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e184"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Glance-control</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e186"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Glance-registry</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block></fo:block></fo:block></fo:block></fo:flow></fo:page-sequence><fo:page-sequence xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" hyphenate="true" master-reference="body" language="en" format="1" initial-page-number="auto" force-page-count="no-force" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2"><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-first"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-odd"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-even"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block>OpenStack Compute Starter Guide</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block>Nov 11, 2011</fo:block></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block>diablo</fo:block></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content xmlns:exslt="http://exslt.org/common" flow-name="xsl-region-before-blank"><fo:block-container reference-orientation="90" absolute-position="fixed" top="-1in" overflow="visible" height="2in" width="30in" z-index="1"><fo:block padding-before=".45in" font-size="1.5em" color="gray" font-weight="bold"><fo:leader leader-pattern="use-content" leader-length="30in" letter-spacing=".1em"> </fo:leader></fo:block></fo:block-container><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell><fo:table-cell text-align="right" display-align="before" relative-align="baseline"><fo:block><fo:block/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-footnote-separator"><fo:block><fo:leader color="black" leader-pattern="rule" leader-length="1in"/></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-first"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-odd"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-even"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"><fo:page-number/></fo:block></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:static-content flow-name="xsl-region-after-blank"><fo:block font-family="CartoGothic Std" margin-left="0pt"><fo:table table-layout="fixed" width="100%" border-top-width="0.5pt" border-top-style="solid" border-top-color="black"><fo:table-column column-number="1" column-width="proportional-column-width(1)"/><fo:table-column column-number="2" column-width="proportional-column-width(1)"/><fo:table-column column-number="3" column-width="proportional-column-width(1)"/><fo:table-body><fo:table-row block-progression-dimension.minimum="14pt"><fo:table-cell text-align="start" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="center" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell><fo:table-cell text-align="end" display-align="after" relative-align="baseline"><fo:block><fo:block xmlns:exslt="http://exslt.org/common"/></fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:static-content><fo:flow flow-name="xsl-region-body" start-indent="4pc" end-indent="0pt"><fo:block id="Installation_and_configuration-d1e385"><fo:block font-family="CartoGothic Std"><fo:block margin-left="0pt"><fo:block font-size="24.8832pt" font-weight="bold"><fo:block keep-with-next.within-column="always" space-before.optimum="10pt" space-before.minimum="10pt * 0.8" space-before.maximum="10pt * 1.2" hyphenate="false" text-align="start" start-indent="0pt" font-family="CartoGothic Std" color="rgb(196,0,34)" hyphenation-character="-" hyphenation-push-character-count="2" hyphenation-remain-character-count="2">2. Installation and Configuration</fo:block></fo:block></fo:block></fo:block></fo:block><fo:block id="Introduction-d1e390"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Introduction</fo:marker><fo:block font-size="20.735999999999997pt">Introduction</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The following section describes how to set up a minimal cloud infrastructure based on OpenStack using 3 machines. These machines are referred to in this and subsequent chapters as Server1 and Server2 and Client1. Server1 runs all the components of Nova as well as Glance and Swift. Server2 runs only nova-compute. Since OpenStack components follow a shared-nothing policy, each component or any group of components can be installed on any server.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Client1 is not a required component. In our sample setup, it is used for bundling images, as a client to the web interface, and to run euca commands to manage the infrastructure. Having this client ensures that you do not need to meddle with the servers for tasks such as bundling. Also, bundling of Desktop Systems including Windows will require a GUI and it is better to have a dedicated machine for this purpose. We would recommend this machine to be VT-Enabled so that KVM can be run which allows for Windows VMs during image creation for bundling.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">
5<fo:block id="d5e197"><fo:external-graphic src="url(/Users/anne.gentle/src/cssoss/working/pomwork/images/openstackv5.png)" width="auto" height="auto" content-width="60%" content-height="60%" content-type="content-type:image/png"/></fo:block>5<fo:block id="d6e195"><fo:external-graphic src="url(/Users/anne.gentle/src/cssoss/diablo/images/openstackv5.png)" width="auto" height="auto" content-width="60%" content-height="60%" content-type="content-type:image/png"/></fo:block>
6</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The installation steps use certain specifics such as host names/IP addresses etc. Modify them to suit your environment before using them. The following table summarizes these specifics.</fo:block><fo:block xmlns:rx="http://www.renderx.com/XSL/Extensions" space-before.minimum="0.5em" space-before.optimum="1em" space-before.maximum="2em" space-after.minimum="0.5em" space-after.optimum="1em" space-after.maximum="2em" keep-together.within-column="auto" id="d5e203"><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" font-weight="bold" font-size="12pt" hyphenate="false" space-after.minimum="0.4em" space-after.optimum="0.6em" space-after.maximum="0.8em" color="rgb(176,0,14)" font-family="CartoGothic Std" keep-with-next.within-column="always">Table 2.1. Configuration</fo:block><fo:table border-before-width.conditionality="retain" border-collapse="collapse" font-size="8pt" border-start-style="solid" border-end-style="solid" border-top-style="solid" border-bottom-style="solid" border-start-width="0.5pt" border-end-width="0.5pt" border-top-width="0.5pt" border-bottom-width="0.5pt" border-start-color="black" border-end-color="black" border-top-color="black" border-bottom-color="black" table-layout="fixed" width="100%"><fo:table-column column-number="1" column-width="25%"/><fo:table-column column-number="2" column-width="25%"/><fo:table-column column-number="3" column-width="25%"/><fo:table-column column-number="4" column-width="25%"/><fo:table-header start-indent="0pt" end-indent="0pt"><fo:table-row keep-with-next.within-column="always"><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block font-weight="bold"> </fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block font-weight="bold">Server1</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block font-weight="bold">Server2</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block font-weight="bold">Client1</fo:block></fo:table-cell></fo:table-row></fo:table-header><fo:table-body start-indent="0pt" end-indent="0pt"><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>Functionality</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>All components of OpenStack including nova-compute</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>nova-compute</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>Client</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>Network Interfaces</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>eth0 - Public N/W, eth1 - Private N/W</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>eth0 - Public N/W, eth1 - Private N/W</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>eth0 - Public N/W</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>IP addresses</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>eth0 - 10.10.10.2, eth1 - 192.168.3.1</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>eth0 - 10.10.10.3, eth1 - 192.168.3.2</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>eth0 - 10.10.10.4</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>Hostname</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>server1.example.com</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>server2.example.com</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>client.example.com</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>DNS servers</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>10.10.10.3</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>10.10.10.3</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>10.10.10.3</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>Gateway IP</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>10.10.10.1</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>10.10.10.1</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt"><fo:block>10.10.10.1</fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:block><fo:block id="Server1-d1e537"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Server1</fo:marker><fo:block font-size="20.735999999999997pt">Server1</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">As shown in the figure above, Server1 contains all nova- services including nova-compute, nova-api, nova-volume, nova-network, as well as the Image Service Glance and Swift. It contains two Network Interface Cards (NICs).</fo:block><fo:block id="Base_OS-d1e542"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Base OS</fo:marker><fo:block font-size="17.28pt">Base OS</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install 64 bit version of Ubuntu server 11.10 keeping the following configurations in mind.</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d5e249"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e250"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Create the first user with the name 'localadmin' .</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e252"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Installation lets you setup the IP address for the first interface i.e. eth0. Set the IP address details.</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d5e254"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>During installation select only Openssh-server in the packages menu.</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">We will also be running nova-volume on this server and it is ideal to have a dedicated partition for the use of nova-volume. So, ensure that you choose manual partitioning scheme while installing Ubuntu Server and create a dedicated partition with adequate amount of space for this purpose. We have referred to this partition in the rest of the chapter as /dev/sda6. You can substitute the correct device name of this dedicated partition based on your local setup while following the instructions. Also ensure that the partition type is set as Linux LVM (8e) using fdisk either during install or immediately after installation is over.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Update the machine using the following commands.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e258">sudo apt-get update</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e259">sudo apt-get upgrade</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install bridge-utils:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e261">sudo apt-get install -y bridge-utils</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Reboot the server and login as the admin user(localadmin) created during the OS installation.</fo:block></fo:block><fo:block id="Networking_Configuration-d1e591"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Networking Configuration</fo:marker><fo:block font-size="17.28pt">Networking Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit the /etc/network/interfaces file so as to looks like this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e266">6</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The installation steps use certain specifics such as host names/IP addresses etc. Modify them to suit your environment before using them. The following table summarizes these specifics.</fo:block><fo:block xmlns:rx="http://www.renderx.com/XSL/Extensions" space-before.minimum="0.5em" space-before.optimum="1em" space-before.maximum="2em" space-after.minimum="0.5em" space-after.optimum="1em" space-after.maximum="2em" keep-together.within-column="auto" id="d6e201"><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" font-weight="bold" font-size="12pt" hyphenate="false" space-after.minimum="0.4em" space-after.optimum="0.6em" space-after.maximum="0.8em" color="rgb(176,0,14)" font-family="CartoGothic Std" keep-with-next.within-column="always">Table 2.1. Configuration</fo:block><fo:table border-before-width.conditionality="retain" border-collapse="collapse" font-size="8pt" border-start-style="solid" border-end-style="solid" border-top-style="solid" border-bottom-style="solid" border-start-width="0.5pt" border-end-width="0.5pt" border-top-width="0.5pt" border-bottom-width="0.5pt" border-start-color="black" border-end-color="black" border-top-color="black" border-bottom-color="black" table-layout="fixed" width="100%"><fo:table-column column-number="1" column-width="25%"/><fo:table-column column-number="2" column-width="25%"/><fo:table-column column-number="3" column-width="25%"/><fo:table-column column-number="4" column-width="25%"/><fo:table-header start-indent="0pt" end-indent="0pt"><fo:table-row keep-with-next.within-column="always"><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block font-weight="bold"> </fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block font-weight="bold">Server1</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block font-weight="bold">Server2</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block font-weight="bold">Client1</fo:block></fo:table-cell></fo:table-row></fo:table-header><fo:table-body start-indent="0pt" end-indent="0pt"><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>Functionality</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>All components of OpenStack including nova-compute</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>nova-compute</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>Client</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>Network Interfaces</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>eth0 - Public N/W, eth1 - Private N/W</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>eth0 - Public N/W, eth1 - Private N/W</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>eth0 - Public N/W</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>IP addresses</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>eth0 - 10.10.10.2, eth1 - 192.168.3.1</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>eth0 - 10.10.10.3, eth1 - 192.168.3.2</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>eth0 - 10.10.10.4</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>Hostname</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>server1.example.com</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>server2.example.com</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>client.example.com</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>DNS servers</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>10.10.10.3</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>10.10.10.3</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-bottom-width="0.5pt" border-bottom-style="solid" border-bottom-color="black"><fo:block>10.10.10.3</fo:block></fo:table-cell></fo:table-row><fo:table-row><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>Gateway IP</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>10.10.10.1</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt" border-end-width="0.5pt" border-end-style="solid" border-end-color="black"><fo:block>10.10.10.1</fo:block></fo:table-cell><fo:table-cell padding-start="2pt" padding-end="2pt" padding-top="2pt" padding-bottom="2pt"><fo:block>10.10.10.1</fo:block></fo:table-cell></fo:table-row></fo:table-body></fo:table></fo:block></fo:block><fo:block id="Server1-d1e537"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Server1</fo:marker><fo:block font-size="20.735999999999997pt">Server1</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">As shown in the figure above, Server1 contains all nova- services including nova-compute, nova-api, nova-volume, nova-network, as well as the Image Service Glance and Swift. It contains two Network Interface Cards (NICs).</fo:block><fo:block id="Base_OS-d1e542"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Base OS</fo:marker><fo:block font-size="17.28pt">Base OS</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install 64 bit version of Ubuntu server 11.10 keeping the following configurations in mind.</fo:block><fo:list-block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" space-after.optimum="1em" space-after.minimum="0.8em" space-after.maximum="1.2em" provisional-label-separation="0.2em" provisional-distance-between-starts="1.0em" id="d6e247"><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e248"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Create the first user with the name 'localadmin' .</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e250"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>Installation lets you setup the IP address for the first interface i.e. eth0. Set the IP address details.</fo:block></fo:block></fo:list-item-body></fo:list-item><fo:list-item space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em" id="d6e252"><fo:list-item-label end-indent="label-end()"><fo:block>•</fo:block></fo:list-item-label><fo:list-item-body start-indent="body-start()"><fo:block><fo:block>During installation select only Openssh-server in the packages menu.</fo:block></fo:block></fo:list-item-body></fo:list-item></fo:list-block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">We will also be running nova-volume on this server and it is ideal to have a dedicated partition for the use of nova-volume. So, ensure that you choose manual partitioning scheme while installing Ubuntu Server and create a dedicated partition with adequate amount of space for this purpose. We have referred to this partition in the rest of the chapter as /dev/sda6. You can substitute the correct device name of this dedicated partition based on your local setup while following the instructions. Also ensure that the partition type is set as Linux LVM (8e) using fdisk either during install or immediately after installation is over.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Update the machine using the following commands.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e256">sudo apt-get update</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e257">sudo apt-get upgrade</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install bridge-utils:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e259">sudo apt-get install -y bridge-utils</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Reboot the server and login as the admin user(localadmin) created during the OS installation.</fo:block></fo:block><fo:block id="Networking_Configuration-d1e591"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Networking Configuration</fo:marker><fo:block font-size="17.28pt">Networking Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit the /etc/network/interfaces file so as to looks like this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e264">
7auto lo7auto lo
8iface lo inet loopback8iface lo inet loopback
99
@@ -13,7 +13,7 @@
13 netmask 255.​255.​255.​013 netmask 255.​255.​255.​0
14 broadcast 10.​10.​10.​25514 broadcast 10.​10.​10.​255
15 gateway 10.​10.​10.​115 gateway 10.​10.​10.​1
16 dns-nameservers 10.​10.​10.​10016 dns-nameservers 10.​10.​10.​3
1717
18auto eth118auto eth1
19iface eth1 inet static19iface eth1 inet static
@@ -21,15 +21,15 @@
21 netmask 255.​255.​255.​021 netmask 255.​255.​255.​0
22 network 192.​168.​3.​022 network 192.​168.​3.​0
23 broadcast 192.​168.​3.​25523 broadcast 192.​168.​3.​255
24</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart the network now</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e268">sudo /​etc/​init.​d/​networking restart</fo:block></fo:block><fo:block id="NTP_Server-d1e609"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">NTP Server</fo:marker><fo:block font-size="17.28pt">NTP Server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install NTP package. This server is going to act as an NTP server for the nodes. The time on all components of OpenStack will have to be in sync. We can run NTP server on this and have other components sync to it.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e272">sudo apt-get install -y ntp</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Open the file /etc/ntp.conf and add the following lines to make sure that the time of the server is in sync with an external server and in case Internet connectivity is down, NTP server uses its own hardware clock as the fallback.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e274">24</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart the network now</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e266">sudo /​etc/​init.​d/​networking restart</fo:block></fo:block><fo:block id="NTP_Server-d1e609"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">NTP Server</fo:marker><fo:block font-size="17.28pt">NTP Server</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install NTP package. This server is going to act as an NTP server for the nodes. The time on all components of OpenStack will have to be in sync. We can run NTP server on this and have other components sync to it.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e270">sudo apt-get install -y ntp</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Open the file /etc/ntp.conf and add the following lines to make sure that the time of the server is in sync with an external server and in case Internet connectivity is down, NTP server uses its own hardware clock as the fallback.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e272">
25server ntp.​ubuntu.​com25server ntp.​ubuntu.​com
26server 127.​127.​1.​026server 127.​127.​1.​0
27fudge 127.​127.​1.​0 stratum 1027fudge 127.​127.​1.​0 stratum 10
28</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart NTP service to make the changes effective</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e276">sudo /​etc/​init.​d/​ntp restart</fo:block></fo:block><fo:block id="Database_Server-d1e657"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Databases</fo:marker><fo:block font-size="17.28pt">Databases</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">You can use MySQL, PostgreSQL or SQLite for Nova and Glance. Depending upon your choice of database, you will need to install the necessary packages and configure the database server.</fo:block><fo:block id="MySQL-d1e856"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">MySQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install mysql-server package</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e283">sudo apt-get install -y mysql-server28</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart NTP service to make the changes effective</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e274">sudo /​etc/​init.​d/​ntp restart</fo:block></fo:block><fo:block id="Database_Server-d1e657"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Databases</fo:marker><fo:block font-size="17.28pt">Databases</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">You can use MySQL, PostgreSQL or SQLite for Nova and Glance. Depending upon your choice of database, you will need to install the necessary packages and configure the database server.</fo:block><fo:block id="MySQL-d1e856"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">MySQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install mysql-server package</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e281">sudo apt-get install -y mysql-server
29</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create the root password for mysql. The password here is "mygreatsecret"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Change the bind address from 127.0.0.1 to 0.0.0.0 in /etc/mysql/my.cnf and it will look like this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e286">bind-address =​ 0.​0.​0.​029</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create the root password for mysql. The password here is "mygreatsecret"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Change the bind address from 127.0.0.1 to 0.0.0.0 in /etc/mysql/my.cnf and it will look like this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e284">bind-address =​ 0.​0.​0.​0
30</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart MySQL server to ensure that it starts listening on all interfaces.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e288">sudo restart mysql30</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart MySQL server to ensure that it starts listening on all interfaces.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e286">sudo restart mysql
31</fo:block></fo:block><fo:block id="PostgreSQL-dle678"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">PostgreSQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install PostgreSQL and the python driver for PostgreSQL</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e292">sudo apt-get install -y postgresql python-psycopg2</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Setup PostgreSQL to listen on all interfaces by editing /etc/postgresql/9.1/main/postgresql.conf and uncommenting and modifying the relevant line. Look for the right file if you have a different version of PostgreSQL</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e294">listen_addresses =​ '*'</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart PostgreSQL server to ensure that it starts listening on all interfaces.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e296">sudo /​etc/​init.​d/​postgresql restart</fo:block></fo:block><fo:block id="SQLite-dle899"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">SQLite</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install SQLite</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e300">sudo apt-get install -y sqlite</fo:block></fo:block></fo:block><fo:block id="Glance-d1e634"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Glance</fo:marker><fo:block font-size="17.28pt">Glance</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Nova can use Glance service to manage Operating System images that it needs for bringing up instances. Glance can use several types of storage backends such as filestore, s3 etc.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e304">sudo apt-get install -y glance31</fo:block></fo:block><fo:block id="PostgreSQL-dle678"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">PostgreSQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install PostgreSQL and the python driver for PostgreSQL</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e290">sudo apt-get install -y postgresql python-psycopg2</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Setup PostgreSQL to listen on all interfaces by editing /etc/postgresql/9.1/main/postgresql.conf and uncommenting and modifying the relevant line. Look for the right file if you have a different version of PostgreSQL</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e292">listen_addresses =​ '*'</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart PostgreSQL server to ensure that it starts listening on all interfaces.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e294">sudo /​etc/​init.​d/​postgresql restart</fo:block></fo:block><fo:block id="SQLite-dle899"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">SQLite</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install SQLite</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e298">sudo apt-get install -y sqlite</fo:block></fo:block></fo:block><fo:block id="Glance-d1e634"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Glance</fo:marker><fo:block font-size="17.28pt">Glance</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Nova can use Glance service to manage Operating System images that it needs for bringing up instances. Glance can use several types of storage backends such as filestore, s3 etc.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e302">sudo apt-get install -y glance
32</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The default config file at /etc/glance/glance.conf is good to use for a simple file store as the storage backend. Glance can be configured to use other storage backends such as Swift.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Glance uses sqlite as the default database backend. While sqlite offers a quick and easy way to get started, for production use, you may consider a database such as MySQL or PostgreSQL.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Glance has two components - glance-api and glance-registry. These can be controlled using the concerned upstart jobs.</fo:block><fo:block id="Glancedb-d1a734"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Database Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Glance uses SQLite by default. MySQL and PostgreSQL can also be configured to work with Glance.</fo:block><fo:block id="GlanceMS-d2s21"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">MySQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a database named glance</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e314">sudo mysql -uroot -pmygreatsecret -e 'CREATE DATABASE glance;'</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user named glancedbadmin</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e316">sudo mysql -uroot -pmygreatsecret -e 'CREATE USER glancedbadmin;'</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Grant all privileges for glancedbadmin on the Database "glance".</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e318">sudo mysql -uroot -pmygreatsecret -e "GRANT ALL PRIVILEGES ON glance.​* TO 'glancedbadmin'@'%' ;"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a password for the user "glanceadmin"</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e320">sudo mysql -uroot -pmygreatsecret -e "SET PASSWORD FOR 'glancedbadmin'@'%' =​ PASSWORD('glancesecret');"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit the file /etc/glance/glance-registry.conf and edit the line which contains the option "sql_connection =" to this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e322">sql_connection =​ mysql:/​/​glancedbadmin:glancesecret@10.​10.​10.​2/​glance</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart glance-registry after making changes to /etc/glance/glance-registry.conf</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e324">sudo restart glance-registry</fo:block></fo:block><fo:block id="GlancePS-d1f234"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">PostgreSQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user called 'glancedbadmin' with password 'glancesecret', create the database 'glance' and give 'glancedbadmin' all privileges on that database.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e328">32</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The default config file at /etc/glance/glance.conf is good to use for a simple file store as the storage backend. Glance can be configured to use other storage backends such as Swift.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Glance uses sqlite as the default database backend. While sqlite offers a quick and easy way to get started, for production use, you may consider a database such as MySQL or PostgreSQL.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Glance has two components - glance-api and glance-registry. These can be controlled using the concerned upstart jobs.</fo:block><fo:block id="Glancedb-d1a734"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Database Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Glance uses SQLite by default. MySQL and PostgreSQL can also be configured to work with Glance.</fo:block><fo:block id="GlanceMS-d2s21"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">MySQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a database named glance</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e312">sudo mysql -uroot -pmygreatsecret -e 'CREATE DATABASE glance;'</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user named glancedbadmin</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e314">sudo mysql -uroot -pmygreatsecret -e 'CREATE USER glancedbadmin;'</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Grant all privileges for glancedbadmin on the Database "glance".</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e316">sudo mysql -uroot -pmygreatsecret -e "GRANT ALL PRIVILEGES ON glance.​* TO 'glancedbadmin'@'%' ;"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a password for the user "glanceadmin"</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e318">sudo mysql -uroot -pmygreatsecret -e "SET PASSWORD FOR 'glancedbadmin'@'%' =​ PASSWORD('glancesecret');"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit the file /etc/glance/glance-registry.conf and edit the line which contains the option "sql_connection =" to this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e320">sql_connection =​ mysql:/​/​glancedbadmin:glancesecret@10.​10.​10.​2/​glance</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart glance-registry after making changes to /etc/glance/glance-registry.conf</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e322">sudo restart glance-registry</fo:block></fo:block><fo:block id="GlancePS-d1f234"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">PostgreSQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user called 'glancedbadmin' with password 'glancesecret', create the database 'glance' and give 'glancedbadmin' all privileges on that database.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e326">
33sudo su - postgres33sudo su - postgres
34psql34psql
35CREATE user glancedbadmin;35CREATE user glancedbadmin;
@@ -38,10 +38,10 @@
38GRANT ALL PRIVILEGES ON database glance TO glancedbadmin;38GRANT ALL PRIVILEGES ON database glance TO glancedbadmin;
39\​q39\​q
40exit40exit
41</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit the file /etc/glance/glance-registry.conf and edit the line which contains the option "sql_connection =" to this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e330">sql_connection =​ postgresql:/​/​glancedbadmin:glancesecret@10.​10.​10.​2/​glance</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart glance-registry after making changes to /etc/glance/glance-registry.conf</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e332">sudo restart glance-registry</fo:block></fo:block></fo:block></fo:block><fo:block id="Nova-d1e718"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Nova</fo:marker><fo:block font-size="17.28pt">Nova</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install the messaging queue server, RabbitMQ and various nova components.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e336">sudo apt-get install -y rabbitmq-server nova-common nova-doc python-nova nova-api nova-network nova-volume nova-objectstore nova-scheduler nova-compute</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install euca2ools package for command line tools to interact with nova.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e338">sudo apt-get install -y euca2ools41</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit the file /etc/glance/glance-registry.conf and edit the line which contains the option "sql_connection =" to this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e328">sql_connection =​ postgresql:/​/​glancedbadmin:glancesecret@10.​10.​10.​2/​glance</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart glance-registry after making changes to /etc/glance/glance-registry.conf</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e330">sudo restart glance-registry</fo:block></fo:block></fo:block></fo:block><fo:block id="Nova-d1e718"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Nova</fo:marker><fo:block font-size="17.28pt">Nova</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install the messaging queue server, RabbitMQ and various nova components.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e334">sudo apt-get install -y rabbitmq-server nova-common nova-doc python-nova nova-api nova-network nova-volume nova-objectstore nova-scheduler nova-compute</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install euca2ools package for command line tools to interact with nova.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e336">sudo apt-get install -y euca2ools
42</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install unzip for extracting archives.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e340">sudo apt-get install -y unzip42</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install unzip for extracting archives.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e338">sudo apt-get install -y unzip
43</fo:block><fo:block id="NovaDB-d2s241"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Database Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Nova can use MySQL or PostgreSQL for storing its data. For non-production use, sqlite is also an option.</fo:block><fo:block id="MySQL_Server-d1e657"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">MySQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a database named nova.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e347">sudo mysql -uroot -pmygreatsecret -e 'CREATE DATABASE nova;'43</fo:block><fo:block id="NovaDB-d2s241"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Database Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Nova can use MySQL or PostgreSQL for storing its data. For non-production use, sqlite is also an option.</fo:block><fo:block id="MySQL_Server-d1e657"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">MySQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a database named nova.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e345">sudo mysql -uroot -pmygreatsecret -e 'CREATE DATABASE nova;'
44</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user named novadbadmin which has access to nova related databases.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e349">sudo mysql -uroot -pmygreatsecret -e 'CREATE USER novadbadmin;'</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Grant all privileges for novadbadmin on the Database "nova".</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e351">sudo mysql -uroot -pmygreatsecret -e "GRANT ALL PRIVILEGES ON nova.​* TO 'novadbadmin'@'%' ;"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Set password for novadbadmin.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e353">sudo mysql -uroot -pmygreatsecret -e "SET PASSWORD FOR 'novadbadmin'@'%' =​ PASSWORD('novasecret');"</fo:block></fo:block><fo:block id="PostgreSQL-d2s315"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">PostgreSQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user called 'novadbadmin' with password 'novasecret', create the database 'nova' and give 'novadbadmin' all privileges on that database.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e357">44</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user named novadbadmin which has access to nova related databases.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e347">sudo mysql -uroot -pmygreatsecret -e 'CREATE USER novadbadmin;'</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Grant all privileges for novadbadmin on the Database "nova".</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e349">sudo mysql -uroot -pmygreatsecret -e "GRANT ALL PRIVILEGES ON nova.​* TO 'novadbadmin'@'%' ;"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Set password for novadbadmin.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e351">sudo mysql -uroot -pmygreatsecret -e "SET PASSWORD FOR 'novadbadmin'@'%' =​ PASSWORD('novasecret');"</fo:block></fo:block><fo:block id="PostgreSQL-d2s315"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">PostgreSQL</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user called 'novadbadmin' with password 'novasecret', create the database 'nova' and give 'novadbadmin' all privileges on that database.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e355">
45sudo su - postgres45sudo su - postgres
46psql46psql
47CREATE user novadbadmin;47CREATE user novadbadmin;
@@ -50,10 +50,10 @@
50GRANT ALL PRIVILEGES ON database nova TO novadbadmin;50GRANT ALL PRIVILEGES ON database nova TO novadbadmin;
51\​q51\​q
52exit52exit
53</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Configure Postgresql to accept connections from users from any machine on 10.10.10.0/24 and 192.168.3.0/24 by adding the following line to /etc/postgresql/9.1/main/pg_hba.conf.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e359">53</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Configure Postgresql to accept connections from users from any machine on 10.10.10.0/24 and 192.168.3.0/24 by adding the following line to /etc/postgresql/9.1/main/pg_hba.conf.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e357">
54host all all 10.​10.​10.​0/​24 md554host all all 10.​10.​10.​0/​24 md5
55host all all 192.​168.​3.​0/​24 md555host all all 192.​168.​3.​0/​24 md5
56</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart PostgreSQL.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e361">/​etc/​init.​d/​postgresql restart</fo:block></fo:block></fo:block><fo:block id="Nova_conf-d2s367"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Nova Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit the /etc/nova/nova.conf file to look like this.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e365">56</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart PostgreSQL.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e359">/​etc/​init.​d/​postgresql restart</fo:block></fo:block></fo:block><fo:block id="Nova_conf-d2s367"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Nova Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit the /etc/nova/nova.conf file to look like this.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e363">
57--dhcpbridge_flagfile=​/​etc/​nova/​nova.​conf57--dhcpbridge_flagfile=​/​etc/​nova/​nova.​conf
58--dhcpbridge=​/​usr/​bin/​nova-dhcpbridge58--dhcpbridge=​/​usr/​bin/​nova-dhcpbridge
59--logdir=​/​var/​log/​nova59--logdir=​/​var/​log/​nova
@@ -64,67 +64,65 @@
64--s3_host=​10.​10.​10.​264--s3_host=​10.​10.​10.​2
65--rabbit_host=​10.​10.​10.​265--rabbit_host=​10.​10.​10.​2
66--cc_host=​10.​10.​10.​266--cc_host=​10.​10.​10.​2
67--ec2_url=​http:/​/​10.​10.​10.​2:8773/​services/​Cloud
68--nova_url=​http:/​/​10.​10.​10.​2:8774/​v1.​1/​67--nova_url=​http:/​/​10.​10.​10.​2:8774/​v1.​1/​
69--fixed_range=​192.​168.​0.​0/​1668--fixed_range=​192.​168.​0.​0/​16
70--network_size=​869--network_size=​8
71--FAKE_subdomain=​ec2
72--routing_source_ip=​10.​10.​10.​270--routing_source_ip=​10.​10.​10.​2
73--sql_connection=​mysql:/​/​novadbadmin:novasecret@10.​10.​10.​2/​nova71--sql_connection=​mysql:/​/​novadbadmin:novasecret@10.​10.​10.​2/​nova
74--glance_api_servers=​192.​168.​3.​2:929272--glance_api_servers=​192.​168.​3.​2:9292
75--image_service=​nova.​image.​glance.​GlanceImageService73--image_service=​nova.​image.​glance.​GlanceImageService
76--iscsi_ip_prefix=​192.​168.​74--iscsi_ip_prefix=​192.​168.​
77--vlan_interface=​eth175--vlan_interface=​br100
78--public_interface=​eth076--public_interface=​eth0
79</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">For configuring with PostgreSQL change the line with --sql_connection to:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e367">--sql_connection=​postgresql:/​/​novadbadmin:novasecret@10.​10.​10.​2/​nova</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">For configuring with SQLite change the line with --sql_connection to:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e369">--sql_connection=​sqlite:/​/​/​/​var/​lib/​nova/​nova.​sqlite</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install iscsitarget</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e371">sudo apt-get -y install iscsitarget iscsitarget-dkms</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Enable iscsitarget.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e373">sudo sed -i 's/​false/​true/​g' /​etc/​default/​iscsitarget</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart the iscsitarget service</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e375">sudo service iscsitarget restart</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a Physical Volume.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e377">sudo pvcreate /​dev/​sda677</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">For configuring with PostgreSQL change the line with --sql_connection to:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e365">--sql_connection=​postgresql:/​/​novadbadmin:novasecret@10.​10.​10.​2/​nova</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">For configuring with SQLite change the line with --sql_connection to:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e367">--sql_connection=​sqlite:/​/​/​/​var/​lib/​nova/​nova.​sqlite</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install iscsitarget</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e369">sudo apt-get -y install iscsitarget iscsitarget-dkms</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Enable iscsitarget.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e371">sudo sed -i 's/​false/​true/​g' /​etc/​default/​iscsitarget</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart the iscsitarget service</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e373">sudo service iscsitarget restart</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a Physical Volume.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e375">sudo pvcreate /​dev/​sda6
80</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a Volume Group named nova-volumes.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e379">sudo vgcreate nova-volumes /​dev/​sda678</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a Volume Group named nova-volumes.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e377">sudo vgcreate nova-volumes /​dev/​sda6
81</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Change the ownership of the /etc/nova folder and permissions for /etc/nova/nova.conf:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e381">79</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Change the ownership of the /etc/nova folder and permissions for /etc/nova/nova.conf:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e379">
82sudo chown -R root:nova /​etc/​nova80sudo chown -R root:nova /​etc/​nova
83sudo chmod 644 /​etc/​nova/​nova.​conf81sudo chmod 644 /​etc/​nova/​nova.​conf
84</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart all the nova related services.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e383">sudo restart libvirt-bin; sudo restart nova-network; sudo restart nova-compute; sudo restart nova-api; sudo restart nova-objectstore; sudo restart nova-scheduler; sudo restart nova-volume; sudo restart glance-api; sudo restart glance-registry</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create nova schema in the MySQL Database.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e385">sudo nova-manage db sync</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Provide a range of IPs to be attached to the instances.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e387">sudo nova-manage network create private 192.​168.​4.​0/​24 1 25682</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart all the nova related services.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e381">sudo restart libvirt-bin; sudo restart nova-network; sudo restart nova-compute; sudo restart nova-api; sudo restart nova-objectstore; sudo restart nova-scheduler; sudo restart nova-volume; sudo restart glance-api; sudo restart glance-registry</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create nova schema in the MySQL Database.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e383">sudo nova-manage db sync</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Provide a range of IPs to be attached to the instances.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e385">sudo nova-manage network create private 192.​168.​4.​0/​24 1 256
85</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Allocate 32 pubic IP addresses for use with the instances starting from 10.10.10.225.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e389">sudo nova-manage floating create --ip_range=​10.​10.​10.​224/​2783</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Allocate 32 pubic IP addresses for use with the instances starting from 10.10.10.225.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e387">sudo nova-manage floating create --ip_range=​10.​10.​10.​224/​27
86</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user with admin rights on nova.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e391">sudo nova-manage user admin novaadmin84</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a user with admin rights on nova.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e389">sudo nova-manage user admin novaadmin
87</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a project named proj.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e393">sudo nova-manage project create proj novaadmin85</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a project named proj.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e391">sudo nova-manage project create proj novaadmin
88</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart all the nova related services.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e395">sudo restart libvirt-bin; sudo restart nova-network; sudo restart nova-compute; sudo restart nova-api; sudo restart nova-objectstore; sudo restart nova-scheduler; sudo restart nova-volume; sudo restart glance-api; sudo restart glance-registry</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a directory to download nova credentials and download the zip file.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e397">mkdir /​home/​localadmin/​creds86</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Restart all the nova related services.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e393">sudo restart libvirt-bin; sudo restart nova-network; sudo restart nova-compute; sudo restart nova-api; sudo restart nova-objectstore; sudo restart nova-scheduler; sudo restart nova-volume; sudo restart glance-api; sudo restart glance-registry</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create a directory to download nova credentials and download the zip file.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e395">mkdir /​home/​localadmin/​creds
89</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Generate and save credentials for accessing/managing the nova cloud.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e399">sudo nova-manage project zipfile proj novaadmin /​home/​localadmin/​creds/​novacreds.​zip87</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Generate and save credentials for accessing/managing the nova cloud.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e397">sudo nova-manage project zipfile proj novaadmin /​home/​localadmin/​creds/​novacreds.​zip
90</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Contents of novacreds.zip are required to use euca2ools to manage the cloud infrastructure and you will need to transfer this zip file to any machine from where you want to run the commands from euca2ools. We will be using these credentials from client1 as well.88</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Contents of novacreds.zip are required to use euca2ools to manage the cloud infrastructure and you will need to transfer this zip file to any machine from where you want to run the commands from euca2ools. We will be using these credentials from client1 as well.
91</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Navigate in to the folder created and extract the files and change their ownership.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e402">89</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Navigate in to the folder created and extract the files and change their ownership.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e400">
92cd /​home/​localadmin/​creds90cd /​home/​localadmin/​creds
93unzip novacreds.​zip91unzip novacreds.​zip
94sudo chown localadmin:localadmin /​home/​localadmin/​creds/​ -R92sudo chown localadmin:localadmin /​home/​localadmin/​creds/​ -R
95</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Here are the files extracted:</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">cacert.pem, cert.pem, novarc, pk.pem</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">novarc contains several environmental variables including your nova credentials to be set before you can use the commands from euca2ools such euca-describe-images, euca-describe-instances etc. these variables can be set by sourcing novarc file.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">In Diablo, by default novarc file contains EC2_ACCESS_KEY in a format that is not usable by euca-* commands. To fix this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e407">sudo nova-manage user exports novaadmin</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The output will be something like:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e409">93</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Here are the files extracted:</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">cacert.pem, cert.pem, novarc, pk.pem</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">novarc contains several environmental variables including your nova credentials to be set before you can use the commands from euca2ools such euca-describe-images, euca-describe-instances etc. these variables can be set by sourcing novarc file.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">In Diablo, by default novarc file contains EC2_ACCESS_KEY in a format that is not usable by euca-* commands. To fix this:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e405">sudo nova-manage user exports novaadmin</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The output will be something like:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e407">
96export EC2_ACCESS_KEY=​c043916c-9a0c-4f91-ad6c-4b30908b6c7794export EC2_ACCESS_KEY=​c043916c-9a0c-4f91-ad6c-4b30908b6c77
97export EC2_SECRET_KEY=​d0ac688e-02f3-48f3-b758-96d886461ace95export EC2_SECRET_KEY=​d0ac688e-02f3-48f3-b758-96d886461ace
98</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Open the novarc file and replace the line</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e411">export EC2_ACCESS_KEY=​"novaadmin:proj"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">with</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e413">export EC2_ACCESS_KEY=​"c043916c-9a0c-4f91-ad6c-4b30908b6c77:proj"</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e414">source /​home/​localadmin/​creds/​novarc96</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Open the novarc file and replace the line</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e409">export EC2_ACCESS_KEY=​"novaadmin:proj"</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">with</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e411">export EC2_ACCESS_KEY=​"c043916c-9a0c-4f91-ad6c-4b30908b6c77:proj"</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e412">source /​home/​localadmin/​creds/​novarc
99</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Check if the credentials are working and if nova has been setup properly by running:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e416">euca-describe-availability-zones verbose97</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Check if the credentials are working and if nova has been setup properly by running:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e414">euca-describe-availability-zones verbose
100</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">If you see something like the following with all components happy, it means that the set up is ready to be used.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e418">98</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">If you see something like the following with all components happy, it means that the set up is ready to be used.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e416">
101AVAILABILITYZONE nova available99AVAILABILITYZONE nova available
102AVAILABILITYZONE |- server1100AVAILABILITYZONE |- server1
103AVAILABILITYZONE | |- nova-compute enabled :-) 2011-09-29 07:26:04101AVAILABILITYZONE | |- nova-compute enabled :-) 2011-09-29 07:26:04
104AVAILABILITYZONE | |- nova-scheduler enabled :-) 2011-09-29 07:26:04102AVAILABILITYZONE | |- nova-scheduler enabled :-) 2011-09-29 07:26:04
105AVAILABILITYZONE | |- nova-network enabled :-) 2011-09-29 07:26:07103AVAILABILITYZONE | |- nova-network enabled :-) 2011-09-29 07:26:07
106AVAILABILITYZONE | |- nova-volume enabled :-) 2011-09-29 07:26:06104AVAILABILITYZONE | |- nova-volume enabled :-) 2011-09-29 07:26:06
107</fo:block></fo:block></fo:block><fo:block id="Swift_install"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Swift</fo:marker><fo:block font-size="17.28pt">Swift</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install Swift via apt-get:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e422">105</fo:block></fo:block></fo:block><fo:block id="Swift_install"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:marker marker-class-name="section.head.marker">Swift</fo:marker><fo:block font-size="17.28pt">Swift</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install Swift via apt-get:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e420">
108sudo apt-get install swift swift-proxy memcached swift-account swift-container swift-object106sudo apt-get install swift swift-proxy memcached swift-account swift-container swift-object
109</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install Swift via apt-get:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e424">sudo apt-get install xfsprogs curl</fo:block><fo:block id="Swift_configuration"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">There are two methods to configure the storage backend for use by Swift.</fo:block><fo:block id="Physical_device_as_storage"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Physical Device (Partition) as a storage</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">A physical device is partitioned and used as storage. Assuming there is a secondary disk /dev/sdb :</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e431">107</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Install Swift via apt-get:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e422">sudo apt-get install xfsprogs curl</fo:block><fo:block id="Swift_configuration"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">There are two methods to configure the storage backend for use by Swift.</fo:block><fo:block id="Physical_device_as_storage"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Physical Device (Partition) as a storage</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">A physical device is partitioned and used as storage. Assuming there is a secondary disk /dev/sdb :</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e429">
110sudo fdisk /​dev/​sdb108sudo fdisk /​dev/​sdb
111</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Press m for help; n for new partition; p to view the partition table; w to write changes to disk once you are done. You should now have a partiton /dev/sda1.</fo:block></fo:block><fo:block id="Loopback_device_as_storage"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Loopback Device (File) as storage</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">We create a zero filled file for use as a loopback device for the Swift storage backend. Here we use the disk copy command to create a file named swift-disk and allocate a million 1KiB blocks (976.56 MiB) to it. So we have a loopback disk of approximately 1GiB. We can increase this size by modifying the seek value.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e436">109</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Press m for help; n for new partition; p to view the partition table; w to write changes to disk once you are done. You should now have a partition /dev/sdb1.</fo:block></fo:block><fo:block id="Loopback_device_as_storage"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="12pt">Loopback Device (File) as storage</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">We create a zero filled file for use as a loopback device for the Swift storage backend. Here we use the disk copy command to create a file named swift-disk and allocate a million 1KiB blocks (976.56 MiB) to it. So we have a loopback disk of approximately 1GiB. We can increase this size by modifying the seek value.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e434">
112sudo dd if=​/​dev/​zero of=​/​srv/​swift-disk bs=​1024 count=​0 seek=​1000000110sudo dd if=​/​dev/​zero of=​/​srv/​swift-disk bs=​1024 count=​0 seek=​1000000
113</fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">We now create an xfs filesystem out of the partition or the loopback device we just created. For the loopback file, doing "file swift-disk" will give the details of the device. For the partition details, tune2fs utility can be used with "l" parameter.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">For the physical partition:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e439">111</fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">We now create an xfs filesystem out of the partition or the loopback device we just created. For the loopback file, doing "file swift-disk" will give the details of the device. For the partition details, tune2fs utility can be used with "l" parameter.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">For the physical partition:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e437">
114sudo mkfs.​xfs -i size=​1024 /​dev/​sdb1112sudo mkfs.​xfs -i size=​1024 /​dev/​sdb1
115sudo tune2fs -l /​dev/​sdb1 |grep -i inode113sudo tune2fs -l /​dev/​sdb1 |grep -i inode
116</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em"> For the loopback file:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e441">114</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em"> For the loopback file:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e439">
117sudo mkfs.​xfs -i size=​1024 /​srv/​swift-disk115sudo mkfs.​xfs -i size=​1024 /​srv/​swift-disk
118file /​srv/​swift-disk116file /​srv/​swift-disk
119swift-disk1: SGI XFS filesystem data (blksz 4096,​ inosz 1024,​ v2 dirs)117swift-disk1: SGI XFS filesystem data (blksz 4096,​ inosz 1024,​ v2 dirs)
120</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The storage device we created has to be mounted automatically everytime the system starts. Lets create an arbitrary mountpoint /mnt/sdb1.118</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">The storage device we created has to be mounted automatically everytime the system starts. Lets create an arbitrary mountpoint /mnt/sdb1.
121</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e443">119</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e441">
122sudo mkdir /​mnt/​sdb1120sudo mkdir /​mnt/​sdb1
123</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit /etc/fstab and append the following line:</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">For the physical partiton</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e446">121</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Edit /etc/fstab and append the following line:</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">For the physical partiton</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e444">
124/​dev/​sdb1 /​mnt/​sdb1 xfs noatime,​nodiratime,​nobarrier,​logbufs=​8 0 0122/​dev/​sdb1 /​mnt/​sdb1 xfs noatime,​nodiratime,​nobarrier,​logbufs=​8 0 0
125</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">If you have a loopback file</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e448">123</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">If you have a loopback file</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e446">
126/​srv/​swift-disk /​mnt/​sdb1 xfs loop,​noatime,​nodiratime,​nobarrier,​logbufs=​8 0 0124/​srv/​swift-disk /​mnt/​sdb1 xfs loop,​noatime,​nodiratime,​nobarrier,​logbufs=​8 0 0
127</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Let's now mount the storage device and create directories (which would act as storage nodes) and provide appropriate permissions and ownerships (user:group format) for them. I have set the ownership to swift:swift for all relevant files.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e450">125</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Let's now mount the storage device and create directories (which would act as storage nodes) and provide appropriate permissions and ownerships (user:group format) for them. I have set the ownership to swift:swift for all relevant files.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e448">
128sudo mount /​mnt/​sdb1126sudo mount /​mnt/​sdb1
129sudo mkdir /​mnt/​sdb1/​1 /​mnt/​sdb1/​2 /​mnt/​sdb1/​3 /​mnt/​sdb1/​4127sudo mkdir /​mnt/​sdb1/​1 /​mnt/​sdb1/​2 /​mnt/​sdb1/​3 /​mnt/​sdb1/​4
130sudo chown swift:swift /​mnt/​sdb1/​*128sudo chown swift:swift /​mnt/​sdb1/​*
@@ -134,10 +132,10 @@
134sudo ln -s /​mnt/​sdb1/​4 /​srv/​4132sudo ln -s /​mnt/​sdb1/​4 /​srv/​4
135sudo mkdir -p /​etc/​swift/​object-server /​etc/​swift/​container-server /​etc/​swift/​account-server /​srv/​1/​node/​sdb1 /​srv/​2/​node/​sdb2 /​srv/​3/​node/​sdb3 /​srv/​4/​node/​sdb4 /​var/​run/​swift133sudo mkdir -p /​etc/​swift/​object-server /​etc/​swift/​container-server /​etc/​swift/​account-server /​srv/​1/​node/​sdb1 /​srv/​2/​node/​sdb2 /​srv/​3/​node/​sdb3 /​srv/​4/​node/​sdb4 /​var/​run/​swift
136sudo chown -R swift:swift /​etc/​swift /​srv/​[1-4]/​134sudo chown -R swift:swift /​etc/​swift /​srv/​[1-4]/​
137</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Append the following lines to /etc/rc.local just before the "exit 0":</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e452">135</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Append the following lines to /etc/rc.local just before the "exit 0":</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e450">
138mkdir /​var/​run/​swift136mkdir /​var/​run/​swift
139chown swift:swift /​var/​run/​swift137chown swift:swift /​var/​run/​swift
140</fo:block></fo:block><fo:block id="Configuring_rsync"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Configuring Rsync</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Rsync is responsible for maintaining object replicas. It is used by various swift services to maintain consistency of objects and perform updation operations. It is configured for all the storage nodes.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create /etc/rsyncd.conf file and add the following lines to it:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e457">138</fo:block></fo:block><fo:block id="Configuring_rsync"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Configuring Rsync</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Rsync is responsible for maintaining object replicas. It is used by various swift services to maintain consistency of objects and perform updation operations. It is configured for all the storage nodes.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create /etc/rsyncd.conf file and add the following lines to it:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e455">
141uid =​ swift139uid =​ swift
142gid =​ swift140gid =​ swift
143log file =​ /​var/​log/​rsyncd.​log141log file =​ /​var/​log/​rsyncd.​log
@@ -217,15 +215,15 @@
217path =​ /​srv/​4/​node/​215path =​ /​srv/​4/​node/​
218read only =​ false216read only =​ false
219lock file =​ /​var/​lock/​object6040.​lock217lock file =​ /​var/​lock/​object6040.​lock
220</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Set RSYNC_ENABLE=true in /etc/default/rsync and then restart the rsync service.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e459">218</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Set RSYNC_ENABLE=true in /etc/default/rsync and then restart the rsync service.</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e457">
221service rsync restart219sudo service rsync restart
222</fo:block></fo:block><fo:block id="Swift_hash_configuration"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create and edit /etc/swift/swift.conf and add the following lines to it:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e463">220</fo:block></fo:block><fo:block id="Swift_hash_configuration"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Swift Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create and edit /etc/swift/swift.conf and add the following lines to it:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e461">
223[swift-hash]221[swift-hash]
224# random unique (preferably alphanumeric) string that can never change (DO NOT LOSE)222# random unique (preferably alphanumeric) string that can never change (DO NOT LOSE)
225swift_hash_path_suffix =​ {place_random_unique_string_here}223swift_hash_path_suffix =​ {place_random_unique_string_here}
226</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">You will need the random string when you add more nodes to the setup. So never loose the string.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">You can generate a random string by running the following command:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e466">224</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">You will need the random string when you add more nodes to the setup. So never lose the string.</fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">You can generate a random string by running the following command:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d6e464">
227od -t x8 -N 8 -A n &lt; /​dev/​random225od -t x8 -N 8 -A n &lt; /​dev/​random
228</fo:block></fo:block><fo:block id="Proxy_server_configuration"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Proxy Server Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create and edit /etc/swift/proxy-server.conf and add the following lines to the file:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed-treatment="preserve" text-align="start" font-family="monospace" font-size="85%" hyphenation-character="\" background-color="#E0E0E0" id="d5e470">226</fo:block></fo:block><fo:block id="Proxy_server_configuration"><fo:block><fo:block><fo:block keep-together.within-column="always" margin-left="0pt" font-family="CartoGothic Std"><fo:block keep-with-next.within-column="always"><fo:block font-family="CartoGothic Std" font-weight="bold" keep-with-next.within-column="always" space-before.minimum="0.8em" space-before.optimum="1.0em" space-before.maximum="1.2em" text-align="start" start-indent="0pt" color="rgb(196,0,34)"><fo:block font-size="14.399999999999999pt">Proxy Server Configuration</fo:block></fo:block></fo:block></fo:block></fo:block></fo:block><fo:block space-before.optimum="1em" space-before.minimum="0.8em" space-before.maximum="1.2em">Create and edit /etc/swift/proxy-server.conf and add the following lines to the file:</fo:block><fo:block space-before.minimum="0.8em" space-before.optimum="1em" space-before.maximum="1.2em" space-after.minimum="0.8em" space-after.optimum="1em" space-after.maximum="1.2em" hyphenate="false" wrap-option="wrap" white-space-collapse="false" white-space-treatment="preserve" linefeed

Subscribers

People subscribed via source and target branches