summaryrefslogtreecommitdiffstats
path: root/meta-openstack/DOC
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@windriver.com>2013-08-25 23:47:42 -0400
committerBruce Ashfield <bruce.ashfield@windriver.com>2013-08-28 18:42:00 -0400
commitec5aab41b280d719c14e1c5d88d09e7b38168bb3 (patch)
tree9856d6b299ed11026f0ad897e1c1534957cccead /meta-openstack/DOC
parentbb21ef0e1d3ea74ab61b2289eb8de08d6fbd50ee (diff)
downloadmeta-cloud-services-ec5aab41b280d719c14e1c5d88d09e7b38168bb3.tar.gz
docs: clarify docs names and roles
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Diffstat (limited to 'meta-openstack/DOC')
-rw-r--r--meta-openstack/DOC99
1 files changed, 0 insertions, 99 deletions
diff --git a/meta-openstack/DOC b/meta-openstack/DOC
deleted file mode 100644
index 160e67a..0000000
--- a/meta-openstack/DOC
+++ /dev/null
@@ -1,99 +0,0 @@
1Meta-OpenStack
2==============
3
4Description
5-----------
6The meta-openstack layer provides support for building the OpenStack packages.
7It contains recipes for the nova, glance, keystone, cinder, quantum, swift and
8horizon components and their dependencies.
9
10Components
11----------
12* All the openstack packages are python packages. They can be found in the
13recipes-devtools/python folder. Each component has been split into multiple
14packages similar to the system used by other Linux distributions.
15
16* The configuration files for each package can be found in the files folder
17for each package. The debug and verbose options have been enabled for capturing
18meaningful information in the logs. The packages have been configured
19following the model used by devstack. Each package has to initialize a database
20before it is used for the first time. This is done using a postinstall script
21that is run the first time the image is booted. This is why the image boot
22time is longer the first time.
23
24* System-V initscripts are also provided in order to start the services at boot time.
25
26* We used postgresql (package) for the database backend. The layer contains
27an initscript that starts the DB server at boot time. Tests were done
28using sqlite3 and MySQL and there were no errors.
29
30* The RabbitMQ server is used for the AMQP message queues. The server starts
31at boot time with the default configuration.
32
33* The layer also contains three packagegroups:
34** packagegroup-cloud-controller - required packages for building a controller
35node. This provides all functionality except the actual hosting of the virtual
36machines or network services. This includes the database server, AMQP server
37and all the openstack services except nova-compute.
38** packagegroup-cloud-compute - packages for a processing node. This node runs
39the compute service as well as the network service agent (in our case, the
40Open vSwitch plugin agent). This server also manages the KVM hypervisor.
41** packagegroup-cloud-network: this provides networking services like DHCP,
42layer 2 switching, layer 3 routing and metadata connectivity.
43
44* When creating an image, multiple packagegroups can be used to obtain a target
45that has the functionality of both a controller and compute node.
46
47Dependencies
48------------
49* This layers depends on components from the poky, meta-virtualization and
50meta-openembedded layers. You can find the exact URIs of the repos and the
51necessary revisions in the README file.
52
53Building an image
54-----------------
55
56* There are three new target images: openstack-image-compute,
57openstack-image-network and openstack-image-controller that contain the
58packagegroups with the same name, that have been described in the previous
59section.
60
61* Once a buildir has been initialized you have to append the necessary layers
62to the bblayers.conf file:
63 /meta-virtualization \
64 /meta-cloud/meta-openstack \
65 /meta-openembedded/meta-oe \
66 /meta-openembedded/meta-networking \
67
68Package configurations
69----------------------
70The identity.sh script creates the necessary users, services and endpoints
71for the Keystone identity system. If you want to customize the usernames or
72passwords don't forget to change the information in the configuration files
73for the services as well.
74
75Running an image
76----------------
77* Controller node *
78To test the image, you can run it using the runqemu script. In order to use
79the command line clients (nova, keystone, glance etc) some environmental
80variables have to be set. These are required by the openstack services to
81connect to the identity service and authenticate the user. These can be found
82in /root/.bashrc. If you start a new bash session they are automatically
83loaded. All the installed OpenStack services nova(except compute), keystone,
84glance, cinder, quantum, swift horizon should be running after a successful boot.
85
86The dashboard component is listening for new connections on port 8080. You can
87connect to it using any browser.
88
89* Compute node *
90The configuration files for the nova package are for a controller node so some
91options have to be changed for the compute service to properly work. You have
92to replace localhost to the controller node IP in the following files:
93 /etc/nova/nova.conf: sql_connection; rabbit_host;
94 /etc/nova/api-paste.ini: auth_host;
95 /root/.bashrc: SERVICE_ENDPOINT, OS_AUTH_URL;
96Once the changes are done you have to restart the nova-compute service.
97!! Hint !!
98When using a multi-node setup it is recommended that each host have a different
99hostname and that every host knows the other hosts.