aboutsummaryrefslogtreecommitdiff
path: root/devenv
diff options
context:
space:
mode:
authorSteven Dake <stdake@cisco.com>2015-08-20 23:06:10 -0700
committerSteven Dake <stdake@cisco.com>2015-08-21 02:10:31 -0700
commit6e3127d0432a25124b3068e03d6e05fac8a73e63 (patch)
tree72d82c52b43107b15e5fcdd4ebb01ed0c8843a81 /devenv
parentbbcf22cc1298dd0ad4f0826c9e1186298c64569e (diff)
downloadkolla-6e3127d0432a25124b3068e03d6e05fac8a73e63.tar.gz
kolla-6e3127d0432a25124b3068e03d6e05fac8a73e63.zip
Run pandoc to convert the documentation
This converts all MD formatted docs that were renamed to RST to preserve git history into actual RST documentation. Some minor edits were made but in general the purpose of this patch is to *only* convert the documentation not rework the documentation. I do plan on reworking the documentation in further patch sets. All links were tested and a test rendering is available: http://github.com/sdake/kolla Change-Id: I3df430b14df1ede15407c7f4ba7afcbdc6f9d757
Diffstat (limited to 'devenv')
-rw-r--r--devenv/README.rst198
1 files changed, 112 insertions, 86 deletions
diff --git a/devenv/README.rst b/devenv/README.rst
index 53f0a3417..4436f4660 100644
--- a/devenv/README.rst
+++ b/devenv/README.rst
@@ -1,50 +1,55 @@
A Kolla Cluster with Heat
=========================
-These [Heat][] templates will deploy an *N*-node [Kolla][] cluster,
-where *N* is the value of the `number_of_nodes` parameter you
-specify when creating the stack.
+These `Heat <https://wiki.openstack.org/wiki/Heat>`__ templates will
+deploy an *N*-node `Kolla <https://launchpad.net/kolla>`__ cluster,
+where *N* is the value of the ``number_of_nodes`` parameter you specify
+when creating the stack.
Kolla has recently undergone a considerable design change. The details
-of the design change is addressed in this [spec][]. As part of the
-design change, containers share pid and networking namespaces with
-the Docker host. Therefore, containers no longer connect to a docker0
-bridge and have separate networking from the host. As a result, Kolla
+of the design change is addressed in this
+`spec <https://review.openstack.org/#/c/153798/>`__. As part of the
+design change, containers share pid and networking namespaces with the
+Docker host. Therefore, containers no longer connect to a docker0 bridge
+and have separate networking from the host. As a result, Kolla
networking has a configuration similar to:
-![Image](https://raw.githubusercontent.com/stackforge/kolla/master/devenv/kollanet.png)
+.. figure:: https://raw.githubusercontent.com/stackforge/kolla/master/devenv/kollanet.png
+ :alt: Image
-Sharing pid and networking namespaces is detailed in the
-[super privileged containers][] concept.
+ Image
+Sharing pid and networking namespaces is detailed in the `super
+privileged
+containers <http://sdake.io/2015/01/28/an-atomic-upgrade-process-for-openstack-compute-nodes/>`__
+concept.
-The Kolla cluster is based on Fedora 21, requires the minimum Docker version of 1.7.0
-[binary][].
+The Kolla cluster is based on Fedora 21, requires the minimum Docker
+version of 1.7.0
+`binary <https://docs.docker.com/installation/binaries/>`__.
-These templates are designed to work with the Icehouse or Juno
-versions of Heat. If using Icehouse Heat, this [patch][] is
-required to correct a bug with template validation when using the
-"Fn::Join" function).
-
-[heat]: https://wiki.openstack.org/wiki/Heat
-[kolla]: https://launchpad.net/kolla
-[binary]: https://docs.docker.com/installation/binaries/
-[copr]: https://copr.fedoraproject.org/
-[spec]: https://review.openstack.org/#/c/153798/
-[super privileged containers]: http://sdake.io/2015/01/28/an-atomic-upgrade-process-for-openstack-compute-nodes/
-[patch]: https://review.openstack.org/#/c/121139/
+These templates are designed to work with the Icehouse or Juno versions
+of Heat. If using Icehouse Heat, this
+`patch <https://review.openstack.org/#/c/121139/>`__ is required to
+correct a bug with template validation when using the "Fn::Join"
+function).
Create the Glance Image
=======================
-After cloning the project, run the get-image.sh script from the project's
-devenv directory:
+After cloning the project, run the get-image.sh script from the
+project's devenv directory:
+
+::
$ ./get-image.sh
-The script will create a Fedora 21 image with the required modifications.
+The script will create a Fedora 21 image with the required
+modifications.
Add the image to your Glance image store:
+::
+
$ glance image-create --name "fedora-21-x86_64" \
--file /var/lib/libvirt/images/fedora-21-x86_64 \
--disk-format qcow2 --container-format bare \
@@ -57,6 +62,8 @@ Copy local.yaml.example to local.yaml and edit the contents to match
your deployment environment. Here is an example of a customized
local.yaml:
+::
+
parameters:
ssh_key_name: admin-key
external_network_id: 028d70dd-67b8-4901-8bdd-0c62b06cce2d
@@ -64,106 +71,125 @@ local.yaml:
container_external_subnet_id: 575770dd-6828-1101-34dd-0c62b06fjf8s
dns_nameserver: 192.168.200.1
-The external_network_id is used by Heat to automatically assign
+The external\_network\_id is used by Heat to automatically assign
floating IP's to your Kolla nodes. You can then access your Kolla nodes
directly using the floating IP. The network ID is derived from the
-`neutron net-list` command.
+``neutron net-list`` command.
-The container_external_network_id is used by the nova-network container
-within the Kolla node as the FLAT_INTERFACE. The FLAT_INTERFACE tells Nova what
-device to use (i.e. eth1) to pass network traffic between Nova instances
-across Kolla nodes. This network should be seperate from the external_network_id
-above and is derived from the 'neutron net-list' command.
+The container\_external\_network\_id is used by the nova-network
+container within the Kolla node as the FLAT\_INTERFACE. The
+FLAT\_INTERFACE tells Nova what device to use (i.e. eth1) to pass
+network traffic between Nova instances across Kolla nodes. This network
+should be seperate from the external\_network\_id above and is derived
+from the 'neutron net-list' command.
-The container_external_subnet_id: is the subnet equivalent to
-container_external_network_id
+The container\_external\_subnet\_id: is the subnet equivalent to
+container\_external\_network\_id
Review the parameters section of kollacluster.yaml for a full list of
configuration options. **Note:** You must provide values for:
-- `ssh_key_name`
-- `external_network_id`
-- `container_external_network_id`
-- `container_external_subnet_id`
+- ``ssh_key_name``
+- ``external_network_id``
+- ``container_external_network_id``
+- ``container_external_subnet_id``
And then create the stack, referencing that environment file:
+::
+
$ heat stack-create -f kollacluster.yaml -e local.yaml kolla-cluster
Access the Kolla Nodes
======================
-You can get the ip address of the Kolla nodes using the `heat
-output-show` command:
+You can get the ip address of the Kolla nodes using the
+``heat output-show`` command:
+
+::
$ heat output-show kolla-cluster kolla_node_external_ip
"192.168.200.86"
-You can ssh into that server as the `fedora` user:
+You can ssh into that server as the ``fedora`` user:
+
+::
$ ssh fedora@192.168.200.86
-Once logged into your Kolla node, setup your environment.
-The basic starting environment will be created using `docker-compose`.
-This environment will start up the openstack services listed in the
-compose directory.
+Once logged into your Kolla node, setup your environment. The basic
+starting environment will be created using ``docker-compose``. This
+environment will start up the openstack services listed in the compose
+directory.
To start, setup your environment variables.
+::
+
$ cd kolla
$ ./tools/genenv
-The `genenv` script will create a compose/openstack.env file
-and an openrc file in your current directory. The openstack.env
-file contains all of your initialized environment variables, which
-you can edit for a different setup.
+The ``genenv`` script will create a compose/openstack.env file and an
+openrc file in your current directory. The openstack.env file contains
+all of your initialized environment variables, which you can edit for a
+different setup.
Next, run the start script.
+::
+
$ ./tools/kolla-compose start
-The `start` script is responsible for starting the containers
-using `docker-compose -f <osp-service-container> up -d`.
+The ``start`` script is responsible for starting the containers using
+``docker-compose -f <osp-service-container> up -d``.
If you want to start a container set by hand use this template
+::
+
$ docker-compose -f glance-api-registry.yml up -d
Debugging
-==========
+=========
-All Docker commands should be run from the directory of the Docker binaray,
-by default this is `/`.
+All Docker commands should be run from the directory of the Docker
+binaray, by default this is ``/``.
A few commands for debugging the system.
-```
-$ sudo ./docker images
-```
-Lists all images that have been pulled from the upstream kollaglue repository
-thus far. This can be run on the node during the `./start` operation to
-check on the download progress.
-
-```
-$ sudo ./docker ps -a
-```
-This will show all processes that docker has started. Removing the `-a` will
-show only active processes. This can be run on the node during the `./start`
-operation to check that the containers are orchestrated.
-
-```
-$ sudo ./docker logs <containerid>
-```
-```
-$ curl http://<NODE_IP>:3306
-```
-You can use curl to test connectivity to a container. This example demonstrates
-the Mariadb service is running on the node. Output should appear as follows
-
-```
-$ curl http://10.0.0.4:3306
-Trying 10.0.0.4...
-Connected to 10.0.0.4.
-Escape character is '^]'.
-
-```
+::
+
+ $ sudo ./docker images
+
+Lists all images that have been pulled from the upstream kollaglue
+repository thus far. This can be run on the node during the ``./start``
+operation to check on the download progress.
+
+::
+
+ $ sudo ./docker ps -a
+
+This will show all processes that docker has started. Removing the
+``-a`` will show only active processes. This can be run on the node
+during the ``./start`` operation to check that the containers are
+orchestrated.
+
+::
+
+ $ sudo ./docker logs <containerid>
+
+::
+
+ $ curl http://<NODE_IP>:3306
+
+You can use curl to test connectivity to a container. This example
+demonstrates the Mariadb service is running on the node. Output should
+appear as follows
+
+::
+
+ $ curl http://10.0.0.4:3306
+ Trying 10.0.0.4...
+ Connected to 10.0.0.4.
+ Escape character is '^]'.
+