Merge "Updated install/index.rst contents"
This commit is contained in:
commit
3f957d4897
|
@ -21,31 +21,34 @@ Tacker Installation Guide
|
||||||
Installation
|
Installation
|
||||||
------------
|
------------
|
||||||
|
|
||||||
For Tacker to work, the system consists of two parts, one is tacker system
|
For Tacker to work, the system consists of two parts:
|
||||||
and another is VIM systems. Tacker system can be installed
|
|
||||||
(here just some ways are listed):
|
|
||||||
|
|
||||||
* via DevStack, which is usually used by developers
|
* Tacker system
|
||||||
* via Tacker source code manually
|
* VIM systems
|
||||||
* via Kolla installation
|
|
||||||
|
|
||||||
|
Refer following installation procedures for both of these systems:
|
||||||
|
|
||||||
.. toctree::
|
#. Tacker Installation
|
||||||
:maxdepth: 1
|
|
||||||
|
|
||||||
devstack.rst
|
Tacker can be installed using following methods:
|
||||||
manual_installation.rst
|
|
||||||
kolla.rst
|
|
||||||
|
|
||||||
|
(here just some ways are listed)
|
||||||
|
|
||||||
Target VIM installation
|
.. toctree::
|
||||||
-----------------------
|
:maxdepth: 1
|
||||||
|
|
||||||
Most of time, the target VIM existed for Tacker to manage. This section shows
|
Install via Devstack <devstack.rst>
|
||||||
us how to prepare a target VIM for Tacker.
|
Manual Installation <manual_installation.rst>
|
||||||
|
Install via Kolla Ansible <kolla.rst>
|
||||||
|
|
||||||
.. toctree::
|
#. Target VIM Installation
|
||||||
:maxdepth: 1
|
|
||||||
|
|
||||||
openstack_vim_installation.rst
|
Most of the time, the target VIM already exists for Tacker to manage.
|
||||||
kubernetes_vim_installation.rst
|
In case the target VIM does not exist, this section shows how to prepare a
|
||||||
|
target VIM for Tacker to manage.
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:maxdepth: 1
|
||||||
|
|
||||||
|
Openstack VIM Installation <https://docs.openstack.org/install-guide/index.html>
|
||||||
|
Kubernetes VIM Installation <kubernetes_vim_installation.rst>
|
||||||
|
|
|
@ -1,234 +0,0 @@
|
||||||
..
|
|
||||||
Copyright 2014-2017 OpenStack Foundation
|
|
||||||
All Rights Reserved.
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
|
|
||||||
==========================
|
|
||||||
OpenStack VIM Installation
|
|
||||||
==========================
|
|
||||||
|
|
||||||
This document describes how to install a simple OpenStack which can be
|
|
||||||
a Tacker VIM. Since the kolla-ansible provides a good and stable way to deploy
|
|
||||||
an OpenStack environment, this document adopts it to finish this task.
|
|
||||||
|
|
||||||
The target OpenStack consists of three nodes. Besides the OpenStack role, the
|
|
||||||
first one plays kolla-ansible deploy role, which will run a local registry,
|
|
||||||
and be used to run kolla-ansible tool.
|
|
||||||
|
|
||||||
The basic information and the topology of these nodes is like this:
|
|
||||||
|
|
||||||
.. image:: ../_images/openstack_nodes.png
|
|
||||||
:scale: 50 %
|
|
||||||
|
|
||||||
|
|
||||||
Prepare kolla-ansible
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
About how to prepare Docker and kolla-ansible environment,
|
|
||||||
please refer to
|
|
||||||
https://docs.openstack.org/kolla-ansible/latest/user/quickstart.html
|
|
||||||
|
|
||||||
|
|
||||||
Set up local kolla-ansible docker registry
|
|
||||||
------------------------------------------
|
|
||||||
|
|
||||||
Kolla-ansible is publishing the packaged Docker images at
|
|
||||||
http://tarballs.openstack.org/kolla/images/. This document will use
|
|
||||||
``centos-source-registry-pike.tar.gz``.
|
|
||||||
|
|
||||||
Download this file and extract:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# wget http://tarballs.openstack.org/kolla/images/centos-source-registry-pike.tar.gz
|
|
||||||
# tar xzvf centos-source-registry-pike.tar.gz -C /opt/registry/
|
|
||||||
|
|
||||||
Start Docker registry container:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# docker run -d -v /opt/registry:/var/lib/registry -p 4000:5000 --restart=always --name registry registry:2
|
|
||||||
|
|
||||||
Set Docker to access local registry via insecure channel:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# cat /usr/lib/systemd/system/docker.service | grep insecure
|
|
||||||
ExecStart=/usr/bin/dockerd --insecure-registry 10.1.0.6:4000
|
|
||||||
# systemctl daemon-reload
|
|
||||||
# systemctl restart docker
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
The way to set up Docker to access insecure registry depends on operating
|
|
||||||
system and Docker version, above way is just an example.
|
|
||||||
|
|
||||||
Verify the local registry contains the needed images:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# curl -k localhost:4000/v2/_catalog
|
|
||||||
# curl -k localhost:4000/v2/lokolla/centos-source-fluentd/tags/list
|
|
||||||
{"name":"lokolla/centos-source-fluentd","tags":["5.0.1"]}
|
|
||||||
|
|
||||||
|
|
||||||
Install OpenStack
|
|
||||||
-----------------
|
|
||||||
|
|
||||||
#. Edit kolla ansible's configuration file ``/etc/kolla/globals.yml``:
|
|
||||||
|
|
||||||
.. code-block:: ini
|
|
||||||
|
|
||||||
---
|
|
||||||
kolla_install_type: "source"
|
|
||||||
openstack_release: "5.0.1"
|
|
||||||
kolla_internal_vip_address: "10.1.0.5"
|
|
||||||
docker_registry: "10.1.0.6:4000"
|
|
||||||
docker_namespace: "lokolla"
|
|
||||||
api_interface: "eth0"
|
|
||||||
tunnel_interface: "eth1"
|
|
||||||
neutron_external_interface: "eth2"
|
|
||||||
enable_glance: "yes"
|
|
||||||
enable_haproxy: "yes"
|
|
||||||
enable_keystone: "yes"
|
|
||||||
enable_mariadb: "yes"
|
|
||||||
enable_memcached: "yes"
|
|
||||||
enable_neutron: "yes"
|
|
||||||
enable_nova: "yes"
|
|
||||||
enable_rabbitmq: "yes"
|
|
||||||
enable_aodh: "yes"
|
|
||||||
enable_ceilometer: "yes"
|
|
||||||
enable_gnocchi: "yes"
|
|
||||||
enable_heat: "yes"
|
|
||||||
enable_horizon: "yes"
|
|
||||||
enable_neutron_sfc: "yes"
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
If nodes are using different network interface names to connect each
|
|
||||||
other, please define them in inventory file.
|
|
||||||
|
|
||||||
"10.1.0.5" is an un-used ip address, will be used as VIP address,
|
|
||||||
realized by keepalived container.
|
|
||||||
|
|
||||||
|
|
||||||
#. Run kolla-genpwd to generate system passwords:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
$ sudo cp etc/kolla/passwords.yml /etc/kolla/passwords.yml
|
|
||||||
$ sudo kolla-genpwd
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
If the pypi version is used to install kolla-ansible the skeleton
|
|
||||||
passwords file may be under
|
|
||||||
``/usr/share/kolla-ansible/etc_examples/kolla``.
|
|
||||||
|
|
||||||
|
|
||||||
With this command, ``/etc/kolla/passwords.yml`` will be populated with
|
|
||||||
generated passwords.
|
|
||||||
|
|
||||||
|
|
||||||
#. Editor inventory:
|
|
||||||
|
|
||||||
First copy the sample multinode inventory file from kolla-ansible:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# cp inventory/multinode ~/
|
|
||||||
|
|
||||||
Then edit it to contain all of the OpenStack nodes.
|
|
||||||
|
|
||||||
.. code-block:: ini
|
|
||||||
|
|
||||||
[all_vim_nodes]
|
|
||||||
10.1.0.8
|
|
||||||
10.1.0.7
|
|
||||||
10.1.0.6
|
|
||||||
|
|
||||||
[control:children]
|
|
||||||
all_vim_nodes
|
|
||||||
|
|
||||||
[network:children]
|
|
||||||
all_vim_nodes
|
|
||||||
|
|
||||||
[compute:children]
|
|
||||||
all_vim_nodes
|
|
||||||
|
|
||||||
[monitoring:children]
|
|
||||||
all_vim_nodes
|
|
||||||
|
|
||||||
[storage:children]
|
|
||||||
#if the tacker needs volume feature, put related nodes here
|
|
||||||
|
|
||||||
#. Run kolla ansible deploy to install OpenStack system:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# kolla-ansible deploy -i ~/multinode
|
|
||||||
|
|
||||||
#. Run kolla ansible post-deploy to generate tacker access environment file:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# kolla-ansible post-deploy
|
|
||||||
|
|
||||||
With this command, the ``admin-openrc.sh`` will be generated at
|
|
||||||
``/etc/kolla/admin-openrc.sh``.
|
|
||||||
|
|
||||||
|
|
||||||
Prepare OpenStack
|
|
||||||
-----------------
|
|
||||||
|
|
||||||
After installation, OpenStack administrator needs to:
|
|
||||||
|
|
||||||
* Initialized the flavors that the platform will support. Most
|
|
||||||
Tacker sample TOSCA templates will ask Tacker to create Flavor
|
|
||||||
on demand. If not, the specified flavor in templates must exist
|
|
||||||
in OpenStack.
|
|
||||||
|
|
||||||
* Upload related images. Tacker repo's sample TOSCA templates are
|
|
||||||
referring to cirros image named ``cirros-0.4.0-x86_64-disk``, so
|
|
||||||
this image should uploaded into OpenStack before Tacker uses it.
|
|
||||||
|
|
||||||
In additions, following steps are needed:
|
|
||||||
|
|
||||||
#. Create projects and users which can be used by Tacker:
|
|
||||||
|
|
||||||
This is a simple task for any OpenStack administrator, but one thing to pay
|
|
||||||
attention to is that the user must have ``admin`` and ``heat_stack_owner``
|
|
||||||
roles on the user's project.
|
|
||||||
|
|
||||||
.. image:: ../_images/openstack_role.png
|
|
||||||
:scale: 50 %
|
|
||||||
|
|
||||||
|
|
||||||
#. Create Neutron networks:
|
|
||||||
|
|
||||||
Most sample TOSCA templates assume there are three Neutron networks in
|
|
||||||
target OpenStack that the VIM user can use:
|
|
||||||
|
|
||||||
* ``net_mgmt``, which is a network Tacker system can access to. Some Tacker
|
|
||||||
features, such as monitor policies, need Tacker to access started VNF
|
|
||||||
virtual machines. For Tacker to access VNF via ``net_mgmt``, ``net_mgmt``
|
|
||||||
can be a provider network.
|
|
||||||
|
|
||||||
* ``net0`` and ``net1``, which are two business networks which VNFs will
|
|
||||||
use. How to connected them depends on the VNFs' business.
|
|
||||||
|
|
||||||
So create these three networks accordingly. For commands to create Neutron
|
|
||||||
networks, please refer to
|
|
||||||
https://docs.openstack.org/python-openstackclient/latest/cli/command-objects/network.html
|
|
Loading…
Reference in New Issue