diff --git a/install-guide/source/common/configure_2_edit_magnum_conf.rst b/doc/source/install/common/configure_2_edit_magnum_conf.rst similarity index 100% rename from install-guide/source/common/configure_2_edit_magnum_conf.rst rename to doc/source/install/common/configure_2_edit_magnum_conf.rst diff --git a/install-guide/source/common/configure_3_populate_database.rst b/doc/source/install/common/configure_3_populate_database.rst similarity index 100% rename from install-guide/source/common/configure_3_populate_database.rst rename to doc/source/install/common/configure_3_populate_database.rst diff --git a/install-guide/source/common/prerequisites.rst b/doc/source/install/common/prerequisites.rst similarity index 100% rename from install-guide/source/common/prerequisites.rst rename to doc/source/install/common/prerequisites.rst diff --git a/install-guide/source/get_started.rst b/doc/source/install/get_started.rst similarity index 100% rename from install-guide/source/get_started.rst rename to doc/source/install/get_started.rst diff --git a/doc/source/install/index.rst b/doc/source/install/index.rst index 82fd44e600..e64f188317 100644 --- a/doc/source/install/index.rst +++ b/doc/source/install/index.rst @@ -2,18 +2,24 @@ Magnum Installation Guide ========================= -The Container Infrastructure Management service is a collection of components -that provides support to manage different container orchestration engines(COE) -like Kubernetes, Mesos and Swarm. - -This chapter assumes a working setup of OpenStack following the -`OpenStack Installation Guides `_. -It is recommended to follow the `Container Infrastructure Management Service -`_ -section from the OpenStack Installation Tutorials. This chapter contains the -following sections: .. toctree:: - :maxdepth: 1 + :maxdepth: 2 + + get_started.rst + install.rst + verify.rst + launch-instance.rst + next-steps.rst + +The Container Infrastructure Management service codenamed (magnum) is an +OpenStack API service developed by the OpenStack Containers Team making +container orchestration engines (COE) such as Docker Swarm, Kubernetes +and Mesos available as first class resources in OpenStack. Magnum uses +Heat to orchestrate an OS image which contains Docker and Kubernetes and +runs that image in either virtual machines or bare metal in a cluster +configuration. + +This chapter assumes a working setup of OpenStack following `OpenStack +Installation Tutorial `_. - install-guide-from-source diff --git a/install-guide/source/install-debian-manual.rst b/doc/source/install/install-debian-manual.rst similarity index 100% rename from install-guide/source/install-debian-manual.rst rename to doc/source/install/install-debian-manual.rst diff --git a/doc/source/install/install-guide-from-source.rst b/doc/source/install/install-guide-from-source.rst index 912d002b9b..17d4df5146 100644 --- a/doc/source/install/install-guide-from-source.rst +++ b/doc/source/install/install-guide-from-source.rst @@ -1,481 +1,144 @@ -.. _install: +.. _install-guide-from-source: -=================================================================== -Install the Container Infrastructure Management service from source -=================================================================== - -Install and configure -~~~~~~~~~~~~~~~~~~~~~ +Install from source code and configure +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This section describes how to install and configure the Container -Infrastructure Management service, code-named magnum, on the controller node. +Infrastructure Management service for from source code. -This section assumes that you already have a working OpenStack environment with -at least the following components installed: Identity service, Image service, -Compute service, Networking service, Block Storage service and Orchestration -service. See `OpenStack Install Guides `__. - -To provide access to Docker Swarm or Kubernetes using the native clients -(docker or kubectl respectively) magnum uses TLS certificates. To store the -certificates, it is recommended to use the `Key Manager service, code-named -barbican `__, or you can save them in magnum's database. - -Optionally, you can install the following components: - -- `Load Balancer as a Service (LBaaS v2) `__ to create clusters with multiple - masters -- `Bare Metal service `__ to create baremetal clusters -- `Object Storage service `__ to make private Docker registries available to - users -- `Telemetry Data Collection service `__ to periodically send - magnum-related metrics - -.. important:: - - Magnum creates clusters of compute instances on the Compute service (nova). - These instances must have basic Internet connectivity and must be able to - reach magnum's API server. Make sure that the Compute and Network services - are configured accordingly. - -Prerequisites -------------- - -Before you install and configure the Container Infrastructure Management -service, you must create a database, service credentials, and API endpoints. - -#. To create the database, complete these steps: - - * Use the database access client to connect to the database - server as the ``root`` user: - - .. code-block:: console - - $ mysql -u root -p - - * Create the ``magnum`` database: - - .. code-block:: console - - CREATE DATABASE magnum; - - * Grant proper access to the ``magnum`` database: - - .. code-block:: console - - GRANT ALL PRIVILEGES ON magnum.* TO 'magnum'@'controller' \ - IDENTIFIED BY 'MAGNUM_DBPASS'; - GRANT ALL PRIVILEGES ON magnum.* TO 'magnum'@'%' \ - IDENTIFIED BY 'MAGNUM_DBPASS'; - - Replace ``MAGNUM_DBPASS`` with a suitable password. - - * Exit the database access client. - -#. Source the ``admin`` credentials to gain access to - admin-only CLI commands: - - .. code-block:: console - - $ . admin-openrc - -#. To create the service credentials, complete these steps: - - * Create the ``magnum`` user: - - .. code-block:: console - - - $ openstack user create --domain default \ - --password-prompt magnum - User Password: - Repeat User Password: - +-----------+----------------------------------+ - | Field | Value | - +-----------+----------------------------------+ - | domain_id | default | - | enabled | True | - | id | a8ebafc275c54d389dfc1bff8b4fe286 | - | name | magnum | - +-----------+----------------------------------+ - - * Add the ``admin`` role to the ``magnum`` user: - - .. code-block:: console - - $ openstack role add --project service --user magnum admin - - .. note:: - - This command provides no output. - - * Create the ``magnum`` service entity: - - .. code-block:: console - - $ openstack service create --name magnum \ - --description "OpenStack Container Infrastructure Management Service" \ - container-infra - +-------------+-------------------------------------------------------+ - | Field | Value | - +-------------+-------------------------------------------------------+ - | description | OpenStack Container Infrastructure Management Service | - | enabled | True | - | id | 194faf83e8fd4e028e5ff75d3d8d0df2 | - | name | magnum | - | type | container-infra | - +-------------+-------------------------------------------------------+ - -#. Create the Container Infrastructure Management service API endpoints: - - .. code-block:: console - - $ openstack endpoint create --region RegionOne \ - container-infra public http://CONTROLLER_IP:9511/v1 - +--------------+----------------------------------+ - | Field | Value | - +--------------+----------------------------------+ - | enabled | True | - | id | cb137e6366ad495bb521cfe92d8b8858 | - | interface | public | - | region | RegionOne | - | region_id | RegionOne | - | service_id | 0f7f62a1f1a247d2a4cb237642814d0e | - | service_name | magnum | - | service_type | container-infra | - | url | http://CONTROLLER_IP:9511/v1 | - +--------------+----------------------------------+ - - $ openstack endpoint create --region RegionOne \ - container-infra internal http://CONTROLLER_IP:9511/v1 - +--------------+----------------------------------+ - | Field | Value | - +--------------+----------------------------------+ - | enabled | True | - | id | 17cbc3b6f51449a0a818118d6d62868d | - | interface | internal | - | region | RegionOne | - | region_id | RegionOne | - | service_id | 0f7f62a1f1a247d2a4cb237642814d0e | - | service_name | magnum | - | service_type | container-infra | - | url | http://CONTROLLER_IP:9511/v1 | - +--------------+----------------------------------+ - - $ openstack endpoint create --region RegionOne \ - container-infra admin http://CONTROLLER_IP:9511/v1 - +--------------+----------------------------------+ - | Field | Value | - +--------------+----------------------------------+ - | enabled | True | - | id | 30f8888e6b6646d7b5cd14354c95a684 | - | interface | admin | - | region | RegionOne | - | region_id | RegionOne | - | service_id | 0f7f62a1f1a247d2a4cb237642814d0e | - | service_name | magnum | - | service_type | container-infra | - | url | http://CONTROLLER_IP:9511/v1 | - +--------------+----------------------------------+ - - Replace ``CONTROLLER_IP`` with the IP magnum listens to. Alternatively, - you can use a hostname which is reachable by the Compute instances. - -#. Magnum requires additional information in the Identity service to - manage clusters. To add this information, complete these steps: - - * Create the ``magnum`` domain that contains projects and users: - - .. code-block:: console - - $ openstack domain create --description "Owns users and projects \ - created by magnum" magnum - +-------------+-------------------------------------------+ - | Field | Value | - +-------------+-------------------------------------------+ - | description | Owns users and projects created by magnum | - | enabled | True | - | id | 66e0469de9c04eda9bc368e001676d20 | - | name | magnum | - +-------------+-------------------------------------------+ - - * Create the ``magnum_domain_admin`` user to manage projects and users - in the ``magnum`` domain: - - .. code-block:: console - - $ openstack user create --domain magnum --password-prompt \ - magnum_domain_admin - User Password: - Repeat User Password: - +-----------+----------------------------------+ - | Field | Value | - +-----------+----------------------------------+ - | domain_id | 66e0469de9c04eda9bc368e001676d20 | - | enabled | True | - | id | 529b81cf35094beb9784c6d06c090c2b | - | name | magnum_domain_admin | - +-----------+----------------------------------+ - - * Add the ``admin`` role to the ``magnum_domain_admin`` user in the - ``magnum`` domain to enable administrative management privileges - by the ``magnum_domain_admin`` user: - - .. code-block:: console - - $ openstack role add --domain magnum --user-domain magnum \ - --user magnum_domain_admin admin - - .. note:: - - This command provides no output. +.. include:: common/prerequisites.rst Install and configure components -------------------------------- -#. Install OS-specific prerequisites: +1. Install Magnum from source: - * Ubuntu 14.04 (trusty) or higher, Debian 8: + a. Install OS-specific prerequisites: - .. code-block:: console + * Ubuntu 16.04 (xenial) or higher: - # apt-get update - # apt-get install python-dev libssl-dev libxml2-dev \ - libmysqlclient-dev libxslt-dev libpq-dev git \ - libffi-dev gettext build-essential + .. code-block:: console - * Fedora 21 / Centos 7 / RHEL 7 + # apt update + # apt install python-dev libssl-dev libxml2-dev \ + libmysqlclient-dev libxslt-dev libpq-dev git \ + libffi-dev gettext build-essential - .. code-block:: console + * Fedora 21 / Centos 7 / RHEL 7 - # yum install python-devel openssl-devel mysql-devel \ - libxml2-devel libxslt-devel postgresql-devel git \ - libffi-devel gettext gcc + .. code-block:: console - * Fedora 22 or higher + # yum install python-devel openssl-devel mysql-devel \ + libxml2-devel libxslt-devel postgresql-devel git \ + libffi-devel gettext gcc - .. code-block:: console + * Fedora 22 or higher - # dnf install python-devel openssl-devel mysql-devel \ - libxml2-devel libxslt-devel postgresql-devel git \ - libffi-devel gettext gcc + .. code-block:: console - * openSUSE Leap 42.1 + # dnf install python-devel openssl-devel mysql-devel \ + libxml2-devel libxslt-devel postgresql-devel git \ + libffi-devel gettext gcc - .. code-block:: console + * openSUSE Leap 42.1 - # zypper install git libffi-devel libmysqlclient-devel \ - libopenssl-devel libxml2-devel libxslt-devel \ - postgresql-devel python-devel gettext-runtime gcc + .. code-block:: console -2. Create magnum user and necessary directories: + # zypper install git libffi-devel libmysqlclient-devel \ + libopenssl-devel libxml2-devel libxslt-devel \ + postgresql-devel python-devel gettext-runtime gcc - * Create user: + b. Create magnum user and necessary directories: - .. code-block:: console + * Create user: - # groupadd --system magnum - # useradd --home-dir "/var/lib/magnum" \ - --create-home \ - --system \ - --shell /bin/false \ - -g magnum \ - magnum + .. code-block:: console - * Create directories: + # groupadd --system magnum + # useradd --home-dir "/var/lib/magnum" \ + --create-home \ + --system \ + --shell /bin/false \ + -g magnum \ + magnum - .. code-block:: console + * Create directories: - # mkdir -p /var/log/magnum - # mkdir -p /etc/magnum + .. code-block:: console - * Set ownership to directories: + # mkdir -p /var/log/magnum + # mkdir -p /etc/magnum - .. code-block:: console + * Set ownership to directories: - # chown magnum:magnum /var/log/magnum - # chown magnum:magnum /var/lib/magnum - # chown magnum:magnum /etc/magnum + .. code-block:: console -3. Install virtualenv and python prerequisites: + # chown magnum:magnum /var/log/magnum + # chown magnum:magnum /var/lib/magnum + # chown magnum:magnum /etc/magnum - * Install virtualenv and create one for magnum's installation: + c. Install virtualenv and python prerequisites: - .. code-block:: console + * Install virtualenv and create one for magnum's installation: - # easy_install -U virtualenv - # su -s /bin/sh -c "virtualenv /var/lib/magnum/env" magnum + .. code-block:: console - * Install python prerequisites: + # easy_install -U virtualenv + # su -s /bin/sh -c "virtualenv /var/lib/magnum/env" magnum - .. code-block:: console + * Install python prerequisites: - # su -s /bin/sh -c "/var/lib/magnum/env/bin/pip install tox pymysql \ - python-memcached" magnum + .. code-block:: console -4. Clone and install magnum: + # su -s /bin/sh -c "/var/lib/magnum/env/bin/pip install tox pymysql \ + python-memcached" magnum - .. code-block:: console + d. Clone and install magnum: - # cd /var/lib/magnum - # git clone https://git.openstack.org/openstack/magnum.git - # chown -R magnum:magnum magnum - # cd magnum - # su -s /bin/sh -c "/var/lib/magnum/env/bin/pip install -r requirements.txt" magnum - # su -s /bin/sh -c "/var/lib/magnum/env/bin/python setup.py install" magnum + .. code-block:: console -5. Copy api-paste.ini: + # cd /var/lib/magnum + # git clone https://git.openstack.org/openstack/magnum.git + # chown -R magnum:magnum magnum + # cd magnum + # su -s /bin/sh -c "/var/lib/magnum/env/bin/pip install -r requirements.txt" magnum + # su -s /bin/sh -c "/var/lib/magnum/env/bin/python setup.py install" magnum - .. code-block:: console + e. Copy api-paste.ini: - # su -s /bin/sh -c "cp etc/magnum/api-paste.ini /etc/magnum" magnum + .. code-block:: console -6. Generate a sample configuration file: + # su -s /bin/sh -c "cp etc/magnum/api-paste.ini /etc/magnum" magnum - .. code-block:: console + f. Generate a sample configuration file: - # su -s /bin/sh -c "/var/lib/magnum/env/bin/tox -e genconfig" magnum - # su -s /bin/sh -c "cp etc/magnum/magnum.conf.sample /etc/magnum/magnum.conf" magnum + .. code-block:: console -7. Optionally, if you want to customize the policies for Magnum API accesses, - you can generate a sample policy file, put it into ``/etc/magnum`` folder - for further modifications: + # su -s /bin/sh -c "/var/lib/magnum/env/bin/tox -e genconfig" magnum + # su -s /bin/sh -c "cp etc/magnum/magnum.conf.sample /etc/magnum/magnum.conf" magnum - .. code-block:: console + e. Optionally, if you want to customize the policies for Magnum API accesses, + you can generate a sample policy file, put it into ``/etc/magnum`` folder + for further modifications: - # su -s /bin/sh -c "/var/lib/magnum/env/bin/tox -e genpolicy" magnum - # su -s /bin/sh -c "cp etc/magnum/policy.yaml.sample /etc/magnum/policy.yaml" magnum + .. code-block:: console -8. Edit the ``/etc/magnum/magnum.conf``: + # su -s /bin/sh -c "/var/lib/magnum/env/bin/tox -e genpolicy" magnum + # su -s /bin/sh -c "cp etc/magnum/policy.yaml.sample /etc/magnum/policy.yaml" magnum - * In the ``[DEFAULT]`` section, - configure ``RabbitMQ`` message queue access: +.. include:: common/configure_2_edit_magnum_conf.rst - .. code-block:: ini +* Additionally, edit the ``/etc/magnum/magnum.conf`` file: - [DEFAULT] - ... - transport_url = rabbit://openstack:RABBIT_PASS@controller + * In the ``[oslo_concurrency]`` section, configure the ``lock_path``: - Replace ``RABBIT_PASS`` with the password you chose for the - ``openstack`` account in ``RabbitMQ``. + .. code-block:: ini - * In the ``[api]`` section, configure the host: + [oslo_concurrency] + ... + lock_path = /var/lib/magnum/tmp - .. code-block:: ini - - [api] - ... - host = CONTROLLER_IP - - Replace ``CONTROLLER_IP`` with the IP address on which you wish magnum api - should listen. - - * In the ``[certificates]`` section, select ``barbican`` (or ``local`` if - you don't have barbican installed): - - * Use barbican to store certificates: - - .. code-block:: ini - - [certificates] - ... - cert_manager_type = barbican - - .. important:: - - Barbican is recommended for production environments, local store should - be used for evaluation purposes. - - * To use local store for certificates, you have to create and specify the - directory to use: - - .. code-block:: console - - # su -s /bin/sh -c "mkdir -p /var/lib/magnum/certificates/" magnum - - .. code-block:: ini - - [certificates] - ... - cert_manager_type = local - storage_path = /var/lib/magnum/certificates/ - - * In the ``[cinder_client]`` section, configure the region name: - - .. code-block:: ini - - [cinder_client] - ... - region_name = RegionOne - - * In the ``[database]`` section, configure database access: - - .. code-block:: ini - - [database] - ... - connection = mysql+pymysql://magnum:MAGNUM_DBPASS@controller/magnum - - Replace ``MAGNUM_DBPASS`` with the password you chose for - the magnum database. - - * In the ``[keystone_authtoken]`` and ``trust`` sections, configure - Identity service access: - - .. code-block:: ini - - [keystone_authtoken] - ... - memcached_servers = controller:11211 - auth_version = v3 - auth_uri = http://controller:5000/v3 - project_domain_name = default - project_name = service - user_domain_name = default - password = MAGNUM_PASS - username = magnum - auth_url = http://controller:35357 - auth_type = password - admin_user = magnum - admin_password = MAGNUM_PASS - admin_tenant_name = service - - [trust] - ... - trustee_domain_name = magnum - trustee_domain_admin_name = magnum_domain_admin - trustee_domain_admin_password = DOMAIN_ADMIN_PASS - - ``trustee_domain_name`` is the name of the ``magnum`` domain and - ``trustee_domain_admin_name`` is the name of the ``magnum_domain_admin`` - user. Replace MAGNUM_PASS with the password you chose for the magnum user in the - Identity service and DOMAIN_ADMIN_PASS with the password you chose for the - ``magnum_domain_admin`` user. - - * In the ``[oslo_concurrency]`` section, configure the ``lock_path``: - - .. code-block:: ini - - [oslo_concurrency] - ... - lock_path = /var/lib/magnum/tmp - - * In the ``[oslo_messaging_notifications]`` section, configure the - ``driver``: - - .. code-block:: ini - - [oslo_messaging_notifications] - ... - driver = messaging - - * If you decide to customize Magnum policies in ``step 7``, then in the + * If you decide to customize Magnum policies in ``1.e``, then in the ``[oslo_policy]`` section, configure the ``policy_file``: .. code-block:: ini @@ -491,13 +154,13 @@ Install and configure components # chown magnum:magnum /etc/magnum/magnum.conf -9. Populate Magnum database: +3. Populate Magnum database: .. code-block:: console # su -s /bin/sh -c "/var/lib/magnum/env/bin/magnum-db-manage upgrade" magnum -10. Set magnum for log rotation: +4. Set magnum for log rotation: .. code-block:: console @@ -509,18 +172,8 @@ Finalize installation #. Create init scripts and services: - * Ubuntu 14.04 (trusty): - - .. code-block:: console - - # cd /var/lib/magnum/magnum - # cp doc/examples/etc/init/magnum-api.conf \ - /etc/init/magnum-api.conf - # cp doc/examples/etc/init/magnum-conductor.conf \ - /etc/init/magnum-conductor.conf - - * Ubuntu 14.10 or higher, Fedora 21 or higher/RHEL 7/CentOS 7, openSUSE - Leap 42.1 or Debian 8: + * Ubuntu 16.04 or higher, Fedora 21 or higher/RHEL 7/CentOS 7 or openSUSE + Leap 42.1: .. code-block:: console @@ -532,15 +185,8 @@ Finalize installation #. Start magnum-api and magnum-conductor: - * Ubuntu 14.04 (trusty): - - .. code-block:: console - - # start magnum-api - # start magnum-conductor - - * Ubuntu 14.10 or higher, Fedora 21 or higher/RHEL 7/CentOS 7, openSUSE - Leap 42.1 or Debian 8: + * Ubuntu 16.04 or higher, Fedora 21 or higher/RHEL 7/CentOS 7 or openSUSE + Leap 42.1: .. code-block:: console @@ -554,15 +200,8 @@ Finalize installation #. Verify that magnum-api and magnum-conductor services are running: - * Ubuntu 14.04 (trusty): - - .. code-block:: console - - # status magnum-api - # status magnum-conductor - - * Ubuntu 14.10 or higher, Fedora 21 or higher/RHEL 7/CentOS 7, openSUSE - Leap 42.1 or Debian 8: + * Ubuntu 16.04 or higher, Fedora 21 or higher/RHEL 7/CentOS 7 or openSUSE + Leap 42.1: .. code-block:: console @@ -588,13 +227,13 @@ Install the command-line client # dnf install python-devel openssl-devel python-virtualenv \ libffi-devel git gcc - * Ubuntu/Debian + * Ubuntu .. code-block:: console - # apt-get update - # apt-get install python-dev libssl-dev python-virtualenv \ - libffi-dev git gcc + # apt update + # apt install python-dev libssl-dev python-virtualenv \ + libffi-dev git gcc * openSUSE Leap 42.1 @@ -625,12 +264,3 @@ Install the command-line client The command-line client can be installed on the controller node or on a different host than the service. It is good practice to install it as a non-root user. - -Next Steps ----------- - -Since you have the Container Infrastructure Management service running, you -can `Verify Operation `__ and `Launch an -instance `__. diff --git a/install-guide/source/install-obs.rst b/doc/source/install/install-obs.rst similarity index 100% rename from install-guide/source/install-obs.rst rename to doc/source/install/install-obs.rst diff --git a/install-guide/source/install-rdo.rst b/doc/source/install/install-rdo.rst similarity index 100% rename from install-guide/source/install-rdo.rst rename to doc/source/install/install-rdo.rst diff --git a/install-guide/source/install-ubuntu.rst b/doc/source/install/install-ubuntu.rst similarity index 100% rename from install-guide/source/install-ubuntu.rst rename to doc/source/install/install-ubuntu.rst diff --git a/install-guide/source/install.rst b/doc/source/install/install.rst similarity index 98% rename from install-guide/source/install.rst rename to doc/source/install/install.rst index 6005099114..bbf2867bc3 100644 --- a/install-guide/source/install.rst +++ b/doc/source/install/install.rst @@ -50,3 +50,4 @@ Optionally, you can install the following components: install-obs.rst install-rdo.rst install-ubuntu.rst + install-guide-from-source.rst diff --git a/install-guide/source/launch-instance.rst b/doc/source/install/launch-instance.rst similarity index 99% rename from install-guide/source/launch-instance.rst rename to doc/source/install/launch-instance.rst index abba321116..9bc8e965ba 100644 --- a/install-guide/source/launch-instance.rst +++ b/doc/source/install/launch-instance.rst @@ -5,8 +5,8 @@ Launch an instance In environments that include the Container Infrastructure Management service, you can provision container clusters made up of virtual machines or baremetal -servers. The Container Infrastructure Management service uses `Cluster Templates -`__ +servers. The Container Infrastructure Management service uses +`Cluster Templates `__ to describe how a `Cluster `__ is constructed. In each of the following examples you will create a Cluster Template for a specific COE and then you will diff --git a/install-guide/source/next-steps.rst b/doc/source/install/next-steps.rst similarity index 100% rename from install-guide/source/next-steps.rst rename to doc/source/install/next-steps.rst diff --git a/install-guide/source/verify.rst b/doc/source/install/verify.rst similarity index 100% rename from install-guide/source/verify.rst rename to doc/source/install/verify.rst diff --git a/install-guide/source/conf.py b/install-guide/source/conf.py deleted file mode 100644 index ba96a51aca..0000000000 --- a/install-guide/source/conf.py +++ /dev/null @@ -1,301 +0,0 @@ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# This file is execfile()d with the current directory set to its -# containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -import os - - -import openstackdocstheme - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -# sys.path.insert(0, os.path.abspath('.')) - -# -- General configuration ------------------------------------------------ - -# If your documentation needs a minimal Sphinx version, state it here. -# needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be -# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom -# ones. -# TODO(ajaeger): enable PDF building, for example add 'rst2pdf.pdfbuilder' -# extensions = - -# Add any paths that contain templates here, relative to this directory. -# templates_path = ['_templates'] - -# The suffix of source filenames. -source_suffix = '.rst' - -# The encoding of source files. -# source_encoding = 'utf-8-sig' - -# The master toctree document. -master_doc = 'index' - -# General information about the project. -project = u'Installation Guide for Container Infrastructure Management Service' -bug_tag = u'install-guide' -copyright = u'2016, OpenStack contributors' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -from magnum.version import version_info as magnum_version -version = magnum_version.canonical_version_string() -# The full version, including alpha/beta/rc tags. -release = magnum_version.version_string_with_vcs() - -# A few variables have to be set for the log-a-bug feature. -# giturl: The location of conf.py on Git. Must be set manually. -# gitsha: The SHA checksum of the bug description. Automatically extracted -# from git log. -# bug_tag: Tag for categorizing the bug. Must be set manually. -# These variables are passed to the logabug code via html_context. -giturl = u'https://git.openstack.org/cgit/openstack/magnum/tree/' -giturl += u'install-guide/source' -git_cmd = "/usr/bin/git log | head -n1 | cut -f2 -d' '" -gitsha = os.popen(git_cmd).read().strip('\n') -html_context = {"gitsha": gitsha, "bug_tag": bug_tag, - "giturl": giturl, "bug_project": "magnum"} - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -# language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -# today = '' -# Else, today_fmt is used as the format for a strftime call. -# today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -exclude_patterns = ["common/*.rst"] - -# The reST default role (used for this markup: `text`) to use for all -# documents. -# default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -# add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -# add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -# show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' - -# A list of ignored prefixes for module index sorting. -# modindex_common_prefix = [] - -# If true, keep warnings as "system message" paragraphs in the built documents. -# keep_warnings = False - - -# -- Options for HTML output ---------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -html_theme = 'openstackdocs' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -# html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -html_theme_path = [openstackdocstheme.get_html_theme_path()] - -# The name for this set of Sphinx documents. If None, it defaults to -# " v documentation". -# html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -# html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -# html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -# html_favicon = None - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -# html_static_path = [] - -# Add any extra paths that contain custom files (such as robots.txt or -# .htaccess) here, relative to this directory. These files are copied -# directly to the root of the documentation. -# html_extra_path = [] - -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. -# So that we can enable "log-a-bug" links from each output HTML page, this -# variable must be set to a format that includes year, month, day, hours and -# minutes. -html_last_updated_fmt = '%Y-%m-%d %H:%M' - - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -# html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -# html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -# html_additional_pages = {} - -# If false, no module index is generated. -# html_domain_indices = True - -# If false, no index is generated. -html_use_index = False - -# If true, the index is split into individual pages for each letter. -# html_split_index = False - -# If true, links to the reST sources are added to the pages. -html_show_sourcelink = False - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -# html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -# html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -# html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -# html_file_suffix = None - -# Output file base name for HTML help builder. -htmlhelp_basename = 'install-guide' - -# If true, publish source files -html_copy_source = False - -# -- Options for LaTeX output --------------------------------------------- - -latex_elements = { - # The paper size ('letterpaper' or 'a4paper'). - # 'papersize': 'letterpaper', - - # The font size ('10pt', '11pt' or '12pt'). - # 'pointsize': '10pt', - - # Additional stuff for the LaTeX preamble. - # 'preamble': '', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, -# author, documentclass [howto, manual, or own class]). -latex_documents = [ - ('index', 'InstallGuide.tex', u'Install Guide', - u'OpenStack contributors', 'manual'), -] - -# The name of an image file (relative to this directory) to place at the top of -# the title page. -# latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -# latex_use_parts = False - -# If true, show page references after internal links. -# latex_show_pagerefs = False - -# If true, show URL addresses after external links. -# latex_show_urls = False - -# Documents to append as an appendix to all manuals. -# latex_appendices = [] - -# If false, no module index is generated. -# latex_domain_indices = True - - -# -- Options for manual page output --------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [ - ('index', 'installguide', u'Install Guide', - [u'OpenStack contributors'], 1) -] - -# If true, show URL addresses after external links. -# man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------- - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ('index', 'InstallGuide', u'Install Guide', - u'OpenStack contributors', 'InstallGuide', - 'This guide shows OpenStack end users how to install ' - 'an OpenStack cloud.', 'Miscellaneous'), -] - -# Documents to append as an appendix to all manuals. -# texinfo_appendices = [] - -# If false, no module index is generated. -# texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -# texinfo_show_urls = 'footnote' - -# If true, do not generate a @detailmenu in the "Top" node's menu. -# texinfo_no_detailmenu = False - -# -- Options for Internationalization output ------------------------------ -locale_dirs = ['locale/'] - -# -- Options for PDF output -------------------------------------------------- - -pdf_documents = [ - ('index', u'InstallGuide', u'Install Guide', - u'OpenStack contributors') -] diff --git a/install-guide/source/index.rst b/install-guide/source/index.rst deleted file mode 100644 index 17a154532e..0000000000 --- a/install-guide/source/index.rst +++ /dev/null @@ -1,24 +0,0 @@ -=========================================== -Container Infrastructure Management service -=========================================== - -.. toctree:: - :maxdepth: 2 - - get_started.rst - install.rst - verify.rst - launch-instance.rst - next-steps.rst - -The Container Infrastructure Management service codenamed (magnum) is an -OpenStack API service developed by the OpenStack Containers Team making -container orchestration engines (COE) such as Docker Swarm, Kubernetes -and Mesos available as first class resources in OpenStack. Magnum uses -Heat to orchestrate an OS image which contains Docker and Kubernetes and -runs that image in either virtual machines or bare metal in a cluster -configuration. - -This chapter assumes a working setup of OpenStack following `OpenStack -Installation Tutorial `_. -