Merge "install: Updates syntax for training labs parser."
This commit is contained in:
@@ -35,6 +35,8 @@ Command prompts
|
||||
|
||||
$ command
|
||||
|
||||
.. end
|
||||
|
||||
Any user, including the ``root`` user, can run commands that are
|
||||
prefixed with the ``$`` prompt.
|
||||
|
||||
@@ -42,6 +44,8 @@ prefixed with the ``$`` prompt.
|
||||
|
||||
# command
|
||||
|
||||
.. end
|
||||
|
||||
The ``root`` user must run commands that are prefixed with the ``#``
|
||||
prompt. You can also prefix these commands with the :command:`sudo`
|
||||
command, if available, to run them.
|
||||
|
||||
@@ -28,6 +28,10 @@ Install and configure components
|
||||
|
||||
# zypper install openstack-cinder-backup
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. Install the packages:
|
||||
@@ -36,6 +40,10 @@ Install and configure components
|
||||
|
||||
# yum install openstack-cinder
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Install the packages:
|
||||
@@ -44,11 +52,16 @@ Install and configure components
|
||||
|
||||
# apt-get install cinder-backup
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
2. Edit the ``/etc/cinder/cinder.conf`` file
|
||||
and complete the following actions:
|
||||
|
||||
* In the ``[DEFAULT]`` section, configure backup options:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -56,6 +69,8 @@ Install and configure components
|
||||
backup_driver = cinder.backup.drivers.swift
|
||||
backup_swift_url = SWIFT_URL
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``SWIFT_URL`` with the URL of the Object Storage service, typically
|
||||
``http://10.0.0.51:8080/v1/AUTH_`` if using the installation guide
|
||||
architecture.
|
||||
@@ -73,6 +88,10 @@ Finalize installation
|
||||
# systemctl enable openstack-cinder-backup.service
|
||||
# systemctl start openstack-cinder-backup.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
Restart the Block Storage backup service:
|
||||
@@ -80,3 +99,7 @@ Finalize installation
|
||||
.. code-block:: console
|
||||
|
||||
# service cinder-backup restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -23,21 +23,27 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ mysql -u root -p
|
||||
|
||||
.. end
|
||||
|
||||
* Create the ``cinder`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
CREATE DATABASE cinder;
|
||||
mysql> CREATE DATABASE cinder;
|
||||
|
||||
.. end
|
||||
|
||||
* Grant proper access to the ``cinder`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \
|
||||
mysql> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \
|
||||
IDENTIFIED BY 'CINDER_DBPASS';
|
||||
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \
|
||||
mysql> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \
|
||||
IDENTIFIED BY 'CINDER_DBPASS';
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``CINDER_DBPASS`` with a suitable password.
|
||||
|
||||
* Exit the database access client.
|
||||
@@ -49,6 +55,8 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. To create the service credentials, complete these steps:
|
||||
|
||||
* Create a ``cinder`` user:
|
||||
@@ -56,6 +64,7 @@ must create a database, service credentials, and API endpoints.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack user create --domain default --password-prompt cinder
|
||||
|
||||
User Password:
|
||||
Repeat User Password:
|
||||
+-----------+----------------------------------+
|
||||
@@ -67,12 +76,16 @@ must create a database, service credentials, and API endpoints.
|
||||
| name | cinder |
|
||||
+-----------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
* Add the ``admin`` role to the ``cinder`` user:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack role add --project service --user cinder admin
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command provides no output.
|
||||
@@ -83,6 +96,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack service create --name cinder \
|
||||
--description "OpenStack Block Storage" volume
|
||||
|
||||
+-------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+----------------------------------+
|
||||
@@ -93,10 +107,13 @@ must create a database, service credentials, and API endpoints.
|
||||
| type | volume |
|
||||
+-------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack service create --name cinderv2 \
|
||||
--description "OpenStack Block Storage" volumev2
|
||||
|
||||
+-------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+----------------------------------+
|
||||
@@ -107,6 +124,8 @@ must create a database, service credentials, and API endpoints.
|
||||
| type | volumev2 |
|
||||
+-------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The Block Storage services require two service entities.
|
||||
@@ -117,6 +136,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
volume public http://controller:8776/v1/%\(tenant_id\)s
|
||||
|
||||
+--------------+-----------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-----------------------------------------+
|
||||
@@ -133,6 +153,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
volume internal http://controller:8776/v1/%\(tenant_id\)s
|
||||
|
||||
+--------------+-----------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-----------------------------------------+
|
||||
@@ -149,6 +170,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
volume admin http://controller:8776/v1/%\(tenant_id\)s
|
||||
|
||||
+--------------+-----------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-----------------------------------------+
|
||||
@@ -163,10 +185,13 @@ must create a database, service credentials, and API endpoints.
|
||||
| url | http://controller:8776/v1/%(tenant_id)s |
|
||||
+--------------+-----------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
volumev2 public http://controller:8776/v2/%\(tenant_id\)s
|
||||
|
||||
+--------------+-----------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-----------------------------------------+
|
||||
@@ -183,6 +208,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
volumev2 internal http://controller:8776/v2/%\(tenant_id\)s
|
||||
|
||||
+--------------+-----------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-----------------------------------------+
|
||||
@@ -199,6 +225,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
volumev2 admin http://controller:8776/v2/%\(tenant_id\)s
|
||||
|
||||
+--------------+-----------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-----------------------------------------+
|
||||
@@ -213,6 +240,8 @@ must create a database, service credentials, and API endpoints.
|
||||
| url | http://controller:8776/v2/%(tenant_id)s |
|
||||
+--------------+-----------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The Block Storage services require endpoints for each service
|
||||
@@ -229,6 +258,10 @@ Install and configure components
|
||||
|
||||
# zypper install openstack-cinder-api openstack-cinder-scheduler
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. Install the packages:
|
||||
@@ -237,6 +270,10 @@ Install and configure components
|
||||
|
||||
# yum install openstack-cinder
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Install the packages:
|
||||
@@ -245,23 +282,31 @@ Install and configure components
|
||||
|
||||
# apt-get install cinder-api cinder-scheduler
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
2. Edit the ``/etc/cinder/cinder.conf`` file and complete the
|
||||
following actions:
|
||||
|
||||
* In the ``[database]`` section, configure database access:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[database]
|
||||
...
|
||||
connection = mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``CINDER_DBPASS`` with the password you chose for the
|
||||
Block Storage database.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections,
|
||||
configure ``RabbitMQ`` message queue access:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -274,12 +319,15 @@ Install and configure components
|
||||
rabbit_userid = openstack
|
||||
rabbit_password = RABBIT_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with the password you chose for the
|
||||
``openstack`` account in ``RabbitMQ``.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections,
|
||||
configure Identity service access:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -298,6 +346,8 @@ Install and configure components
|
||||
username = cinder
|
||||
password = CINDER_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``CINDER_PASS`` with the password you chose for
|
||||
the ``cinder`` user in the Identity service.
|
||||
|
||||
@@ -309,22 +359,30 @@ Install and configure components
|
||||
* In the ``[DEFAULT]`` section, configure the ``my_ip`` option to
|
||||
use the management interface IP address of the controller node:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
my_ip = 10.0.0.11
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: obs or rdo or ubuntu
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/lib/cinder/tmp
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or ubuntu or debian
|
||||
|
||||
3. Populate the Block Storage database:
|
||||
@@ -333,21 +391,28 @@ Install and configure components
|
||||
|
||||
# su -s /bin/sh -c "cinder-manage db sync" cinder
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Ignore any deprecation messages in this output.
|
||||
|
||||
.. endonly
|
||||
|
||||
Configure Compute to use Block Storage
|
||||
--------------------------------------
|
||||
|
||||
* Edit the ``/etc/nova/nova.conf`` file and add the following
|
||||
to it:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[cinder]
|
||||
os_region_name = RegionOne
|
||||
|
||||
.. end
|
||||
|
||||
Finalize installation
|
||||
---------------------
|
||||
|
||||
@@ -359,6 +424,8 @@ Finalize installation
|
||||
|
||||
# systemctl restart openstack-nova-api.service
|
||||
|
||||
.. end
|
||||
|
||||
#. Start the Block Storage services and configure them to start when
|
||||
the system boots:
|
||||
|
||||
@@ -367,6 +434,10 @@ Finalize installation
|
||||
# systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
|
||||
# systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Restart the Compute API service:
|
||||
@@ -375,9 +446,15 @@ Finalize installation
|
||||
|
||||
# service nova-api restart
|
||||
|
||||
.. end
|
||||
|
||||
#. Restart the Block Storage services:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# service cinder-scheduler restart
|
||||
# service cinder-api restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -35,6 +35,8 @@ storage node, you must prepare the storage device.
|
||||
|
||||
# zypper install lvm2
|
||||
|
||||
.. end
|
||||
|
||||
* (Optional) If you intend to use non-raw image types such as QCOW2
|
||||
and VMDK, install the QEMU package:
|
||||
|
||||
@@ -42,6 +44,10 @@ storage node, you must prepare the storage device.
|
||||
|
||||
# zypper install qemu
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* Install the LVM packages:
|
||||
@@ -50,6 +56,8 @@ storage node, you must prepare the storage device.
|
||||
|
||||
# yum install lvm2
|
||||
|
||||
.. end
|
||||
|
||||
* Start the LVM metadata service and configure it to start when the
|
||||
system boots:
|
||||
|
||||
@@ -58,12 +66,20 @@ storage node, you must prepare the storage device.
|
||||
# systemctl enable lvm2-lvmetad.service
|
||||
# systemctl start lvm2-lvmetad.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# apt-get install lvm2
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. note::
|
||||
|
||||
Some distributions include LVM by default.
|
||||
@@ -73,15 +89,21 @@ storage node, you must prepare the storage device.
|
||||
.. code-block:: console
|
||||
|
||||
# pvcreate /dev/sdb
|
||||
|
||||
Physical volume "/dev/sdb" successfully created
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the LVM volume group ``cinder-volumes``:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# vgcreate cinder-volumes /dev/sdb
|
||||
|
||||
Volume group "cinder-volumes" successfully created
|
||||
|
||||
.. end
|
||||
|
||||
The Block Storage service creates logical volumes in this volume group.
|
||||
|
||||
#. Only instances can access Block Storage volumes. However, the
|
||||
@@ -98,12 +120,15 @@ storage node, you must prepare the storage device.
|
||||
* In the ``devices`` section, add a filter that accepts the
|
||||
``/dev/sdb`` device and rejects all other devices:
|
||||
|
||||
.. path /etc/lvm/lvm.conf
|
||||
.. code-block:: ini
|
||||
|
||||
devices {
|
||||
...
|
||||
filter = [ "a/sdb/", "r/.*/"]
|
||||
|
||||
.. end
|
||||
|
||||
Each item in the filter array begins with ``a`` for **accept** or
|
||||
``r`` for **reject** and includes a regular expression for the
|
||||
device name. The array must end with ``r/.*/`` to reject any
|
||||
@@ -116,20 +141,26 @@ storage node, you must prepare the storage device.
|
||||
must also add the associated device to the filter. For example,
|
||||
if the ``/dev/sda`` device contains the operating system:
|
||||
|
||||
.. ignore_path /etc/lvm/lvm.conf
|
||||
.. code-block:: ini
|
||||
|
||||
filter = [ "a/sda/", "a/sdb/", "r/.*/"]
|
||||
|
||||
.. end
|
||||
|
||||
Similarly, if your compute nodes use LVM on the operating
|
||||
system disk, you must also modify the filter in the
|
||||
``/etc/lvm/lvm.conf`` file on those nodes to include only
|
||||
the operating system disk. For example, if the ``/dev/sda``
|
||||
device contains the operating system:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
filter = [ "a/sda/", "r/.*/"]
|
||||
|
||||
.. end
|
||||
|
||||
Install and configure components
|
||||
--------------------------------
|
||||
|
||||
@@ -141,6 +172,10 @@ Install and configure components
|
||||
|
||||
# zypper install openstack-cinder-volume tgt
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. Install the packages:
|
||||
@@ -149,6 +184,10 @@ Install and configure components
|
||||
|
||||
# yum install openstack-cinder targetcli python-keystone
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Install the packages:
|
||||
@@ -157,23 +196,31 @@ Install and configure components
|
||||
|
||||
# apt-get install cinder-volume
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
2. Edit the ``/etc/cinder/cinder.conf`` file
|
||||
and complete the following actions:
|
||||
|
||||
* In the ``[database]`` section, configure database access:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[database]
|
||||
...
|
||||
connection = mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``CINDER_DBPASS`` with the password you chose for
|
||||
the Block Storage database.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections,
|
||||
configure ``RabbitMQ`` message queue access:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -186,12 +233,15 @@ Install and configure components
|
||||
rabbit_userid = openstack
|
||||
rabbit_password = RABBIT_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with the password you chose for
|
||||
the ``openstack`` account in ``RabbitMQ``.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections,
|
||||
configure Identity service access:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -210,6 +260,8 @@ Install and configure components
|
||||
username = cinder
|
||||
password = CINDER_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``CINDER_PASS`` with the password you chose for the
|
||||
``cinder`` user in the Identity service.
|
||||
|
||||
@@ -220,12 +272,15 @@ Install and configure components
|
||||
|
||||
* In the ``[DEFAULT]`` section, configure the ``my_ip`` option:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
my_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``MANAGEMENT_INTERFACE_IP_ADDRESS`` with the IP address
|
||||
of the management network interface on your storage node,
|
||||
typically 10.0.0.41 for the first node in the
|
||||
@@ -237,6 +292,7 @@ Install and configure components
|
||||
LVM driver, ``cinder-volumes`` volume group, iSCSI protocol,
|
||||
and appropriate iSCSI service:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[lvm]
|
||||
@@ -246,12 +302,17 @@ Install and configure components
|
||||
iscsi_protocol = iscsi
|
||||
iscsi_helper = tgtadm
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* In the ``[lvm]`` section, configure the LVM back end with the
|
||||
LVM driver, ``cinder-volumes`` volume group, iSCSI protocol,
|
||||
and appropriate iSCSI service:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[lvm]
|
||||
@@ -261,14 +322,21 @@ Install and configure components
|
||||
iscsi_protocol = iscsi
|
||||
iscsi_helper = lioadm
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
* In the ``[DEFAULT]`` section, enable the LVM back end:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
enabled_backends = lvm
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Back-end names are arbitrary. As an example, this guide
|
||||
@@ -277,20 +345,26 @@ Install and configure components
|
||||
* In the ``[DEFAULT]`` section, configure the location of the
|
||||
Image service API:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
glance_api_servers = http://controller:9292
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/cinder/cinder.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/lib/cinder/tmp
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: obs
|
||||
|
||||
3. Create the ``/etc/tgt/conf.d/cinder.conf`` file
|
||||
@@ -300,6 +374,10 @@ Install and configure components
|
||||
|
||||
include /var/lib/cinder/volumes/*
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
Finalize installation
|
||||
---------------------
|
||||
|
||||
@@ -313,6 +391,10 @@ Finalize installation
|
||||
# systemctl enable openstack-cinder-volume.service tgtd.service
|
||||
# systemctl start openstack-cinder-volume.service tgtd.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* Start the Block Storage volume service including its dependencies
|
||||
@@ -323,6 +405,10 @@ Finalize installation
|
||||
# systemctl enable openstack-cinder-volume.service target.service
|
||||
# systemctl start openstack-cinder-volume.service target.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Restart the Block Storage volume service including its dependencies:
|
||||
@@ -331,3 +417,7 @@ Finalize installation
|
||||
|
||||
# service tgt restart
|
||||
# service cinder-volume restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -16,11 +16,14 @@ Verify operation of the Block Storage service.
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. List service components to verify successful launch of each process:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ cinder service-list
|
||||
|
||||
+------------------+------------+------+---------+-------+----------------------------+-----------------+
|
||||
| Binary | Host | Zone | Status | State | Updated_at | Disabled Reason |
|
||||
+------------------+------------+------+---------+-------+----------------------------+-----------------+
|
||||
@@ -29,6 +32,8 @@ Verify operation of the Block Storage service.
|
||||
| cinder-backup | block1 | nova | enabled | up | 2014-10-18T01:30:59.000000 | None |
|
||||
+------------------+------------+------+---------+-------+----------------------------+-----------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The ``cinder-backup`` service only appears if you :ref:`cinder-backup-install`.
|
||||
|
||||
@@ -17,18 +17,30 @@ Install and configure components
|
||||
|
||||
# apt-get install memcached python-memcache
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# yum install memcached python-memcached
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# zypper install memcached python-python-memcached
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
2. Edit the ``/etc/memcached.conf`` file and configure the
|
||||
@@ -39,10 +51,14 @@ Install and configure components
|
||||
|
||||
-l 10.0.0.11
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Change the existing line with ``-l 127.0.0.1``.
|
||||
|
||||
.. endonly
|
||||
|
||||
Finalize installation
|
||||
---------------------
|
||||
|
||||
@@ -54,6 +70,10 @@ Finalize installation
|
||||
|
||||
# service memcached restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or obs
|
||||
|
||||
* Start the Memcached service and configure it to start when the system
|
||||
@@ -63,3 +83,7 @@ Finalize installation
|
||||
|
||||
# systemctl enable memcached.service
|
||||
# systemctl start memcached.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -25,18 +25,30 @@ Install and configure components
|
||||
|
||||
# apt-get install rabbitmq-server
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# yum install rabbitmq-server
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# zypper install rabbitmq-server
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or obs
|
||||
|
||||
2. Start the message queue service and configure it to start when the
|
||||
@@ -47,13 +59,18 @@ Install and configure components
|
||||
# systemctl enable rabbitmq-server.service
|
||||
# systemctl start rabbitmq-server.service
|
||||
|
||||
.. end
|
||||
|
||||
3. Add the ``openstack`` user:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# rabbitmqctl add_user openstack RABBIT_PASS
|
||||
|
||||
Creating user "openstack" ...
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with a suitable password.
|
||||
|
||||
4. Permit configuration, write, and read access for the
|
||||
@@ -62,8 +79,13 @@ Install and configure components
|
||||
.. code-block:: console
|
||||
|
||||
# rabbitmqctl set_permissions openstack ".*" ".*" ".*"
|
||||
|
||||
Setting permissions for user "openstack" in vhost "/" ...
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
2. Add the ``openstack`` user:
|
||||
@@ -71,9 +93,12 @@ Install and configure components
|
||||
.. code-block:: console
|
||||
|
||||
# rabbitmqctl add_user openstack RABBIT_PASS
|
||||
|
||||
Creating user "openstack" ...
|
||||
...done.
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with a suitable password.
|
||||
|
||||
3. Permit configuration, write, and read access for the
|
||||
@@ -82,5 +107,10 @@ Install and configure components
|
||||
.. code-block:: console
|
||||
|
||||
# rabbitmqctl set_permissions openstack ".*" ".*" ".*"
|
||||
|
||||
Setting permissions for user "openstack" in vhost "/" ...
|
||||
...done.
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -27,6 +27,7 @@ Configure network interfaces
|
||||
|
||||
* Edit the ``/etc/network/interfaces`` file to contain the following:
|
||||
|
||||
.. path /etc/network/interfaces
|
||||
.. code-block:: ini
|
||||
|
||||
# The provider network interface
|
||||
@@ -35,6 +36,10 @@ Configure network interfaces
|
||||
up ip link set dev $IFACE up
|
||||
down ip link set dev $IFACE down
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* Edit the ``/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME`` file
|
||||
@@ -42,6 +47,7 @@ Configure network interfaces
|
||||
|
||||
Do not change the ``HWADDR`` and ``UUID`` keys.
|
||||
|
||||
.. path /etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
|
||||
.. code-block:: ini
|
||||
|
||||
DEVICE=INTERFACE_NAME
|
||||
@@ -49,16 +55,25 @@ Configure network interfaces
|
||||
ONBOOT="yes"
|
||||
BOOTPROTO="none"
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
* Edit the ``/etc/sysconfig/network/ifcfg-INTERFACE_NAME`` file to
|
||||
contain the following:
|
||||
|
||||
.. path /etc/sysconfig/network/ifcfg-INTERFACE_NAME
|
||||
.. code-block:: ini
|
||||
|
||||
STARTMODE='auto'
|
||||
BOOTPROTO='static'
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
#. Reboot the system to activate the changes.
|
||||
|
||||
Configure name resolution
|
||||
|
||||
@@ -23,6 +23,7 @@ Configure network interfaces
|
||||
|
||||
* Edit the ``/etc/network/interfaces`` file to contain the following:
|
||||
|
||||
.. path /etc/network/interfaces
|
||||
.. code-block:: ini
|
||||
|
||||
# The provider network interface
|
||||
@@ -31,6 +32,10 @@ Configure network interfaces
|
||||
up ip link set dev $IFACE up
|
||||
down ip link set dev $IFACE down
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* Edit the ``/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME`` file
|
||||
@@ -38,6 +43,7 @@ Configure network interfaces
|
||||
|
||||
Do not change the ``HWADDR`` and ``UUID`` keys.
|
||||
|
||||
.. path /etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
|
||||
.. code-block:: ini
|
||||
|
||||
DEVICE=INTERFACE_NAME
|
||||
@@ -45,16 +51,25 @@ Configure network interfaces
|
||||
ONBOOT="yes"
|
||||
BOOTPROTO="none"
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
* Edit the ``/etc/sysconfig/network/ifcfg-INTERFACE_NAME`` file to
|
||||
contain the following:
|
||||
|
||||
.. path /etc/sysconfig/network/ifcfg-INTERFACE_NAME
|
||||
.. code-block:: ini
|
||||
|
||||
STARTMODE='auto'
|
||||
BOOTPROTO='static'
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
#. Reboot the system to activate the changes.
|
||||
|
||||
Configure name resolution
|
||||
|
||||
@@ -9,6 +9,7 @@ among the nodes before proceeding further.
|
||||
.. code-block:: console
|
||||
|
||||
# ping -c 4 openstack.org
|
||||
|
||||
PING openstack.org (174.143.194.225) 56(84) bytes of data.
|
||||
64 bytes from 174.143.194.225: icmp_seq=1 ttl=54 time=18.3 ms
|
||||
64 bytes from 174.143.194.225: icmp_seq=2 ttl=54 time=17.5 ms
|
||||
@@ -19,12 +20,15 @@ among the nodes before proceeding further.
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 3022ms
|
||||
rtt min/avg/max/mdev = 17.489/17.715/18.346/0.364 ms
|
||||
|
||||
.. end
|
||||
|
||||
#. From the *controller* node, test access to the management interface on the
|
||||
*compute* node:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# ping -c 4 compute1
|
||||
|
||||
PING compute1 (10.0.0.31) 56(84) bytes of data.
|
||||
64 bytes from compute1 (10.0.0.31): icmp_seq=1 ttl=64 time=0.263 ms
|
||||
64 bytes from compute1 (10.0.0.31): icmp_seq=2 ttl=64 time=0.202 ms
|
||||
@@ -35,11 +39,14 @@ among the nodes before proceeding further.
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
|
||||
rtt min/avg/max/mdev = 0.202/0.217/0.263/0.030 ms
|
||||
|
||||
.. end
|
||||
|
||||
#. From the *compute* node, test access to the Internet:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# ping -c 4 openstack.org
|
||||
|
||||
PING openstack.org (174.143.194.225) 56(84) bytes of data.
|
||||
64 bytes from 174.143.194.225: icmp_seq=1 ttl=54 time=18.3 ms
|
||||
64 bytes from 174.143.194.225: icmp_seq=2 ttl=54 time=17.5 ms
|
||||
@@ -50,12 +57,15 @@ among the nodes before proceeding further.
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 3022ms
|
||||
rtt min/avg/max/mdev = 17.489/17.715/18.346/0.364 ms
|
||||
|
||||
.. end
|
||||
|
||||
#. From the *compute* node, test access to the management interface on the
|
||||
*controller* node:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# ping -c 4 controller
|
||||
|
||||
PING controller (10.0.0.11) 56(84) bytes of data.
|
||||
64 bytes from controller (10.0.0.11): icmp_seq=1 ttl=64 time=0.263 ms
|
||||
64 bytes from controller (10.0.0.11): icmp_seq=2 ttl=64 time=0.202 ms
|
||||
@@ -66,6 +76,8 @@ among the nodes before proceeding further.
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
|
||||
rtt min/avg/max/mdev = 0.202/0.217/0.263/0.030 ms
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
.. only:: rdo or obs
|
||||
@@ -76,9 +88,13 @@ among the nodes before proceeding further.
|
||||
information about securing your environment, refer to the
|
||||
`OpenStack Security Guide <http://docs.openstack.org/sec/>`__.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
Your distribution does not enable a restrictive :term:`firewall`
|
||||
by default. For more information about securing your environment,
|
||||
refer to the
|
||||
`OpenStack Security Guide <http://docs.openstack.org/sec/>`__.
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -12,6 +12,8 @@ Host networking
|
||||
For more information on how to configure networking on your
|
||||
distribution, see the `documentation <https://help.ubuntu.com/lts/serverguide/network-configuration.html>`__ .
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
After installing the operating system on each node for the architecture
|
||||
@@ -21,6 +23,8 @@ Host networking
|
||||
For more information on how to configure networking on your
|
||||
distribution, see the `documentation <https://wiki.debian.org/NetworkConfiguration>`__ .
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
After installing the operating system on each node for the architecture
|
||||
@@ -30,6 +34,8 @@ Host networking
|
||||
For more information on how to configure networking on your
|
||||
distribution, see the `documentation <https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Networking_Guide/sec-Using_the_Command_Line_Interface.html>`__ .
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
After installing the operating system on each node for the architecture
|
||||
@@ -39,6 +45,8 @@ Host networking
|
||||
For more information on how to configure networking on your
|
||||
distribution, see the `SLES 12 <https://www.suse.com/documentation/sles-12/book_sle_admin/data/sec_basicnet_manconf.html>`__ or `openSUSE <http://activedoc.opensuse.org/book/opensuse-reference/chapter-13-basic-networking>`__ documentation.
|
||||
|
||||
.. endonly
|
||||
|
||||
All nodes require Internet access for administrative purposes such as package
|
||||
installation, security updates, :term:`DNS <Domain Name System (DNS)>`, and
|
||||
:term:`NTP <Network Time Protocol (NTP)>`. In most cases, nodes should obtain
|
||||
@@ -109,6 +117,8 @@ the controller node.
|
||||
information about securing your environment, refer to the
|
||||
`OpenStack Security Guide <http://docs.openstack.org/sec/>`__.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
Your distribution does not enable a restrictive :term:`firewall`
|
||||
@@ -116,6 +126,8 @@ the controller node.
|
||||
refer to the
|
||||
`OpenStack Security Guide <http://docs.openstack.org/sec/>`__.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
|
||||
@@ -16,12 +16,20 @@ Install and configure components
|
||||
|
||||
# apt-get install chrony
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# yum install chrony
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
On openSUSE:
|
||||
@@ -32,6 +40,8 @@ Install and configure components
|
||||
# zypper refresh
|
||||
# zypper install chrony
|
||||
|
||||
.. end
|
||||
|
||||
On SLES:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -40,6 +50,8 @@ Install and configure components
|
||||
# zypper refresh
|
||||
# zypper install chrony
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The packages are signed by GPG key ``17280DDF``. You should
|
||||
@@ -52,6 +64,10 @@ Install and configure components
|
||||
Key Created: Tue 24 Sep 2013 04:04:12 PM UTC
|
||||
Key Expires: Thu 03 Dec 2015 04:04:12 PM UTC
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
2. Edit the ``/etc/chrony/chrony.conf`` file and add, change, or remove the
|
||||
@@ -61,6 +77,8 @@ Install and configure components
|
||||
|
||||
server NTP_SERVER iburst
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NTP_SERVER`` with the hostname or IP address of a suitable more
|
||||
accurate (lower stratum) NTP server. The configuration supports multiple
|
||||
``server`` keys.
|
||||
@@ -77,6 +95,10 @@ Install and configure components
|
||||
|
||||
# service chrony restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or obs
|
||||
|
||||
2. Edit the ``/etc/chrony.conf`` file and add, change, or remove the
|
||||
@@ -86,6 +108,8 @@ Install and configure components
|
||||
|
||||
server NTP_SERVER iburst
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NTP_SERVER`` with the hostname or IP address of a suitable more
|
||||
accurate (lower stratum) NTP server. The configuration supports multiple
|
||||
``server`` keys.
|
||||
@@ -103,6 +127,8 @@ Install and configure components
|
||||
|
||||
allow 10.0.0.0/24
|
||||
|
||||
.. end
|
||||
|
||||
If necessary, replace ``10.0.0.0/24`` with a description of your subnet.
|
||||
|
||||
4. Start the NTP service and configure it to start when the system boots:
|
||||
@@ -111,3 +137,7 @@ Install and configure components
|
||||
|
||||
# systemctl enable chronyd.service
|
||||
# systemctl start chronyd.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -17,12 +17,20 @@ Install and configure components
|
||||
|
||||
# apt-get install chrony
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# yum install chrony
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
On openSUSE:
|
||||
@@ -33,6 +41,8 @@ Install and configure components
|
||||
# zypper refresh
|
||||
# zypper install chrony
|
||||
|
||||
.. end
|
||||
|
||||
On SLES:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -41,6 +51,8 @@ Install and configure components
|
||||
# zypper refresh
|
||||
# zypper install chrony
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The packages are signed by GPG key ``17280DDF``. You should
|
||||
@@ -53,33 +65,51 @@ Install and configure components
|
||||
Key Created: Tue 24 Sep 2013 04:04:12 PM UTC
|
||||
Key Expires: Thu 03 Dec 2015 04:04:12 PM UTC
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
2. Edit the ``/etc/chrony/chrony.conf`` file and comment out or remove all
|
||||
but one ``server`` key. Change it to reference the controller node:
|
||||
|
||||
.. path /etc/chrony/chrony.conf
|
||||
.. code-block:: ini
|
||||
|
||||
server controller iburst
|
||||
|
||||
.. end
|
||||
|
||||
3. Restart the NTP service:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# service chrony restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or obs
|
||||
|
||||
2. Edit the ``/etc/chrony.conf`` file and comment out or remove all but one
|
||||
``server`` key. Change it to reference the controller node:
|
||||
|
||||
.. path /etc/chrony.conf
|
||||
.. code-block:: ini
|
||||
|
||||
server controller iburst
|
||||
|
||||
.. end
|
||||
|
||||
3. Start the NTP service and configure it to start when the system boots:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# systemctl enable chronyd.service
|
||||
# systemctl start chronyd.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -12,12 +12,15 @@ node, can take several minutes to synchronize.
|
||||
.. code-block:: console
|
||||
|
||||
# chronyc sources
|
||||
|
||||
210 Number of sources = 2
|
||||
MS Name/IP address Stratum Poll Reach LastRx Last sample
|
||||
===============================================================================
|
||||
^- 192.0.2.11 2 7 12 137 -2814us[-3000us] +/- 43ms
|
||||
^* 192.0.2.12 2 6 177 46 +17us[ -23us] +/- 68ms
|
||||
|
||||
.. end
|
||||
|
||||
Contents in the *Name/IP address* column should indicate the hostname or IP
|
||||
address of one or more NTP servers. Contents in the *S* column should indicate
|
||||
*\** for the server to which the NTP service is currently synchronized.
|
||||
@@ -27,10 +30,13 @@ node, can take several minutes to synchronize.
|
||||
.. code-block:: console
|
||||
|
||||
# chronyc sources
|
||||
|
||||
210 Number of sources = 1
|
||||
MS Name/IP address Stratum Poll Reach LastRx Last sample
|
||||
===============================================================================
|
||||
^* controller 3 9 377 421 +15us[ -87us] +/- 15ms
|
||||
|
||||
.. end
|
||||
|
||||
Contents in the *Name/IP address* column should indicate the hostname of the
|
||||
controller node.
|
||||
|
||||
@@ -30,6 +30,8 @@ these procedures on all nodes.
|
||||
# apt-get install software-properties-common
|
||||
# add-apt-repository cloud-archive:newton
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
For pre-release testing, use the staging repository:
|
||||
@@ -38,6 +40,10 @@ these procedures on all nodes.
|
||||
|
||||
# add-apt-repository cloud-archive:newton-proposed
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
Prerequisites
|
||||
@@ -60,12 +66,16 @@ these procedures on all nodes.
|
||||
|
||||
# subscription-manager register --username="USERNAME" --password="PASSWORD"
|
||||
|
||||
.. end
|
||||
|
||||
#. Find entitlement pools containing the channels for your RHEL system:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# subscription-manager list --available
|
||||
|
||||
.. end
|
||||
|
||||
#. Use the pool identifiers found in the previous step to attach your RHEL
|
||||
entitlements:
|
||||
|
||||
@@ -73,6 +83,8 @@ these procedures on all nodes.
|
||||
|
||||
# subscription-manager attach --pool="POOLID"
|
||||
|
||||
.. end
|
||||
|
||||
#. Enable required repositories:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -80,6 +92,10 @@ these procedures on all nodes.
|
||||
# subscription-manager repos --enable=rhel-7-server-optional-rpms \
|
||||
--enable=rhel-7-server-extras-rpms --enable=rhel-7-server-rh-common-rpms
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
Enable the OpenStack repository
|
||||
@@ -94,6 +110,8 @@ these procedures on all nodes.
|
||||
|
||||
# yum install centos-release-openstack-newton
|
||||
|
||||
.. end
|
||||
|
||||
* On RHEL, download and install the RDO repository RPM to enable the
|
||||
OpenStack repository.
|
||||
|
||||
@@ -101,6 +119,8 @@ these procedures on all nodes.
|
||||
|
||||
# yum install https://rdoproject.org/repos/rdo-release.rpm
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: obs
|
||||
|
||||
Enable the OpenStack repository
|
||||
@@ -115,6 +135,8 @@ these procedures on all nodes.
|
||||
|
||||
# zypper addrepo -f obs://Cloud:OpenStack:Newton/openSUSE_Leap_42.1 Newton
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The openSUSE distribution uses the concept of patterns to
|
||||
@@ -128,12 +150,16 @@ these procedures on all nodes.
|
||||
|
||||
# zypper rm patterns-openSUSE-minimal_base-conflicts
|
||||
|
||||
.. end
|
||||
|
||||
**On SLES:**
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# zypper addrepo -f obs://Cloud:OpenStack:Newton/SLE_12_SP2 Newton
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The packages are signed by GPG key ``D85F9316``. You should
|
||||
@@ -146,6 +172,10 @@ these procedures on all nodes.
|
||||
Key Created: 2015-12-16T16:48:37 CET
|
||||
Key Expires: 2018-02-23T16:48:37 CET
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
Enable the backports repository
|
||||
@@ -165,6 +195,8 @@ these procedures on all nodes.
|
||||
# echo "deb http://http.debian.net/debian jessie-backports main" \
|
||||
>>/etc/apt/sources.list
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Later you can use the following command to install a package:
|
||||
@@ -173,6 +205,10 @@ these procedures on all nodes.
|
||||
|
||||
# apt-get -t jessie-backports install ``PACKAGE``
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
Finalize the installation
|
||||
-------------------------
|
||||
|
||||
@@ -184,18 +220,30 @@ Finalize the installation
|
||||
|
||||
# apt-get update && apt-get dist-upgrade
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# yum upgrade
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# zypper refresh && zypper dist-upgrade
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. note::
|
||||
|
||||
If the upgrade process includes a new kernel, reboot your host
|
||||
@@ -209,18 +257,30 @@ Finalize the installation
|
||||
|
||||
# apt-get install python-openstackclient
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# yum install python-openstackclient
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# zypper install python-openstackclient
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
3. RHEL and CentOS enable :term:`SELinux` by default. Install the
|
||||
@@ -230,3 +290,7 @@ Finalize the installation
|
||||
.. code-block:: console
|
||||
|
||||
# yum install openstack-selinux
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -15,6 +15,8 @@ following command:
|
||||
|
||||
$ openssl rand -hex 10
|
||||
|
||||
.. end
|
||||
|
||||
For OpenStack services, this guide uses ``SERVICE_PASS`` to reference
|
||||
service account passwords and ``SERVICE_DBPASS`` to reference database
|
||||
passwords.
|
||||
|
||||
@@ -18,24 +18,40 @@ Install and configure components
|
||||
|
||||
# apt-get install mariadb-server python-pymysql
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# apt-get install mysql-server python-pymysql
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# yum install mariadb mariadb-server python2-PyMySQL
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# zypper install mariadb-client mariadb python-PyMySQL
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
2. Create and edit the ``/etc/mysql/conf.d/openstack.cnf`` file
|
||||
@@ -47,6 +63,7 @@ Install and configure components
|
||||
additional keys to enable useful options and the UTF-8
|
||||
character set:
|
||||
|
||||
.. path /etc/mysql/conf.d/openstack.cnf
|
||||
.. code-block:: ini
|
||||
|
||||
[mysqld]
|
||||
@@ -58,6 +75,10 @@ Install and configure components
|
||||
collation-server = utf8_general_ci
|
||||
character-set-server = utf8
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
2. Create and edit the ``/etc/mysql/mariadb.conf.d/99-openstack.cnf`` file
|
||||
@@ -79,6 +100,9 @@ Install and configure components
|
||||
max_connections = 4096
|
||||
collation-server = utf8_general_ci
|
||||
character-set-server = utf8
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs or rdo
|
||||
|
||||
@@ -91,6 +115,7 @@ Install and configure components
|
||||
additional keys to enable useful options and the UTF-8
|
||||
character set:
|
||||
|
||||
.. path /etc/my.cnf.d/openstack.cnf
|
||||
.. code-block:: ini
|
||||
|
||||
[mysqld]
|
||||
@@ -102,6 +127,10 @@ Install and configure components
|
||||
collation-server = utf8_general_ci
|
||||
character-set-server = utf8
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
Finalize installation
|
||||
---------------------
|
||||
|
||||
@@ -113,6 +142,10 @@ Finalize installation
|
||||
|
||||
# service mysql restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or obs
|
||||
|
||||
#. Start the database service and configure it to start when the system
|
||||
@@ -125,6 +158,10 @@ Finalize installation
|
||||
# systemctl enable mariadb.service
|
||||
# systemctl start mariadb.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
.. code-block:: console
|
||||
@@ -132,6 +169,10 @@ Finalize installation
|
||||
# systemctl enable mysql.service
|
||||
# systemctl start mysql.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or obs or ubuntu
|
||||
|
||||
2. Secure the database service by running the ``mysql_secure_installation``
|
||||
@@ -141,3 +182,7 @@ Finalize installation
|
||||
.. code-block:: console
|
||||
|
||||
# mysql_secure_installation
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -24,6 +24,8 @@ utility.
|
||||
when the service uses SysV Init scripts instead of native systemd files. This
|
||||
warning can be ignored.
|
||||
|
||||
.. endonly
|
||||
|
||||
For best performance, we recommend that your environment meets or exceeds
|
||||
the hardware requirements in :ref:`figure-hwreqs`.
|
||||
|
||||
|
||||
@@ -20,21 +20,27 @@ create a database, service credentials, and API endpoints.
|
||||
|
||||
$ mysql -u root -p
|
||||
|
||||
.. end
|
||||
|
||||
* Create the ``glance`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
CREATE DATABASE glance;
|
||||
mysql> CREATE DATABASE glance;
|
||||
|
||||
.. end
|
||||
|
||||
* Grant proper access to the ``glance`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \
|
||||
mysql> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \
|
||||
IDENTIFIED BY 'GLANCE_DBPASS';
|
||||
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \
|
||||
mysql> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \
|
||||
IDENTIFIED BY 'GLANCE_DBPASS';
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``GLANCE_DBPASS`` with a suitable password.
|
||||
|
||||
* Exit the database access client.
|
||||
@@ -46,6 +52,8 @@ create a database, service credentials, and API endpoints.
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. To create the service credentials, complete these steps:
|
||||
|
||||
* Create the ``glance`` user:
|
||||
@@ -53,6 +61,7 @@ create a database, service credentials, and API endpoints.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack user create --domain default --password-prompt glance
|
||||
|
||||
User Password:
|
||||
Repeat User Password:
|
||||
+-----------+----------------------------------+
|
||||
@@ -64,6 +73,8 @@ create a database, service credentials, and API endpoints.
|
||||
| name | glance |
|
||||
+-----------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
* Add the ``admin`` role to the ``glance`` user and
|
||||
``service`` project:
|
||||
|
||||
@@ -71,6 +82,8 @@ create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack role add --project service --user glance admin
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command provides no output.
|
||||
@@ -81,6 +94,7 @@ create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack service create --name glance \
|
||||
--description "OpenStack Image" image
|
||||
|
||||
+-------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+----------------------------------+
|
||||
@@ -91,12 +105,15 @@ create a database, service credentials, and API endpoints.
|
||||
| type | image |
|
||||
+-------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the Image service API endpoints:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
image public http://controller:9292
|
||||
|
||||
+--------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+----------------------------------+
|
||||
@@ -113,6 +130,7 @@ create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
image internal http://controller:9292
|
||||
|
||||
+--------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+----------------------------------+
|
||||
@@ -129,6 +147,7 @@ create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
image admin http://controller:9292
|
||||
|
||||
+--------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+----------------------------------+
|
||||
@@ -143,6 +162,8 @@ create a database, service credentials, and API endpoints.
|
||||
| url | http://controller:9292 |
|
||||
+--------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
Install and configure components
|
||||
--------------------------------
|
||||
|
||||
@@ -156,6 +177,10 @@ Install and configure components
|
||||
|
||||
# zypper install openstack-glance
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. Install the packages:
|
||||
@@ -164,6 +189,10 @@ Install and configure components
|
||||
|
||||
# yum install openstack-glance
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Install the packages:
|
||||
@@ -172,23 +201,31 @@ Install and configure components
|
||||
|
||||
# apt-get install glance
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
2. Edit the ``/etc/glance/glance-api.conf`` file and complete the
|
||||
following actions:
|
||||
|
||||
* In the ``[database]`` section, configure database access:
|
||||
|
||||
.. path /etc/glance/glance.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[database]
|
||||
...
|
||||
connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``GLANCE_DBPASS`` with the password you chose for the
|
||||
Image service database.
|
||||
|
||||
* In the ``[keystone_authtoken]`` and ``[paste_deploy]`` sections,
|
||||
configure Identity service access:
|
||||
|
||||
.. path /etc/glance/glance.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[keystone_authtoken]
|
||||
@@ -207,6 +244,8 @@ Install and configure components
|
||||
...
|
||||
flavor = keystone
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``GLANCE_PASS`` with the password you chose for the
|
||||
``glance`` user in the Identity service.
|
||||
|
||||
@@ -218,6 +257,7 @@ Install and configure components
|
||||
* In the ``[glance_store]`` section, configure the local file
|
||||
system store and location of image files:
|
||||
|
||||
.. path /etc/glance/glance.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[glance_store]
|
||||
@@ -226,23 +266,29 @@ Install and configure components
|
||||
default_store = file
|
||||
filesystem_store_datadir = /var/lib/glance/images/
|
||||
|
||||
.. end
|
||||
|
||||
3. Edit the ``/etc/glance/glance-registry.conf`` file and complete
|
||||
the following actions:
|
||||
|
||||
* In the ``[database]`` section, configure database access:
|
||||
|
||||
.. path /etc/glance/glance-registry.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[database]
|
||||
...
|
||||
connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``GLANCE_DBPASS`` with the password you chose for the
|
||||
Image service database.
|
||||
|
||||
* In the ``[keystone_authtoken]`` and ``[paste_deploy]`` sections,
|
||||
configure Identity service access:
|
||||
|
||||
.. path /etc/glance/glance-registry.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[keystone_authtoken]
|
||||
@@ -261,6 +307,8 @@ Install and configure components
|
||||
...
|
||||
flavor = keystone
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``GLANCE_PASS`` with the password you chose for the
|
||||
``glance`` user in the Identity service.
|
||||
|
||||
@@ -277,10 +325,14 @@ Install and configure components
|
||||
|
||||
# su -s /bin/sh -c "glance-manage db_sync" glance
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Ignore any deprecation messages in this output.
|
||||
|
||||
.. endonly
|
||||
|
||||
Finalize installation
|
||||
---------------------
|
||||
|
||||
@@ -296,6 +348,10 @@ Finalize installation
|
||||
# systemctl start openstack-glance-api.service \
|
||||
openstack-glance-registry.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Restart the Image services:
|
||||
@@ -304,3 +360,7 @@ Finalize installation
|
||||
|
||||
# service glance-registry restart
|
||||
# service glance-api restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -23,12 +23,16 @@ For information about how to manage images, see the
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. Download the source image:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Install ``wget`` if your distribution does not include it.
|
||||
@@ -43,6 +47,7 @@ For information about how to manage images, see the
|
||||
--file cirros-0.3.4-x86_64-disk.img \
|
||||
--disk-format qcow2 --container-format bare \
|
||||
--public
|
||||
|
||||
+------------------+------------------------------------------------------+
|
||||
| Field | Value |
|
||||
+------------------+------------------------------------------------------+
|
||||
@@ -66,6 +71,8 @@ For information about how to manage images, see the
|
||||
| visibility | public |
|
||||
+------------------+------------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
For information about the :command:`openstack image create` parameters,
|
||||
see `Image service command-line client
|
||||
<http://docs.openstack.org/cli-reference/openstack.html#openstack-image-create>`__
|
||||
@@ -86,8 +93,11 @@ For information about how to manage images, see the
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack image list
|
||||
|
||||
+--------------------------------------+--------+--------+
|
||||
| ID | Name | Status |
|
||||
+--------------------------------------+--------+--------+
|
||||
| 38047887-61a7-41ea-9b49-27987d5e8bb9 | cirros | active |
|
||||
+--------------------------------------+--------+--------+
|
||||
|
||||
.. end
|
||||
|
||||
@@ -23,6 +23,8 @@ Install and configure components
|
||||
|
||||
.. include:: shared/note_configuration_vary_by_distribution.rst
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
1. Install the packages:
|
||||
@@ -31,6 +33,10 @@ Install and configure components
|
||||
|
||||
# zypper install openstack-dashboard
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
1. Install the packages:
|
||||
@@ -39,6 +45,10 @@ Install and configure components
|
||||
|
||||
# yum install openstack-dashboard
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
1. Install the packages:
|
||||
@@ -47,6 +57,10 @@ Install and configure components
|
||||
|
||||
# apt-get install openstack-dashboard
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
1. Install the packages:
|
||||
@@ -55,6 +69,8 @@ Install and configure components
|
||||
|
||||
# apt-get install openstack-dashboard-apache
|
||||
|
||||
.. end
|
||||
|
||||
2. Respond to prompts for web server configuration.
|
||||
|
||||
.. note::
|
||||
@@ -73,6 +89,8 @@ Install and configure components
|
||||
manually, install the ``openstack-dashboard`` package instead of
|
||||
``openstack-dashboard-apache``.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
2. Configure the web server:
|
||||
@@ -83,6 +101,8 @@ Install and configure components
|
||||
/etc/apache2/conf.d/openstack-dashboard.conf
|
||||
# a2enmod rewrite
|
||||
|
||||
.. end
|
||||
|
||||
3. Edit the
|
||||
``/srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py``
|
||||
file and complete the following actions:
|
||||
@@ -90,18 +110,25 @@ Install and configure components
|
||||
* Configure the dashboard to use OpenStack services on the
|
||||
``controller`` node:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_HOST = "controller"
|
||||
|
||||
.. end
|
||||
|
||||
* Allow all hosts to access the dashboard:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
ALLOWED_HOSTS = ['*', ]
|
||||
|
||||
.. end
|
||||
|
||||
* Configure the ``memcached`` session storage service:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
|
||||
@@ -113,24 +140,33 @@ Install and configure components
|
||||
}
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Comment out any other session storage configuration.
|
||||
|
||||
* Enable the Identity API version 3:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
|
||||
|
||||
.. end
|
||||
|
||||
* Enable support for domains:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
|
||||
|
||||
.. end
|
||||
|
||||
* Configure API versions:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_API_VERSIONS = {
|
||||
@@ -139,23 +175,32 @@ Install and configure components
|
||||
"volume": 2,
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
* Configure ``default`` as the default domain for users that you create
|
||||
via the dashboard:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = "default"
|
||||
|
||||
.. end
|
||||
|
||||
* Configure ``user`` as the default role for
|
||||
users that you create via the dashboard:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user"
|
||||
|
||||
.. end
|
||||
|
||||
* If you chose networking option 1, disable support for layer-3
|
||||
networking services:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_NEUTRON_NETWORK = {
|
||||
@@ -170,16 +215,23 @@ Install and configure components
|
||||
'enable_fip_topology_check': False,
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
* Optionally, configure the time zone:
|
||||
|
||||
.. path /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
TIME_ZONE = "TIME_ZONE"
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``TIME_ZONE`` with an appropriate time zone identifier.
|
||||
For more information, see the `list of time zones
|
||||
<http://en.wikipedia.org/wiki/List_of_tz_database_time_zones>`__.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
2. Edit the
|
||||
@@ -189,18 +241,25 @@ Install and configure components
|
||||
* Configure the dashboard to use OpenStack services on the
|
||||
``controller`` node:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_HOST = "controller"
|
||||
|
||||
.. end
|
||||
|
||||
* Allow all hosts to access the dashboard:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
ALLOWED_HOSTS = ['*', ]
|
||||
|
||||
.. end
|
||||
|
||||
* Configure the ``memcached`` session storage service:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
|
||||
@@ -212,24 +271,33 @@ Install and configure components
|
||||
}
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Comment out any other session storage configuration.
|
||||
|
||||
* Enable the Identity API version 3:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
|
||||
|
||||
.. end
|
||||
|
||||
* Enable support for domains:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
|
||||
|
||||
.. end
|
||||
|
||||
* Configure API versions:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_API_VERSIONS = {
|
||||
@@ -238,23 +306,32 @@ Install and configure components
|
||||
"volume": 2,
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
* Configure ``default`` as the default domain for users that you create
|
||||
via the dashboard:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = "default"
|
||||
|
||||
.. end
|
||||
|
||||
* Configure ``user`` as the default role for
|
||||
users that you create via the dashboard:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user"
|
||||
|
||||
.. end
|
||||
|
||||
* If you chose networking option 1, disable support for layer-3
|
||||
networking services:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_NEUTRON_NETWORK = {
|
||||
@@ -269,16 +346,23 @@ Install and configure components
|
||||
'enable_fip_topology_check': False,
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
* Optionally, configure the time zone:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings
|
||||
.. code-block:: ini
|
||||
|
||||
TIME_ZONE = "TIME_ZONE"
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``TIME_ZONE`` with an appropriate time zone identifier.
|
||||
For more information, see the `list of time zones
|
||||
<http://en.wikipedia.org/wiki/List_of_tz_database_time_zones>`__.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
2. Edit the
|
||||
@@ -288,18 +372,25 @@ Install and configure components
|
||||
* Configure the dashboard to use OpenStack services on the
|
||||
``controller`` node:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_HOST = "controller"
|
||||
|
||||
.. end
|
||||
|
||||
* Allow all hosts to access the dashboard:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
ALLOWED_HOSTS = ['*', ]
|
||||
|
||||
.. end
|
||||
|
||||
* Configure the ``memcached`` session storage service:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
|
||||
@@ -311,24 +402,33 @@ Install and configure components
|
||||
}
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Comment out any other session storage configuration.
|
||||
|
||||
* Enable the Identity API version 3:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
|
||||
|
||||
.. end
|
||||
|
||||
* Enable support for domains:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
|
||||
|
||||
.. end
|
||||
|
||||
* Configure API versions:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_API_VERSIONS = {
|
||||
@@ -337,23 +437,32 @@ Install and configure components
|
||||
"volume": 2,
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
* Configure ``default`` as the default domain for users that you create
|
||||
via the dashboard:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = "default"
|
||||
|
||||
.. end
|
||||
|
||||
* Configure ``user`` as the default role for
|
||||
users that you create via the dashboard:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user"
|
||||
|
||||
.. end
|
||||
|
||||
* If you chose networking option 1, disable support for layer-3
|
||||
networking services:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
OPENSTACK_NEUTRON_NETWORK = {
|
||||
@@ -368,16 +477,23 @@ Install and configure components
|
||||
'enable_fip_topology_check': False,
|
||||
}
|
||||
|
||||
.. end
|
||||
|
||||
* Optionally, configure the time zone:
|
||||
|
||||
.. path /etc/openstack-dashboard/local_settings.py
|
||||
.. code-block:: ini
|
||||
|
||||
TIME_ZONE = "TIME_ZONE"
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``TIME_ZONE`` with an appropriate time zone identifier.
|
||||
For more information, see the `list of time zones
|
||||
<http://en.wikipedia.org/wiki/List_of_tz_database_time_zones>`__.
|
||||
|
||||
.. endonly
|
||||
|
||||
Finalize installation
|
||||
---------------------
|
||||
|
||||
@@ -389,6 +505,10 @@ Finalize installation
|
||||
|
||||
# service apache2 reload
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
* Restart the web server and session storage service:
|
||||
@@ -397,11 +517,15 @@ Finalize installation
|
||||
|
||||
# systemctl restart apache2.service memcached.service
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The ``systemctl restart`` command starts each service if
|
||||
not currently running.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* Restart the web server and session storage service:
|
||||
@@ -410,7 +534,11 @@ Finalize installation
|
||||
|
||||
# systemctl restart httpd.service memcached.service
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The ``systemctl restart`` command starts each service if
|
||||
not currently running.
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -8,15 +8,21 @@ Verify operation of the dashboard.
|
||||
Access the dashboard using a web browser at
|
||||
``http://controller/``.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
Access the dashboard using a web browser at
|
||||
``http://controller/dashboard``.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
Access the dashboard using a web browser at
|
||||
``http://controller/horizon``.
|
||||
|
||||
.. endonly
|
||||
|
||||
Authenticate using ``admin`` or ``demo`` user
|
||||
and ``default`` domain credentials.
|
||||
|
||||
@@ -8,24 +8,31 @@
|
||||
OpenStack Installation Tutorial for Red Hat Enterprise Linux and CentOS
|
||||
=======================================================================
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
======================================================================
|
||||
OpenStack Installation Tutorial for openSUSE and SUSE Linux Enterprise
|
||||
======================================================================
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
==========================================
|
||||
OpenStack Installation Tutorial for Ubuntu
|
||||
==========================================
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
==========================================
|
||||
OpenStack Installation Tutorial for Debian
|
||||
==========================================
|
||||
|
||||
.. endonly
|
||||
|
||||
Abstract
|
||||
~~~~~~~~
|
||||
@@ -43,17 +50,23 @@ or as connected entities.
|
||||
available on Red Hat Enterprise Linux 7 and its derivatives through
|
||||
the RDO repository.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
This guide will walk through an installation by using packages
|
||||
available through Canonical's Ubuntu Cloud archive repository.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
This guide will show you how to install OpenStack by using packages
|
||||
on openSUSE Leap 42.1 and SUSE Linux Enterprise Server 12 - for
|
||||
both SP1 and SP2 - through the Open Build Service Cloud repository.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
This guide walks through an installation by using packages
|
||||
@@ -69,9 +82,13 @@ or as connected entities.
|
||||
|
||||
# dpkg-reconfigure debconf
|
||||
|
||||
.. end
|
||||
|
||||
If you prefer to use debconf, refer to the debconf
|
||||
install-guide for Debian.
|
||||
|
||||
.. endonly
|
||||
|
||||
Explanations of configuration options and sample configuration files
|
||||
are included.
|
||||
|
||||
|
||||
@@ -23,21 +23,27 @@ database and an administration token.
|
||||
|
||||
$ mysql -u root -p
|
||||
|
||||
.. end
|
||||
|
||||
* Create the ``keystone`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
CREATE DATABASE keystone;
|
||||
mysql> CREATE DATABASE keystone;
|
||||
|
||||
.. end
|
||||
|
||||
* Grant proper access to the ``keystone`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
|
||||
mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
|
||||
IDENTIFIED BY 'KEYSTONE_DBPASS';
|
||||
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
|
||||
mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
|
||||
IDENTIFIED BY 'KEYSTONE_DBPASS';
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``KEYSTONE_DBPASS`` with a suitable password.
|
||||
|
||||
* Exit the database access client.
|
||||
@@ -56,6 +62,8 @@ Install and configure components
|
||||
keystone service still listens on these ports. Therefore, this guide
|
||||
manually disables the keystone service.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
.. note::
|
||||
@@ -72,49 +80,70 @@ Install and configure components
|
||||
|
||||
# apt-get install keystone
|
||||
|
||||
.. only:: obs or rdo
|
||||
.. end
|
||||
|
||||
#. Run the following command to install the packages:
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. Run the following command to install the packages:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# yum install openstack-keystone httpd mod_wsgi
|
||||
|
||||
.. only:: obs
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
#. Run the following command to install the packages:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# zypper install openstack-keystone apache2-mod_wsgi
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
2. Edit the ``/etc/keystone/keystone.conf`` file and complete the following
|
||||
actions:
|
||||
|
||||
* In the ``[database]`` section, configure database access:
|
||||
|
||||
.. path /etc/keystone/keystone.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[database]
|
||||
...
|
||||
connection = mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``KEYSTONE_DBPASS`` with the password you chose for the database.
|
||||
|
||||
* In the ``[token]`` section, configure the Fernet token provider:
|
||||
|
||||
.. path /etc/keystone/keystone.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[token]
|
||||
...
|
||||
provider = fernet
|
||||
|
||||
.. end
|
||||
|
||||
3. Populate the Identity service database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# su -s /bin/sh -c "keystone-manage db_sync" keystone
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Ignore any deprecation messages in this output.
|
||||
@@ -126,6 +155,8 @@ Install and configure components
|
||||
# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
|
||||
# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
|
||||
|
||||
.. end
|
||||
|
||||
5. Bootstrap the Identity service:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -136,25 +167,32 @@ Install and configure components
|
||||
--bootstrap-public-url http://controller:5000/v3/ \
|
||||
--bootstrap-region-id RegionOne
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``ADMIN_PASSWORD`` with a suitable password for an administrative user.
|
||||
|
||||
.. only:: obs or rdo or ubuntu
|
||||
.. only:: rdo
|
||||
|
||||
Configure the Apache HTTP server
|
||||
--------------------------------
|
||||
|
||||
.. only:: rdo
|
||||
#. Edit the ``/etc/httpd/conf/httpd.conf`` file and configure the
|
||||
``ServerName`` option to reference the controller node:
|
||||
|
||||
#. Edit the ``/etc/httpd/conf/httpd.conf`` file and configure the
|
||||
``ServerName`` option to reference the controller node:
|
||||
|
||||
.. path /etc/httpd/conf/httpd
|
||||
.. code-block:: apache
|
||||
|
||||
ServerName controller
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the ``/etc/httpd/conf.d/wsgi-keystone.conf`` file with
|
||||
the following content:
|
||||
|
||||
.. path /etc/httpd/conf.d/wsgi-keystone.conf
|
||||
.. code-block:: apache
|
||||
|
||||
Listen 5000
|
||||
@@ -190,18 +228,26 @@ Install and configure components
|
||||
</Directory>
|
||||
</VirtualHost>
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
#. Edit the ``/etc/apache2/apache2.conf`` file and configure the
|
||||
``ServerName`` option to reference the controller node:
|
||||
|
||||
.. path /etc/apache2/apache2.conf
|
||||
.. code-block:: apache
|
||||
|
||||
ServerName controller
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the ``/etc/apache2/sites-available/wsgi-keystone.conf`` file
|
||||
with the following content:
|
||||
|
||||
.. path /etc/apache2/sites-available/wsgi-keystone.conf
|
||||
.. code-block:: apache
|
||||
|
||||
Listen 5000
|
||||
@@ -237,24 +283,34 @@ Install and configure components
|
||||
</Directory>
|
||||
</VirtualHost>
|
||||
|
||||
.. end
|
||||
|
||||
#. Enable the Identity service virtual hosts:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# ln -s /etc/apache2/sites-available/wsgi-keystone.conf /etc/apache2/sites-enabled
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
#. Edit the ``/etc/sysconfig/apache2`` file and configure the
|
||||
``APACHE_SERVERNAME`` option to reference the controller node:
|
||||
|
||||
.. path /etc/sysconfig/apache2
|
||||
.. code-block:: apache
|
||||
|
||||
APACHE_SERVERNAME="controller"
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the ``/etc/apache2/conf.d/wsgi-keystone.conf`` file
|
||||
with the following content:
|
||||
|
||||
.. path /etc/apache2/conf.d/wsgi-keystone.conf
|
||||
.. code-block:: apache
|
||||
|
||||
Listen 5000
|
||||
@@ -290,42 +346,55 @@ Install and configure components
|
||||
</Directory>
|
||||
</VirtualHost>
|
||||
|
||||
.. end
|
||||
|
||||
6. Recursively change the ownership of the ``/etc/keystone`` directory:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# chown -R keystone:keystone /etc/keystone
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or rdo or obs
|
||||
|
||||
Finalize the installation
|
||||
-------------------------
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
#. Restart the Apache HTTP server:
|
||||
.. code-block:: console
|
||||
|
||||
.. code-block:: console
|
||||
# service apache2 restart
|
||||
|
||||
# service apache2 restart
|
||||
.. end
|
||||
|
||||
#. By default, the Ubuntu packages create an SQLite database.
|
||||
|
||||
#. By default, the Ubuntu packages create an SQLite database.
|
||||
|
||||
Because this configuration uses an SQL database server, you can remove
|
||||
the SQLite database file:
|
||||
.. code-block:: console
|
||||
|
||||
.. code-block:: console
|
||||
# rm -f /var/lib/keystone/keystone.db
|
||||
|
||||
# rm -f /var/lib/keystone/keystone.db
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* Start the Apache HTTP service and configure it to start when the system boots:
|
||||
.. code-block:: console
|
||||
|
||||
.. code-block:: console
|
||||
# systemctl enable httpd.service
|
||||
# systemctl start httpd.service
|
||||
|
||||
# systemctl enable httpd.service
|
||||
# systemctl start httpd.service
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
@@ -336,6 +405,10 @@ Install and configure components
|
||||
# systemctl enable apache2.service
|
||||
# systemctl start apache2.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
6. Configure the administrative account
|
||||
|
||||
.. code-block:: console
|
||||
@@ -348,8 +421,12 @@ Install and configure components
|
||||
$ export OS_AUTH_URL=http://controller:35357/v3
|
||||
$ export OS_IDENTITY_API_VERSION=3
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: obs or rdo or ubuntu
|
||||
|
||||
Replace ``ADMIN_PASSWORD`` with the password used in the
|
||||
``keystone-manage bootstrap`` command from the section called
|
||||
:ref:`keystone-install`.
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -30,6 +30,8 @@ scripts to load appropriate credentials for client operations.
|
||||
export OS_IDENTITY_API_VERSION=3
|
||||
export OS_IMAGE_API_VERSION=2
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``ADMIN_PASS`` with the password you chose
|
||||
for the ``admin`` user in the Identity service.
|
||||
|
||||
@@ -46,6 +48,8 @@ scripts to load appropriate credentials for client operations.
|
||||
export OS_IDENTITY_API_VERSION=3
|
||||
export OS_IMAGE_API_VERSION=2
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``DEMO_PASS`` with the password you chose
|
||||
for the ``demo`` user in the Identity service.
|
||||
|
||||
@@ -64,11 +68,14 @@ For example:
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. Request an authentication token:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack token issue
|
||||
|
||||
+------------+-----------------------------------------------------------------+
|
||||
| Field | Value |
|
||||
+------------+-----------------------------------------------------------------+
|
||||
@@ -79,3 +86,5 @@ For example:
|
||||
| project_id | 343d245e850143a096806dfaefa9afdc |
|
||||
| user_id | ac3377633149401296f6c0d92d79dc16 |
|
||||
+------------+-----------------------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
@@ -14,6 +14,7 @@ service. The authentication service uses a combination of :term:`domains
|
||||
|
||||
$ openstack project create --domain default \
|
||||
--description "Service Project" service
|
||||
|
||||
+-------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+----------------------------------+
|
||||
@@ -26,6 +27,8 @@ service. The authentication service uses a combination of :term:`domains
|
||||
| parent_id | e0353a670a9e496da891347c589539e9 |
|
||||
+-------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Regular (non-admin) tasks should use an unprivileged project and user.
|
||||
As an example, this guide creates the ``demo`` project and user.
|
||||
|
||||
@@ -35,6 +38,7 @@ service. The authentication service uses a combination of :term:`domains
|
||||
|
||||
$ openstack project create --domain default \
|
||||
--description "Demo Project" demo
|
||||
|
||||
+-------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+----------------------------------+
|
||||
@@ -47,6 +51,8 @@ service. The authentication service uses a combination of :term:`domains
|
||||
| parent_id | e0353a670a9e496da891347c589539e9 |
|
||||
+-------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Do not repeat this step when creating additional users for this
|
||||
@@ -58,6 +64,7 @@ service. The authentication service uses a combination of :term:`domains
|
||||
|
||||
$ openstack user create --domain default \
|
||||
--password-prompt demo
|
||||
|
||||
User Password:
|
||||
Repeat User Password:
|
||||
+-----------+----------------------------------+
|
||||
@@ -69,11 +76,14 @@ service. The authentication service uses a combination of :term:`domains
|
||||
| name | demo |
|
||||
+-----------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
* Create the ``user`` role:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack role create user
|
||||
|
||||
+-----------+----------------------------------+
|
||||
| Field | Value |
|
||||
+-----------+----------------------------------+
|
||||
@@ -82,12 +92,16 @@ service. The authentication service uses a combination of :term:`domains
|
||||
| name | user |
|
||||
+-----------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
* Add the ``user`` role to the ``demo`` project and user:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack role add --project demo --user demo user
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command provides no output.
|
||||
|
||||
@@ -18,6 +18,8 @@ services.
|
||||
``[pipeline:public_api]``, ``[pipeline:admin_api]``,
|
||||
and ``[pipeline:api_v3]`` sections.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. For security reasons, disable the temporary authentication
|
||||
@@ -28,12 +30,16 @@ services.
|
||||
``[pipeline:public_api]``, ``[pipeline:admin_api]``,
|
||||
and ``[pipeline:api_v3]`` sections.
|
||||
|
||||
.. endonly
|
||||
|
||||
2. Unset the temporary ``OS_URL`` environment variable:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ unset OS_URL
|
||||
|
||||
.. end
|
||||
|
||||
3. As the ``admin`` user, request an authentication token:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -41,6 +47,7 @@ services.
|
||||
$ openstack --os-auth-url http://controller:35357/v3 \
|
||||
--os-project-domain-name default --os-user-domain-name default \
|
||||
--os-project-name admin --os-username admin token issue
|
||||
|
||||
Password:
|
||||
+------------+-----------------------------------------------------------------+
|
||||
| Field | Value |
|
||||
@@ -53,6 +60,8 @@ services.
|
||||
| user_id | ac3377633149401296f6c0d92d79dc16 |
|
||||
+------------+-----------------------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command uses the password for the ``admin`` user.
|
||||
@@ -64,6 +73,7 @@ services.
|
||||
$ openstack --os-auth-url http://controller:5000/v3 \
|
||||
--os-project-domain-name default --os-user-domain-name default \
|
||||
--os-project-name demo --os-username demo token issue
|
||||
|
||||
Password:
|
||||
+------------+-----------------------------------------------------------------+
|
||||
| Field | Value |
|
||||
@@ -76,6 +86,8 @@ services.
|
||||
| user_id | 58126687cbcc4888bfa9ab73a2256f27 |
|
||||
+------------+-----------------------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command uses the password for the ``demo``
|
||||
|
||||
@@ -13,11 +13,14 @@ Create a volume
|
||||
|
||||
$ . demo-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. Create a 1 GB volume:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack volume create --size 1 volume1
|
||||
|
||||
+---------------------+--------------------------------------+
|
||||
| Field | Value |
|
||||
+---------------------+--------------------------------------+
|
||||
@@ -42,18 +45,23 @@ Create a volume
|
||||
| user_id | 684286a9079845359882afc3aa5011fb |
|
||||
+---------------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. After a short time, the volume status should change from ``creating``
|
||||
to ``available``:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack volume list
|
||||
|
||||
+--------------------------------------+--------------+-----------+------+-------------+
|
||||
| ID | Display Name | Status | Size | Attached to |
|
||||
+--------------------------------------+--------------+-----------+------+-------------+
|
||||
| a1e8be72-a395-4a6f-8e07-856a57c39524 | volume1 | available | 1 | |
|
||||
+--------------------------------------+--------------+-----------+------+-------------+
|
||||
|
||||
.. end
|
||||
|
||||
Attach the volume to an instance
|
||||
--------------------------------
|
||||
|
||||
@@ -63,6 +71,8 @@ Attach the volume to an instance
|
||||
|
||||
$ openstack server add volume INSTANCE_NAME VOLUME_NAME
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``INSTANCE_NAME`` with the name of the instance and ``VOLUME_NAME``
|
||||
with the name of the volume you want to attach to it.
|
||||
|
||||
@@ -74,6 +84,8 @@ Attach the volume to an instance
|
||||
|
||||
$ openstack server add volume provider-instance volume1
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command provides no output.
|
||||
@@ -83,12 +95,15 @@ Attach the volume to an instance
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack volume list
|
||||
|
||||
+--------------------------------------+--------------+--------+------+--------------------------------------------+
|
||||
| ID | Display Name | Status | Size | Attached to |
|
||||
+--------------------------------------+--------------+--------+------+--------------------------------------------+
|
||||
| a1e8be72-a395-4a6f-8e07-856a57c39524 | volume1 | in-use | 1 | Attached to provider-instance on /dev/vdb |
|
||||
+--------------------------------------+--------------+--------+------+--------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Access your instance using SSH and use the ``fdisk`` command to verify
|
||||
presence of the volume as the ``/dev/vdb`` block storage device:
|
||||
|
||||
@@ -115,6 +130,8 @@ Attach the volume to an instance
|
||||
|
||||
Disk /dev/vdb doesn't contain a valid partition table
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
You must create a file system on the device and mount it
|
||||
|
||||
@@ -37,12 +37,15 @@ Create the provider network
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the network:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron net-create --shared --provider:physical_network provider \
|
||||
--provider:network_type flat provider
|
||||
|
||||
Created a new network:
|
||||
+---------------------------+--------------------------------------+
|
||||
| Field | Value |
|
||||
@@ -62,6 +65,8 @@ Create the provider network
|
||||
| tenant_id | d84313397390425c8ed50b2f6e18d092 |
|
||||
+---------------------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
The ``--shared`` option allows all projects to use the virtual network.
|
||||
|
||||
The ``--provider:physical_network provider`` and
|
||||
@@ -76,6 +81,8 @@ Create the provider network
|
||||
[ml2_type_flat]
|
||||
flat_networks = provider
|
||||
|
||||
.. end
|
||||
|
||||
``linuxbridge_agent.ini``:
|
||||
|
||||
.. code-block:: ini
|
||||
@@ -83,6 +90,8 @@ Create the provider network
|
||||
[linux_bridge]
|
||||
physical_interface_mappings = provider:eth1
|
||||
|
||||
.. end
|
||||
|
||||
#. Create a subnet on the network:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -92,6 +101,8 @@ Create the provider network
|
||||
--dns-nameserver DNS_RESOLVER --gateway PROVIDER_NETWORK_GATEWAY \
|
||||
provider PROVIDER_NETWORK_CIDR
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``PROVIDER_NETWORK_CIDR`` with the subnet on the provider
|
||||
physical network in CIDR notation.
|
||||
|
||||
@@ -119,6 +130,7 @@ Create the provider network
|
||||
--allocation-pool start=203.0.113.101,end=203.0.113.250 \
|
||||
--dns-nameserver 8.8.4.4 --gateway 203.0.113.1 \
|
||||
provider 203.0.113.0/24
|
||||
|
||||
Created a new subnet:
|
||||
+-------------------+----------------------------------------------------+
|
||||
| Field | Value |
|
||||
@@ -139,5 +151,7 @@ Create the provider network
|
||||
| tenant_id | d84313397390425c8ed50b2f6e18d092 |
|
||||
+-------------------+----------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
Return to :ref:`Launch an instance - Create virtual networks
|
||||
<launch-instance-networks>`.
|
||||
|
||||
@@ -43,11 +43,14 @@ Create the self-service network
|
||||
|
||||
$ . demo-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the network:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron net-create selfservice
|
||||
|
||||
Created a new network:
|
||||
+-----------------------+--------------------------------------+
|
||||
| Field | Value |
|
||||
@@ -64,6 +67,8 @@ Create the self-service network
|
||||
| tenant_id | f5b2ccaa75ac413591f12fcaa096aa5c |
|
||||
+-----------------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
Non-privileged users typically cannot supply additional parameters to
|
||||
this command. The service automatically chooses parameters using
|
||||
information from the following files:
|
||||
@@ -78,6 +83,8 @@ Create the self-service network
|
||||
[ml2_type_vxlan]
|
||||
vni_ranges = 1:1000
|
||||
|
||||
.. end
|
||||
|
||||
#. Create a subnet on the network:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -86,6 +93,8 @@ Create the self-service network
|
||||
--dns-nameserver DNS_RESOLVER --gateway SELFSERVICE_NETWORK_GATEWAY \
|
||||
selfservice SELFSERVICE_NETWORK_CIDR
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``DNS_RESOLVER`` with the IP address of a DNS resolver. In
|
||||
most cases, you can use one from the ``/etc/resolv.conf`` file on
|
||||
the host.
|
||||
@@ -108,6 +117,7 @@ Create the self-service network
|
||||
$ neutron subnet-create --name selfservice \
|
||||
--dns-nameserver 8.8.4.4 --gateway 172.16.1.1 \
|
||||
selfservice 172.16.1.0/24
|
||||
|
||||
Created a new subnet:
|
||||
+-------------------+------------------------------------------------+
|
||||
| Field | Value |
|
||||
@@ -128,6 +138,8 @@ Create the self-service network
|
||||
| tenant_id | f5b2ccaa75ac413591f12fcaa096aa5c |
|
||||
+-------------------+------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
Create a router
|
||||
---------------
|
||||
|
||||
@@ -148,24 +160,32 @@ to the existing ``provider`` provider network.
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. Add the ``router: external`` option to the ``provider`` network:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron net-update provider --router:external
|
||||
|
||||
Updated network: provider
|
||||
|
||||
.. end
|
||||
|
||||
#. Source the ``demo`` credentials to gain access to user-only CLI commands:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ . demo-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the router:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron router-create router
|
||||
|
||||
Created a new router:
|
||||
+-----------------------+--------------------------------------+
|
||||
| Field | Value |
|
||||
@@ -179,20 +199,28 @@ to the existing ``provider`` provider network.
|
||||
| tenant_id | f5b2ccaa75ac413591f12fcaa096aa5c |
|
||||
+-----------------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Add the self-service network subnet as an interface on the router:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron router-interface-add router selfservice
|
||||
|
||||
Added interface bff6605d-824c-41f9-b744-21d128fc86e1 to router router.
|
||||
|
||||
.. end
|
||||
|
||||
#. Set a gateway on the provider network on the router:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron router-gateway-set router provider
|
||||
|
||||
Set gateway for router router
|
||||
|
||||
.. end
|
||||
|
||||
Verify operation
|
||||
----------------
|
||||
|
||||
@@ -207,22 +235,28 @@ creation examples.
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. List network namespaces. You should see one ``qrouter`` namespace and two
|
||||
``qdhcp`` namespaces.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ip netns
|
||||
|
||||
qrouter-89dd2083-a160-4d75-ab3a-14239f01ea0b
|
||||
qdhcp-7c6f9b37-76b4-463e-98d8-27e5686ed083
|
||||
qdhcp-0e62efcd-8cee-46c7-b163-d8df05c3c5ad
|
||||
|
||||
.. end
|
||||
|
||||
#. List ports on the router to determine the gateway IP address on the
|
||||
provider network:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron router-port-list router
|
||||
|
||||
+--------------------------------------+------+-------------------+------------------------------------------+
|
||||
| id | name | mac_address | fixed_ips |
|
||||
+--------------------------------------+------+-------------------+------------------------------------------+
|
||||
@@ -234,12 +268,15 @@ creation examples.
|
||||
| | | | "ip_address": "203.0.113.102"} |
|
||||
+--------------------------------------+------+-------------------+------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Ping this IP address from the controller node or any host on the physical
|
||||
provider network:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ping -c 4 203.0.113.102
|
||||
|
||||
PING 203.0.113.102 (203.0.113.102) 56(84) bytes of data.
|
||||
64 bytes from 203.0.113.102: icmp_req=1 ttl=64 time=0.619 ms
|
||||
64 bytes from 203.0.113.102: icmp_req=2 ttl=64 time=0.189 ms
|
||||
@@ -249,5 +286,7 @@ creation examples.
|
||||
--- 203.0.113.102 ping statistics ---
|
||||
rtt min/avg/max/mdev = 0.165/0.297/0.619/0.187 ms
|
||||
|
||||
.. end
|
||||
|
||||
Return to :ref:`Launch an instance - Create virtual networks
|
||||
<launch-instance-networks>`.
|
||||
|
||||
@@ -16,6 +16,8 @@ name, network, security group, key, and instance name.
|
||||
|
||||
$ . demo-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. A flavor specifies a virtual resource allocation profile which
|
||||
includes processor, memory, and storage.
|
||||
|
||||
@@ -34,6 +36,8 @@ name, network, security group, key, and instance name.
|
||||
| 5 | m1.xlarge | 16384 | 160 | 0 | 8 | True |
|
||||
+----+-----------+-------+------+-----------+-------+-----------+
|
||||
|
||||
.. end
|
||||
|
||||
This instance uses the ``m1.tiny`` flavor. If you created the optional
|
||||
``m1.nano`` flavor, use it instead of the ``m1.tiny`` flavor.
|
||||
|
||||
@@ -52,6 +56,8 @@ name, network, security group, key, and instance name.
|
||||
| 390eb5f7-8d49-41ec-95b7-68c0d5d54b34 | cirros | active |
|
||||
+--------------------------------------+--------+--------+
|
||||
|
||||
.. end
|
||||
|
||||
This instance uses the ``cirros`` image.
|
||||
|
||||
#. List available networks:
|
||||
@@ -66,6 +72,8 @@ name, network, security group, key, and instance name.
|
||||
| b5b6993c-ddf9-40e7-91d0-86806a42edb8 | provider | 310911f6-acf0-4a47-824e-3032916582ff |
|
||||
+--------------------------------------+--------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
This instance uses the ``provider`` provider network. However, you must
|
||||
reference this network using the ID instead of the name.
|
||||
|
||||
@@ -85,6 +93,8 @@ name, network, security group, key, and instance name.
|
||||
| dd2b614c-3dad-48ed-958b-b155a3b38515 | default | Default security group |
|
||||
+--------------------------------------+---------+------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
This instance uses the ``default`` security group.
|
||||
|
||||
Launch the instance
|
||||
@@ -138,17 +148,22 @@ Launch the instance
|
||||
| user_id | 684286a9079845359882afc3aa5011fb |
|
||||
+--------------------------------------+-----------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Check the status of your instance:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack server list
|
||||
|
||||
+--------------------------------------+-------------------+--------+---------------------------------+
|
||||
| ID | Name | Status | Networks |
|
||||
+--------------------------------------+-------------------+--------+---------------------------------+
|
||||
| 181c52ba-aebc-4c32-a97d-2e8e82e4eaaf | provider-instance | ACTIVE | provider=203.0.113.103 |
|
||||
+--------------------------------------+-------------------+--------+---------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
The status changes from ``BUILD`` to ``ACTIVE`` when the build process
|
||||
successfully completes.
|
||||
|
||||
@@ -161,6 +176,7 @@ Access the instance using the virtual console
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack console url show provider-instance
|
||||
|
||||
+-------+---------------------------------------------------------------------------------+
|
||||
| Field | Value |
|
||||
+-------+---------------------------------------------------------------------------------+
|
||||
@@ -168,6 +184,8 @@ Access the instance using the virtual console
|
||||
| url | http://controller:6080/vnc_auto.html?token=5eeccb47-525c-4918-ac2a-3ad1e9f1f493 |
|
||||
+-------+---------------------------------------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
If your web browser runs on a host that cannot resolve the
|
||||
@@ -184,6 +202,7 @@ Access the instance using the virtual console
|
||||
.. code-block:: console
|
||||
|
||||
$ ping -c 4 203.0.113.1
|
||||
|
||||
PING 203.0.113.1 (203.0.113.1) 56(84) bytes of data.
|
||||
64 bytes from 203.0.113.1: icmp_req=1 ttl=64 time=0.357 ms
|
||||
64 bytes from 203.0.113.1: icmp_req=2 ttl=64 time=0.473 ms
|
||||
@@ -194,11 +213,14 @@ Access the instance using the virtual console
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 2998ms
|
||||
rtt min/avg/max/mdev = 0.357/0.451/0.504/0.055 ms
|
||||
|
||||
.. end
|
||||
|
||||
#. Verify access to the internet:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ping -c 4 openstack.org
|
||||
|
||||
PING openstack.org (174.143.194.225) 56(84) bytes of data.
|
||||
64 bytes from 174.143.194.225: icmp_req=1 ttl=53 time=17.4 ms
|
||||
64 bytes from 174.143.194.225: icmp_req=2 ttl=53 time=17.5 ms
|
||||
@@ -209,6 +231,8 @@ Access the instance using the virtual console
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
|
||||
rtt min/avg/max/mdev = 17.431/17.575/17.734/0.143 ms
|
||||
|
||||
.. end
|
||||
|
||||
Access the instance remotely
|
||||
----------------------------
|
||||
|
||||
@@ -218,6 +242,7 @@ Access the instance remotely
|
||||
.. code-block:: console
|
||||
|
||||
$ ping -c 4 203.0.113.103
|
||||
|
||||
PING 203.0.113.103 (203.0.113.103) 56(84) bytes of data.
|
||||
64 bytes from 203.0.113.103: icmp_req=1 ttl=63 time=3.18 ms
|
||||
64 bytes from 203.0.113.103: icmp_req=2 ttl=63 time=0.981 ms
|
||||
@@ -228,18 +253,23 @@ Access the instance remotely
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 3002ms
|
||||
rtt min/avg/max/mdev = 0.929/1.539/3.183/0.951 ms
|
||||
|
||||
.. end
|
||||
|
||||
#. Access your instance using SSH from the controller node or any
|
||||
host on the provider physical network:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ssh cirros@203.0.113.103
|
||||
|
||||
The authenticity of host '203.0.113.102 (203.0.113.102)' can't be established.
|
||||
RSA key fingerprint is ed:05:e9:e7:52:a0:ff:83:68:94:c7:d1:f2:f8:e2:e9.
|
||||
Are you sure you want to continue connecting (yes/no)? yes
|
||||
Warning: Permanently added '203.0.113.102' (RSA) to the list of known hosts.
|
||||
$
|
||||
|
||||
.. end
|
||||
|
||||
If your instance does not launch or seem to work as you expect, see the
|
||||
`Instance Boot Failures
|
||||
<http://docs.openstack.org/ops-guide/ops-maintenance-compute.html#instances>`__
|
||||
|
||||
@@ -16,6 +16,8 @@ name, network, security group, key, and instance name.
|
||||
|
||||
$ . demo-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. A flavor specifies a virtual resource allocation profile which
|
||||
includes processor, memory, and storage.
|
||||
|
||||
@@ -24,6 +26,7 @@ name, network, security group, key, and instance name.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack flavor list
|
||||
|
||||
+----+-----------+-------+------+-----------+-------+-----------+
|
||||
| ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public |
|
||||
+----+-----------+-------+------+-----------+-------+-----------+
|
||||
@@ -34,6 +37,8 @@ name, network, security group, key, and instance name.
|
||||
| 5 | m1.xlarge | 16384 | 160 | 0 | 8 | True |
|
||||
+----+-----------+-------+------+-----------+-------+-----------+
|
||||
|
||||
.. end
|
||||
|
||||
This instance uses the ``m1.tiny`` flavor. If you created the optional
|
||||
``m1.nano`` flavor, use it instead of the ``m1.tiny`` flavor.
|
||||
|
||||
@@ -46,12 +51,15 @@ name, network, security group, key, and instance name.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack image list
|
||||
|
||||
+--------------------------------------+--------+--------+
|
||||
| ID | Name | Status |
|
||||
+--------------------------------------+--------+--------+
|
||||
| 390eb5f7-8d49-41ec-95b7-68c0d5d54b34 | cirros | active |
|
||||
+--------------------------------------+--------+--------+
|
||||
|
||||
.. end
|
||||
|
||||
This instance uses the ``cirros`` image.
|
||||
|
||||
#. List available networks:
|
||||
@@ -59,6 +67,7 @@ name, network, security group, key, and instance name.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack network list
|
||||
|
||||
+--------------------------------------+-------------+--------------------------------------+
|
||||
| ID | Name | Subnets |
|
||||
+--------------------------------------+-------------+--------------------------------------+
|
||||
@@ -66,6 +75,8 @@ name, network, security group, key, and instance name.
|
||||
| b5b6993c-ddf9-40e7-91d0-86806a42edb8 | provider | 310911f6-acf0-4a47-824e-3032916582ff |
|
||||
+--------------------------------------+-------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
This instance uses the ``selfservice`` self-service network. However, you
|
||||
must reference this network using the ID instead of the name.
|
||||
|
||||
@@ -74,12 +85,15 @@ name, network, security group, key, and instance name.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack security group list
|
||||
|
||||
+--------------------------------------+---------+------------------------+
|
||||
| ID | Name | Description |
|
||||
+--------------------------------------+---------+------------------------+
|
||||
| dd2b614c-3dad-48ed-958b-b155a3b38515 | default | Default security group |
|
||||
+--------------------------------------+---------+------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
This instance uses the ``default`` security group.
|
||||
|
||||
#. Launch the instance:
|
||||
@@ -91,6 +105,7 @@ name, network, security group, key, and instance name.
|
||||
$ openstack server create --flavor m1.tiny --image cirros \
|
||||
--nic net-id=SELFSERVICE_NET_ID --security-group default \
|
||||
--key-name mykey selfservice-instance
|
||||
|
||||
+--------------------------------------+---------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------------------------------+---------------------------------------+
|
||||
@@ -124,11 +139,14 @@ name, network, security group, key, and instance name.
|
||||
| user_id | 58126687cbcc4888bfa9ab73a2256f27 |
|
||||
+--------------------------------------+---------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Check the status of your instance:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack server list
|
||||
|
||||
+--------------------------------------+----------------------+--------+---------------------------------+
|
||||
| ID | Name | Status | Networks |
|
||||
+--------------------------------------+----------------------+--------+---------------------------------+
|
||||
@@ -136,6 +154,8 @@ name, network, security group, key, and instance name.
|
||||
| 181c52ba-aebc-4c32-a97d-2e8e82e4eaaf | provider-instance | ACTIVE | provider=203.0.113.103 |
|
||||
+--------------------------------------+----------------------+--------+---------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
The status changes from ``BUILD`` to ``ACTIVE`` when the build process
|
||||
successfully completes.
|
||||
|
||||
@@ -148,6 +168,7 @@ Access the instance using a virtual console
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack console url show selfservice-instance
|
||||
|
||||
+-------+---------------------------------------------------------------------------------+
|
||||
| Field | Value |
|
||||
+-------+---------------------------------------------------------------------------------+
|
||||
@@ -155,6 +176,8 @@ Access the instance using a virtual console
|
||||
| url | http://controller:6080/vnc_auto.html?token=5eeccb47-525c-4918-ac2a-3ad1e9f1f493 |
|
||||
+-------+---------------------------------------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
If your web browser runs on a host that cannot resolve the
|
||||
@@ -171,6 +194,7 @@ Access the instance using a virtual console
|
||||
.. code-block:: console
|
||||
|
||||
$ ping -c 4 172.16.1.1
|
||||
|
||||
PING 172.16.1.1 (172.16.1.1) 56(84) bytes of data.
|
||||
64 bytes from 172.16.1.1: icmp_req=1 ttl=64 time=0.357 ms
|
||||
64 bytes from 172.16.1.1: icmp_req=2 ttl=64 time=0.473 ms
|
||||
@@ -181,11 +205,14 @@ Access the instance using a virtual console
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 2998ms
|
||||
rtt min/avg/max/mdev = 0.357/0.451/0.504/0.055 ms
|
||||
|
||||
.. end
|
||||
|
||||
#. Verify access to the internet:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ping -c 4 openstack.org
|
||||
|
||||
PING openstack.org (174.143.194.225) 56(84) bytes of data.
|
||||
64 bytes from 174.143.194.225: icmp_req=1 ttl=53 time=17.4 ms
|
||||
64 bytes from 174.143.194.225: icmp_req=2 ttl=53 time=17.5 ms
|
||||
@@ -196,6 +223,8 @@ Access the instance using a virtual console
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
|
||||
rtt min/avg/max/mdev = 17.431/17.575/17.734/0.143 ms
|
||||
|
||||
.. end
|
||||
|
||||
Access the instance remotely
|
||||
----------------------------
|
||||
|
||||
@@ -204,6 +233,7 @@ Access the instance remotely
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack ip floating create provider
|
||||
|
||||
+-------------+--------------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+--------------------------------------+
|
||||
@@ -214,12 +244,16 @@ Access the instance remotely
|
||||
| pool | provider |
|
||||
+-------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Associate the floating IP address with the instance:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack ip floating add 203.0.113.104 selfservice-instance
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command provides no output.
|
||||
@@ -229,6 +263,7 @@ Access the instance remotely
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack server list
|
||||
|
||||
+--------------------------------------+----------------------+--------+---------------------------------------+
|
||||
| ID | Name | Status | Networks |
|
||||
+--------------------------------------+----------------------+--------+---------------------------------------+
|
||||
@@ -236,12 +271,15 @@ Access the instance remotely
|
||||
| 181c52ba-aebc-4c32-a97d-2e8e82e4eaaf | provider-instance | ACTIVE | provider=203.0.113.103 |
|
||||
+--------------------------------------+----------------------+--------+---------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Verify connectivity to the instance via floating IP address from
|
||||
the controller node or any host on the provider physical network:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ping -c 4 203.0.113.104
|
||||
|
||||
PING 203.0.113.104 (203.0.113.104) 56(84) bytes of data.
|
||||
64 bytes from 203.0.113.104: icmp_req=1 ttl=63 time=3.18 ms
|
||||
64 bytes from 203.0.113.104: icmp_req=2 ttl=63 time=0.981 ms
|
||||
@@ -252,18 +290,23 @@ Access the instance remotely
|
||||
4 packets transmitted, 4 received, 0% packet loss, time 3002ms
|
||||
rtt min/avg/max/mdev = 0.929/1.539/3.183/0.951 ms
|
||||
|
||||
.. end
|
||||
|
||||
#. Access your instance using SSH from the controller node or any
|
||||
host on the provider physical network:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ssh cirros@203.0.113.104
|
||||
|
||||
The authenticity of host '203.0.113.104 (203.0.113.104)' can't be established.
|
||||
RSA key fingerprint is ed:05:e9:e7:52:a0:ff:83:68:94:c7:d1:f2:f8:e2:e9.
|
||||
Are you sure you want to continue connecting (yes/no)? yes
|
||||
Warning: Permanently added '203.0.113.104' (RSA) to the list of known hosts.
|
||||
$
|
||||
|
||||
.. end
|
||||
|
||||
If your instance does not launch or seem to work as you expect, see the
|
||||
`Instance Boot Failures
|
||||
<http://docs.openstack.org/ops-guide/ops-maintenance-compute.html#instances>`__
|
||||
|
||||
@@ -48,6 +48,7 @@ purposes.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack flavor create --id 0 --vcpus 1 --ram 64 --disk 1 m1.nano
|
||||
|
||||
+----------------------------+---------+
|
||||
| Field | Value |
|
||||
+----------------------------+---------+
|
||||
@@ -63,6 +64,8 @@ purposes.
|
||||
| vcpus | 1 |
|
||||
+----------------------------+---------+
|
||||
|
||||
.. end
|
||||
|
||||
Generate a key pair
|
||||
-------------------
|
||||
|
||||
@@ -76,12 +79,15 @@ must add a public key to the Compute service.
|
||||
|
||||
$ . demo-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. Generate and add a key pair:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ ssh-keygen -q -N ""
|
||||
$ openstack keypair create --public-key ~/.ssh/id_rsa.pub mykey
|
||||
|
||||
+-------------+-------------------------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+-------------------------------------------------+
|
||||
@@ -90,6 +96,8 @@ must add a public key to the Compute service.
|
||||
| user_id | 58126687cbcc4888bfa9ab73a2256f27 |
|
||||
+-------------+-------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Alternatively, you can skip the ``ssh-keygen`` command and use an
|
||||
@@ -100,12 +108,15 @@ must add a public key to the Compute service.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack keypair list
|
||||
|
||||
+-------+-------------------------------------------------+
|
||||
| Name | Fingerprint |
|
||||
+-------+-------------------------------------------------+
|
||||
| mykey | ee:3d:2e:97:d4:e2:6a:54:6d:0d:ce:43:39:2c:ba:4d |
|
||||
+-------+-------------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
Add security group rules
|
||||
------------------------
|
||||
|
||||
@@ -121,6 +132,7 @@ secure shell (SSH).
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack security group rule create --proto icmp default
|
||||
|
||||
+-----------------------+--------------------------------------+
|
||||
| Field | Value |
|
||||
+-----------------------+--------------------------------------+
|
||||
@@ -132,11 +144,14 @@ secure shell (SSH).
|
||||
| remote_security_group | |
|
||||
+-----------------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
* Permit secure shell (SSH) access:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack security group rule create --proto tcp --dst-port 22 default
|
||||
|
||||
+-----------------------+--------------------------------------+
|
||||
| Field | Value |
|
||||
+-----------------------+--------------------------------------+
|
||||
@@ -148,6 +163,8 @@ secure shell (SSH).
|
||||
| remote_security_group | |
|
||||
+-----------------------+--------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
Launch an instance
|
||||
------------------
|
||||
|
||||
|
||||
@@ -15,25 +15,32 @@ networking infrastructure for instances and handles security groups.
|
||||
* In the ``[linux_bridge]`` section, map the provider virtual network to the
|
||||
provider physical network interface:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[linux_bridge]
|
||||
physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``PROVIDER_INTERFACE_NAME`` with the name of the underlying
|
||||
provider physical network interface. See :ref:`environment-networking`
|
||||
for more information.
|
||||
|
||||
* In the ``[vxlan]`` section, disable VXLAN overlay networks:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[vxlan]
|
||||
enable_vxlan = False
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[securitygroup]`` section, enable security groups and
|
||||
configure the Linux bridge :term:`iptables` firewall driver:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[securitygroup]
|
||||
@@ -41,5 +48,7 @@ networking infrastructure for instances and handles security groups.
|
||||
enable_security_group = True
|
||||
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
|
||||
|
||||
.. end
|
||||
|
||||
Return to
|
||||
:ref:`Networking compute node configuration <neutron-compute-compute>`.
|
||||
|
||||
@@ -15,11 +15,14 @@ networking infrastructure for instances and handles security groups.
|
||||
* In the ``[linux_bridge]`` section, map the provider virtual network to the
|
||||
provider physical network interface:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[linux_bridge]
|
||||
physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``PROVIDER_INTERFACE_NAME`` with the name of the underlying
|
||||
provider physical network interface. See :ref:`environment-networking`
|
||||
for more information.
|
||||
@@ -28,6 +31,7 @@ networking infrastructure for instances and handles security groups.
|
||||
IP address of the physical network interface that handles overlay
|
||||
networks, and enable layer-2 population:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[vxlan]
|
||||
@@ -35,6 +39,8 @@ networking infrastructure for instances and handles security groups.
|
||||
local_ip = OVERLAY_INTERFACE_IP_ADDRESS
|
||||
l2_population = True
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``OVERLAY_INTERFACE_IP_ADDRESS`` with the IP address of the
|
||||
underlying physical network interface that handles overlay networks. The
|
||||
example architecture uses the management interface to tunnel traffic to
|
||||
@@ -45,6 +51,7 @@ networking infrastructure for instances and handles security groups.
|
||||
* In the ``[securitygroup]`` section, enable security groups and
|
||||
configure the Linux bridge :term:`iptables` firewall driver:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[securitygroup]
|
||||
@@ -52,5 +59,7 @@ networking infrastructure for instances and handles security groups.
|
||||
enable_security_group = True
|
||||
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
|
||||
|
||||
.. end
|
||||
|
||||
Return to
|
||||
:ref:`Networking compute node configuration <neutron-compute-compute>`.
|
||||
|
||||
@@ -4,19 +4,24 @@ Install and configure compute node
|
||||
The compute node handles connectivity and :term:`security groups <security
|
||||
group>` for instances.
|
||||
|
||||
.. only:: ubuntu or rdo or obs
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
Install the components
|
||||
----------------------
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# apt-get install neutron-linuxbridge-agent
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
Install the components
|
||||
----------------------
|
||||
|
||||
.. todo:
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1334626
|
||||
@@ -25,12 +30,23 @@ Install the components
|
||||
|
||||
# yum install openstack-neutron-linuxbridge ebtables ipset
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
Install the components
|
||||
----------------------
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# zypper install --no-recommends openstack-neutron-linuxbridge-agent
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
Configure the common component
|
||||
------------------------------
|
||||
|
||||
@@ -48,6 +64,7 @@ authentication mechanism, message queue, and plug-in.
|
||||
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections, configure
|
||||
RabbitMQ message queue access:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -60,12 +77,15 @@ authentication mechanism, message queue, and plug-in.
|
||||
rabbit_userid = openstack
|
||||
rabbit_password = RABBIT_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with the password you chose for the ``openstack``
|
||||
account in RabbitMQ.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections, configure
|
||||
Identity service access:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -84,6 +104,8 @@ authentication mechanism, message queue, and plug-in.
|
||||
username = neutron
|
||||
password = NEUTRON_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NEUTRON_PASS`` with the password you chose for the ``neutron``
|
||||
user in the Identity service.
|
||||
|
||||
@@ -96,12 +118,18 @@ authentication mechanism, message queue, and plug-in.
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/lib/neutron/tmp
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
|
||||
Configure networking options
|
||||
----------------------------
|
||||
|
||||
@@ -124,6 +152,7 @@ Configure Compute to use Networking
|
||||
|
||||
* In the ``[neutron]`` section, configure access parameters:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[neutron]
|
||||
@@ -138,6 +167,8 @@ Configure Compute to use Networking
|
||||
username = neutron
|
||||
password = NEUTRON_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NEUTRON_PASS`` with the password you chose for the ``neutron``
|
||||
user in the Identity service.
|
||||
|
||||
@@ -152,6 +183,8 @@ Finalize installation
|
||||
|
||||
# systemctl restart openstack-nova-compute.service
|
||||
|
||||
.. end
|
||||
|
||||
#. Start the Linux bridge agent and configure it to start when the
|
||||
system boots:
|
||||
|
||||
@@ -160,6 +193,10 @@ Finalize installation
|
||||
# systemctl enable neutron-linuxbridge-agent.service
|
||||
# systemctl start neutron-linuxbridge-agent.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
#. The Networking service initialization scripts expect the variable
|
||||
@@ -167,16 +204,21 @@ Finalize installation
|
||||
reference the ML2 plug-in configuration file. Ensure that the
|
||||
``/etc/sysconfig/neutron`` file contains the following:
|
||||
|
||||
.. path /etc/sysconfig/neutron
|
||||
.. code-block:: ini
|
||||
|
||||
NEUTRON_PLUGIN_CONF="/etc/neutron/plugins/ml2/ml2_conf.ini"
|
||||
|
||||
.. end
|
||||
|
||||
#. Restart the Compute service:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# systemctl restart openstack-nova-compute.service
|
||||
|
||||
.. end
|
||||
|
||||
#. Start the Linux Bridge agent and configure it to start when the
|
||||
system boots:
|
||||
|
||||
@@ -185,6 +227,10 @@ Finalize installation
|
||||
# systemctl enable openstack-neutron-linuxbridge-agent.service
|
||||
# systemctl start openstack-neutron-linuxbridge-agent.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Restart the Compute service:
|
||||
@@ -193,8 +239,14 @@ Finalize installation
|
||||
|
||||
# service nova-compute restart
|
||||
|
||||
.. end
|
||||
|
||||
#. Restart the Linux bridge agent:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# service neutron-linuxbridge-agent restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -14,6 +14,8 @@ Install the components
|
||||
neutron-linuxbridge-agent neutron-dhcp-agent \
|
||||
neutron-metadata-agent
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: debian
|
||||
|
||||
.. code-block:: console
|
||||
@@ -21,6 +23,8 @@ Install the components
|
||||
# apt-get install neutron-server neutron-linuxbridge-agent \
|
||||
neutron-dhcp-agent neutron-metadata-agent python-neutronclient
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
@@ -28,6 +32,8 @@ Install the components
|
||||
# yum install openstack-neutron openstack-neutron-ml2 \
|
||||
openstack-neutron-linuxbridge ebtables
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: obs
|
||||
|
||||
.. code-block:: console
|
||||
@@ -36,6 +42,8 @@ Install the components
|
||||
openstack-neutron-server openstack-neutron-linuxbridge-agent \
|
||||
openstack-neutron-dhcp-agent openstack-neutron-metadata-agent
|
||||
|
||||
.. end
|
||||
|
||||
Configure the server component
|
||||
------------------------------
|
||||
|
||||
@@ -50,18 +58,22 @@ and plug-in.
|
||||
|
||||
* In the ``[database]`` section, configure database access:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[database]
|
||||
...
|
||||
connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NEUTRON_DBPASS`` with the password you chose for the
|
||||
database.
|
||||
|
||||
* In the ``[DEFAULT]`` section, enable the Modular Layer 2 (ML2)
|
||||
plug-in and disable additional plug-ins:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -69,9 +81,12 @@ and plug-in.
|
||||
core_plugin = ml2
|
||||
service_plugins =
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections,
|
||||
configure RabbitMQ message queue access:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -84,12 +99,15 @@ and plug-in.
|
||||
rabbit_userid = openstack
|
||||
rabbit_password = RABBIT_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with the password you chose for the
|
||||
``openstack`` account in RabbitMQ.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections, configure
|
||||
Identity service access:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -108,6 +126,8 @@ and plug-in.
|
||||
username = neutron
|
||||
password = NEUTRON_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NEUTRON_PASS`` with the password you chose for the ``neutron``
|
||||
user in the Identity service.
|
||||
|
||||
@@ -119,6 +139,7 @@ and plug-in.
|
||||
* In the ``[DEFAULT]`` and ``[nova]`` sections, configure Networking to
|
||||
notify Compute of network topology changes:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -137,6 +158,8 @@ and plug-in.
|
||||
username = nova
|
||||
password = NOVA_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NOVA_PASS`` with the password you chose for the ``nova``
|
||||
user in the Identity service.
|
||||
|
||||
@@ -144,12 +167,15 @@ and plug-in.
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/lib/neutron/tmp
|
||||
|
||||
.. end
|
||||
|
||||
Configure the Modular Layer 2 (ML2) plug-in
|
||||
-------------------------------------------
|
||||
|
||||
@@ -161,28 +187,37 @@ and switching) virtual networking infrastructure for instances.
|
||||
|
||||
* In the ``[ml2]`` section, enable flat and VLAN networks:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2]
|
||||
...
|
||||
type_drivers = flat,vlan
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[ml2]`` section, disable self-service networks:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2]
|
||||
...
|
||||
tenant_network_types =
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[ml2]`` section, enable the Linux bridge mechanism:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2]
|
||||
...
|
||||
mechanism_drivers = linuxbridge
|
||||
|
||||
.. end
|
||||
|
||||
.. warning::
|
||||
|
||||
After you configure the ML2 plug-in, removing values in the
|
||||
@@ -190,30 +225,39 @@ and switching) virtual networking infrastructure for instances.
|
||||
|
||||
* In the ``[ml2]`` section, enable the port security extension driver:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2]
|
||||
...
|
||||
extension_drivers = port_security
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[ml2_type_flat]`` section, configure the provider virtual
|
||||
network as a flat network:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2_type_flat]
|
||||
...
|
||||
flat_networks = provider
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[securitygroup]`` section, enable :term:`ipset` to increase
|
||||
efficiency of security group rules:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[securitygroup]
|
||||
...
|
||||
enable_ipset = True
|
||||
|
||||
.. end
|
||||
|
||||
Configure the Linux bridge agent
|
||||
--------------------------------
|
||||
|
||||
@@ -226,25 +270,32 @@ networking infrastructure for instances and handles security groups.
|
||||
* In the ``[linux_bridge]`` section, map the provider virtual network to the
|
||||
provider physical network interface:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[linux_bridge]
|
||||
physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``PROVIDER_INTERFACE_NAME`` with the name of the underlying
|
||||
provider physical network interface. See :ref:`environment-networking`
|
||||
for more information.
|
||||
|
||||
* In the ``[vxlan]`` section, disable VXLAN overlay networks:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[vxlan]
|
||||
enable_vxlan = False
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[securitygroup]`` section, enable security groups and
|
||||
configure the Linux bridge :term:`iptables` firewall driver:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[securitygroup]
|
||||
@@ -252,6 +303,8 @@ networking infrastructure for instances and handles security groups.
|
||||
enable_security_group = True
|
||||
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
|
||||
|
||||
.. end
|
||||
|
||||
Configure the DHCP agent
|
||||
------------------------
|
||||
|
||||
@@ -264,6 +317,7 @@ The :term:`DHCP agent` provides DHCP services for virtual networks.
|
||||
Dnsmasq DHCP driver, and enable isolated metadata so instances on provider
|
||||
networks can access metadata over the network:
|
||||
|
||||
.. path /etc/neutron/dhcp_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -272,6 +326,8 @@ The :term:`DHCP agent` provides DHCP services for virtual networks.
|
||||
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
|
||||
enable_isolated_metadata = True
|
||||
|
||||
.. end
|
||||
|
||||
Return to
|
||||
:ref:`Networking controller node configuration
|
||||
<neutron-controller-metadata-agent>`.
|
||||
|
||||
@@ -14,6 +14,10 @@ Install the components
|
||||
neutron-linuxbridge-agent neutron-l3-agent neutron-dhcp-agent \
|
||||
neutron-metadata-agent
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
.. code-block:: console
|
||||
@@ -21,6 +25,10 @@ Install the components
|
||||
# yum install openstack-neutron openstack-neutron-ml2 \
|
||||
openstack-neutron-linuxbridge ebtables
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
.. code-block:: console
|
||||
@@ -30,6 +38,10 @@ Install the components
|
||||
openstack-neutron-l3-agent openstack-neutron-dhcp-agent \
|
||||
openstack-neutron-metadata-agent
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
#. .. code-block:: console
|
||||
@@ -37,6 +49,10 @@ Install the components
|
||||
# apt-get install neutron-server neutron-linuxbridge-agent \
|
||||
neutron-dhcp-agent neutron-metadata-agent neutron-l3-agent
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
Configure the server component
|
||||
------------------------------
|
||||
|
||||
@@ -45,18 +61,22 @@ Configure the server component
|
||||
|
||||
* In the ``[database]`` section, configure database access:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[database]
|
||||
...
|
||||
connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NEUTRON_DBPASS`` with the password you chose for the
|
||||
database.
|
||||
|
||||
* In the ``[DEFAULT]`` section, enable the Modular Layer 2 (ML2)
|
||||
plug-in, router service, and overlapping IP addresses:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -65,9 +85,12 @@ Configure the server component
|
||||
service_plugins = router
|
||||
allow_overlapping_ips = True
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections,
|
||||
configure RabbitMQ message queue access:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -80,12 +103,15 @@ Configure the server component
|
||||
rabbit_userid = openstack
|
||||
rabbit_password = RABBIT_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with the password you chose for the
|
||||
``openstack`` account in RabbitMQ.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections, configure
|
||||
Identity service access:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -104,6 +130,8 @@ Configure the server component
|
||||
username = neutron
|
||||
password = NEUTRON_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NEUTRON_PASS`` with the password you chose for the ``neutron``
|
||||
user in the Identity service.
|
||||
|
||||
@@ -115,6 +143,7 @@ Configure the server component
|
||||
* In the ``[DEFAULT]`` and ``[nova]`` sections, configure Networking to
|
||||
notify Compute of network topology changes:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -133,6 +162,8 @@ Configure the server component
|
||||
username = nova
|
||||
password = NOVA_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NOVA_PASS`` with the password you chose for the ``nova``
|
||||
user in the Identity service.
|
||||
|
||||
@@ -140,12 +171,15 @@ Configure the server component
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/neutron/neutron.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/lib/neutron/tmp
|
||||
|
||||
.. end
|
||||
|
||||
Configure the Modular Layer 2 (ML2) plug-in
|
||||
-------------------------------------------
|
||||
|
||||
@@ -157,29 +191,38 @@ and switching) virtual networking infrastructure for instances.
|
||||
|
||||
* In the ``[ml2]`` section, enable flat, VLAN, and VXLAN networks:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2]
|
||||
...
|
||||
type_drivers = flat,vlan,vxlan
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[ml2]`` section, enable VXLAN self-service networks:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2]
|
||||
...
|
||||
tenant_network_types = vxlan
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[ml2]`` section, enable the Linux bridge and layer-2 population
|
||||
mechanisms:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2]
|
||||
...
|
||||
mechanism_drivers = linuxbridge,l2population
|
||||
|
||||
.. end
|
||||
|
||||
.. warning::
|
||||
|
||||
After you configure the ML2 plug-in, removing values in the
|
||||
@@ -191,39 +234,51 @@ and switching) virtual networking infrastructure for instances.
|
||||
|
||||
* In the ``[ml2]`` section, enable the port security extension driver:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2]
|
||||
...
|
||||
extension_drivers = port_security
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[ml2_type_flat]`` section, configure the provider virtual
|
||||
network as a flat network:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2_type_flat]
|
||||
...
|
||||
flat_networks = provider
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[ml2_type_vxlan]`` section, configure the VXLAN network identifier
|
||||
range for self-service networks:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[ml2_type_vxlan]
|
||||
...
|
||||
vni_ranges = 1:1000
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[securitygroup]`` section, enable :term:`ipset` to increase
|
||||
efficiency of security group rules:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/ml2_conf.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[securitygroup]
|
||||
...
|
||||
enable_ipset = True
|
||||
|
||||
.. end
|
||||
|
||||
Configure the Linux bridge agent
|
||||
--------------------------------
|
||||
|
||||
@@ -236,11 +291,14 @@ networking infrastructure for instances and handles security groups.
|
||||
* In the ``[linux_bridge]`` section, map the provider virtual network to the
|
||||
provider physical network interface:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[linux_bridge]
|
||||
physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``PROVIDER_INTERFACE_NAME`` with the name of the underlying
|
||||
provider physical network interface. See :ref:`environment-networking`
|
||||
for more information.
|
||||
@@ -249,6 +307,7 @@ networking infrastructure for instances and handles security groups.
|
||||
IP address of the physical network interface that handles overlay
|
||||
networks, and enable layer-2 population:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[vxlan]
|
||||
@@ -256,6 +315,8 @@ networking infrastructure for instances and handles security groups.
|
||||
local_ip = OVERLAY_INTERFACE_IP_ADDRESS
|
||||
l2_population = True
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``OVERLAY_INTERFACE_IP_ADDRESS`` with the IP address of the
|
||||
underlying physical network interface that handles overlay networks. The
|
||||
example architecture uses the management interface to tunnel traffic to
|
||||
@@ -266,6 +327,7 @@ networking infrastructure for instances and handles security groups.
|
||||
* In the ``[securitygroup]`` section, enable security groups and
|
||||
configure the Linux bridge :term:`iptables` firewall driver:
|
||||
|
||||
.. path /etc/neutron/plugins/ml2/linuxbridge_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[securitygroup]
|
||||
@@ -273,6 +335,8 @@ networking infrastructure for instances and handles security groups.
|
||||
enable_security_group = True
|
||||
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
|
||||
|
||||
.. end
|
||||
|
||||
Configure the layer-3 agent
|
||||
---------------------------
|
||||
|
||||
@@ -285,6 +349,7 @@ self-service virtual networks.
|
||||
* In the ``[DEFAULT]`` section, configure the Linux bridge interface driver
|
||||
and external network bridge:
|
||||
|
||||
.. path /etc/neutron/l3_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -292,6 +357,8 @@ self-service virtual networks.
|
||||
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
|
||||
external_network_bridge =
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
The ``external_network_bridge`` option intentionally lacks a value
|
||||
@@ -309,6 +376,7 @@ The :term:`DHCP agent` provides DHCP services for virtual networks.
|
||||
Dnsmasq DHCP driver, and enable isolated metadata so instances on provider
|
||||
networks can access metadata over the network:
|
||||
|
||||
.. path /etc/neutron/dhcp_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -317,6 +385,8 @@ The :term:`DHCP agent` provides DHCP services for virtual networks.
|
||||
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
|
||||
enable_isolated_metadata = True
|
||||
|
||||
.. end
|
||||
|
||||
Return to
|
||||
:ref:`Networking controller node configuration
|
||||
<neutron-controller-metadata-agent>`.
|
||||
|
||||
@@ -14,24 +14,30 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ mysql -u root -p
|
||||
mysql> $ mysql -u root -p
|
||||
|
||||
.. end
|
||||
|
||||
* Create the ``neutron`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
CREATE DATABASE neutron;
|
||||
mysql> CREATE DATABASE neutron;
|
||||
|
||||
.. end
|
||||
|
||||
* Grant proper access to the ``neutron`` database, replacing
|
||||
``NEUTRON_DBPASS`` with a suitable password:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' \
|
||||
mysql> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' \
|
||||
IDENTIFIED BY 'NEUTRON_DBPASS';
|
||||
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' \
|
||||
mysql> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' \
|
||||
IDENTIFIED BY 'NEUTRON_DBPASS';
|
||||
|
||||
.. end
|
||||
|
||||
* Exit the database access client.
|
||||
|
||||
#. Source the ``admin`` credentials to gain access to admin-only CLI
|
||||
@@ -41,6 +47,8 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. To create the service credentials, complete these steps:
|
||||
|
||||
* Create the ``neutron`` user:
|
||||
@@ -48,6 +56,7 @@ must create a database, service credentials, and API endpoints.
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack user create --domain default --password-prompt neutron
|
||||
|
||||
User Password:
|
||||
Repeat User Password:
|
||||
+-----------+----------------------------------+
|
||||
@@ -59,6 +68,7 @@ must create a database, service credentials, and API endpoints.
|
||||
| name | neutron |
|
||||
+-----------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
* Add the ``admin`` role to the ``neutron`` user:
|
||||
|
||||
@@ -66,6 +76,8 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack role add --project service --user neutron admin
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command provides no output.
|
||||
@@ -76,6 +88,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack service create --name neutron \
|
||||
--description "OpenStack Networking" network
|
||||
|
||||
+-------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+----------------------------------+
|
||||
@@ -86,12 +99,15 @@ must create a database, service credentials, and API endpoints.
|
||||
| type | network |
|
||||
+-------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the Networking service API endpoints:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
network public http://controller:9696
|
||||
|
||||
+--------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+----------------------------------+
|
||||
@@ -108,6 +124,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
network internal http://controller:9696
|
||||
|
||||
+--------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+----------------------------------+
|
||||
@@ -124,6 +141,7 @@ must create a database, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
network admin http://controller:9696
|
||||
|
||||
+--------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+----------------------------------+
|
||||
@@ -138,6 +156,8 @@ must create a database, service credentials, and API endpoints.
|
||||
| url | http://controller:9696 |
|
||||
+--------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
Configure networking options
|
||||
----------------------------
|
||||
|
||||
@@ -193,6 +213,7 @@ such as credentials to instances.
|
||||
* In the ``[DEFAULT]`` section, configure the metadata host and shared
|
||||
secret:
|
||||
|
||||
.. path /etc/neutron/metadata_agent.ini
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -200,6 +221,8 @@ such as credentials to instances.
|
||||
nova_metadata_ip = controller
|
||||
metadata_proxy_shared_secret = METADATA_SECRET
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``METADATA_SECRET`` with a suitable secret for the metadata proxy.
|
||||
|
||||
Configure Compute to use Networking
|
||||
@@ -210,6 +233,7 @@ Configure Compute to use Networking
|
||||
* In the ``[neutron]`` section, configure access parameters, enable the
|
||||
metadata proxy, and configure the secret:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[neutron]
|
||||
@@ -223,10 +247,11 @@ Configure Compute to use Networking
|
||||
project_name = service
|
||||
username = neutron
|
||||
password = NEUTRON_PASS
|
||||
|
||||
service_metadata_proxy = True
|
||||
metadata_proxy_shared_secret = METADATA_SECRET
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NEUTRON_PASS`` with the password you chose for the ``neutron``
|
||||
user in the Identity service.
|
||||
|
||||
@@ -247,6 +272,8 @@ Finalize installation
|
||||
|
||||
# ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini
|
||||
|
||||
.. end
|
||||
|
||||
#. Populate the database:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -254,6 +281,8 @@ Finalize installation
|
||||
# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \
|
||||
--config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Database population occurs later for Networking because the script
|
||||
@@ -265,6 +294,8 @@ Finalize installation
|
||||
|
||||
# systemctl restart openstack-nova-api.service
|
||||
|
||||
.. end
|
||||
|
||||
#. Start the Networking services and configure them to start when the system
|
||||
boots.
|
||||
|
||||
@@ -279,6 +310,8 @@ Finalize installation
|
||||
neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
|
||||
neutron-metadata-agent.service
|
||||
|
||||
.. end
|
||||
|
||||
For networking option 2, also enable and start the layer-3 service:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -286,6 +319,10 @@ Finalize installation
|
||||
# systemctl enable neutron-l3-agent.service
|
||||
# systemctl start neutron-l3-agent.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs
|
||||
|
||||
#. Restart the Compute API service:
|
||||
@@ -294,6 +331,8 @@ Finalize installation
|
||||
|
||||
# systemctl restart openstack-nova-api.service
|
||||
|
||||
.. end
|
||||
|
||||
#. Start the Networking services and configure them to start when the system
|
||||
boots.
|
||||
|
||||
@@ -310,6 +349,8 @@ Finalize installation
|
||||
openstack-neutron-dhcp-agent.service \
|
||||
openstack-neutron-metadata-agent.service
|
||||
|
||||
.. end
|
||||
|
||||
For networking option 2, also enable and start the layer-3 service:
|
||||
|
||||
.. code-block:: console
|
||||
@@ -317,6 +358,10 @@ Finalize installation
|
||||
# systemctl enable openstack-neutron-l3-agent.service
|
||||
# systemctl start openstack-neutron-l3-agent.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Populate the database:
|
||||
@@ -326,6 +371,8 @@ Finalize installation
|
||||
# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \
|
||||
--config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Database population occurs later for Networking because the script
|
||||
@@ -337,6 +384,8 @@ Finalize installation
|
||||
|
||||
# service nova-api restart
|
||||
|
||||
.. end
|
||||
|
||||
#. Restart the Networking services.
|
||||
|
||||
For both networking options:
|
||||
@@ -348,8 +397,14 @@ Finalize installation
|
||||
# service neutron-dhcp-agent restart
|
||||
# service neutron-metadata-agent restart
|
||||
|
||||
.. end
|
||||
|
||||
For networking option 2, also restart the layer-3 service:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# service neutron-l3-agent restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -12,6 +12,7 @@ List agents to verify successful launch of the neutron agents:
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron agent-list
|
||||
|
||||
+--------------------------------------+--------------------+------------+-------+----------------+---------------------------+
|
||||
| id | agent_type | host | alive | admin_state_up | binary |
|
||||
+--------------------------------------+--------------------+------------+-------+----------------+---------------------------+
|
||||
@@ -21,5 +22,7 @@ List agents to verify successful launch of the neutron agents:
|
||||
| f49a4b81-afd6-4b3d-b923-66c8f0517099 | Metadata agent | controller | :-) | True | neutron-metadata-agent |
|
||||
+--------------------------------------+--------------------+------------+-------+----------------+---------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
The output should indicate three agents on the controller node and one
|
||||
agent on each compute node.
|
||||
|
||||
@@ -12,6 +12,7 @@ List agents to verify successful launch of the neutron agents:
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron agent-list
|
||||
|
||||
+--------------------------------------+--------------------+------------+-------+----------------+---------------------------+
|
||||
| id | agent_type | host | alive | admin_state_up | binary |
|
||||
+--------------------------------------+--------------------+------------+-------+----------------+---------------------------+
|
||||
@@ -22,5 +23,7 @@ List agents to verify successful launch of the neutron agents:
|
||||
| f49a4b81-afd6-4b3d-b923-66c8f0517099 | Metadata agent | controller | :-) | True | neutron-metadata-agent |
|
||||
+--------------------------------------+--------------------+------------+-------+----------------+---------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
The output should indicate four agents on the controller node and one
|
||||
agent on each compute node.
|
||||
|
||||
@@ -12,12 +12,15 @@ Verify operation
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. List loaded extensions to verify successful launch of the
|
||||
``neutron-server`` process:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ neutron ext-list
|
||||
|
||||
+---------------------------+-----------------------------------------------+
|
||||
| alias | name |
|
||||
+---------------------------+-----------------------------------------------+
|
||||
@@ -55,6 +58,8 @@ Verify operation
|
||||
| dvr | Distributed Virtual Router |
|
||||
+---------------------------+-----------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Actual output may differ slightly from this example.
|
||||
|
||||
@@ -34,6 +34,10 @@ Install and configure components
|
||||
|
||||
# zypper install openstack-nova-compute genisoimage kvm libvirt
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. Install the packages:
|
||||
@@ -42,6 +46,10 @@ Install and configure components
|
||||
|
||||
# yum install openstack-nova-compute
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
#. Install the packages:
|
||||
@@ -50,6 +58,10 @@ Install and configure components
|
||||
|
||||
# apt-get install nova-compute
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
Respond to prompts for debconf.
|
||||
@@ -60,21 +72,27 @@ Install and configure components
|
||||
sure that you do not activate database management handling by debconf,
|
||||
as a compute node should not access the central database.
|
||||
|
||||
.. endonly
|
||||
|
||||
2. Edit the ``/etc/nova/nova.conf`` file and
|
||||
complete the following actions:
|
||||
|
||||
* In the ``[DEFAULT]`` section, enable only the compute and
|
||||
metadata APIs:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
enabled_apis = osapi_compute,metadata
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[DEFAULT]`` and [oslo_messaging_rabbit]
|
||||
sections, configure ``RabbitMQ`` message queue access:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -87,12 +105,15 @@ Install and configure components
|
||||
rabbit_userid = openstack
|
||||
rabbit_password = RABBIT_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with the password you chose for
|
||||
the ``openstack`` account in ``RabbitMQ``.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections,
|
||||
configure Identity service access:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -111,6 +132,8 @@ Install and configure components
|
||||
username = nova
|
||||
password = NOVA_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NOVA_PASS`` with the password you chose for the
|
||||
``nova`` user in the Identity service.
|
||||
|
||||
@@ -125,27 +148,35 @@ Install and configure components
|
||||
is correctly set (this value is handled by the config and postinst
|
||||
scripts of the ``nova-common`` package using debconf):
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
my_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``MANAGEMENT_INTERFACE_IP_ADDRESS`` with the IP address
|
||||
of the management network interface on your compute node,
|
||||
typically 10.0.0.31 for the first node in the
|
||||
:ref:`example architecture <overview-example-architectures>`.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs or rdo or ubuntu
|
||||
|
||||
* In the ``[DEFAULT]`` section, configure the ``my_ip`` option:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
my_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``MANAGEMENT_INTERFACE_IP_ADDRESS`` with the IP address
|
||||
of the management network interface on your compute node,
|
||||
typically 10.0.0.31 for the first node in the
|
||||
@@ -153,6 +184,7 @@ Install and configure components
|
||||
|
||||
* In the ``[DEFAULT]`` section, enable support for the Networking service:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -160,6 +192,8 @@ Install and configure components
|
||||
use_neutron = True
|
||||
firewall_driver = nova.virt.firewall.NoopFirewallDriver
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
By default, Compute uses an internal firewall service. Since
|
||||
@@ -167,8 +201,11 @@ Install and configure components
|
||||
firewall service by using the
|
||||
``nova.virt.firewall.NoopFirewallDriver`` firewall driver.
|
||||
|
||||
.. endonly
|
||||
|
||||
* In the ``[vnc]`` section, enable and configure remote console access:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[vnc]
|
||||
@@ -178,6 +215,8 @@ Install and configure components
|
||||
vncserver_proxyclient_address = $my_ip
|
||||
novncproxy_base_url = http://controller:6080/vnc_auto.html
|
||||
|
||||
.. end
|
||||
|
||||
The server component listens on all IP addresses and the proxy
|
||||
component only listens on the management interface IP address of
|
||||
the compute node. The base URL indicates the location where you
|
||||
@@ -194,32 +233,45 @@ Install and configure components
|
||||
* In the ``[glance]`` section, configure the location of the
|
||||
Image service API:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[glance]
|
||||
...
|
||||
api_servers = http://controller:9292
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: obs
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/run/nova
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or ubuntu
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/lib/nova/tmp
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
.. todo:
|
||||
@@ -229,6 +281,8 @@ Install and configure components
|
||||
* Due to a packaging bug, remove the ``logdir`` option from the
|
||||
``[DEFAULT]`` section.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs or debian
|
||||
|
||||
3. Ensure the kernel module ``nbd`` is loaded.
|
||||
@@ -237,9 +291,13 @@ Install and configure components
|
||||
|
||||
# modprobe nbd
|
||||
|
||||
.. end
|
||||
|
||||
4. Ensure the module loads on every boot by adding ``nbd``
|
||||
to the ``/etc/modules-load.d/nbd.conf`` file.
|
||||
|
||||
.. endonly
|
||||
|
||||
Finalize installation
|
||||
---------------------
|
||||
|
||||
@@ -250,6 +308,8 @@ Finalize installation
|
||||
|
||||
$ egrep -c '(vmx|svm)' /proc/cpuinfo
|
||||
|
||||
.. end
|
||||
|
||||
If this command returns a value of ``one or greater``, your compute
|
||||
node supports hardware acceleration which typically requires no
|
||||
additional configuration.
|
||||
@@ -263,23 +323,33 @@ Finalize installation
|
||||
* Edit the ``[libvirt]`` section in the
|
||||
``/etc/nova/nova.conf`` file as follows:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[libvirt]
|
||||
...
|
||||
virt_type = qemu
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
* Edit the ``[libvirt]`` section in the
|
||||
``/etc/nova/nova-compute.conf`` file as follows:
|
||||
|
||||
.. path /etc/nova/nova-compute.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[libvirt]
|
||||
...
|
||||
virt_type = qemu
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
* Replace the ``nova-compute-kvm`` package with ``nova-compute-qemu``
|
||||
@@ -290,6 +360,10 @@ Finalize installation
|
||||
|
||||
# apt-get install nova-compute-qemu
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: obs or rdo
|
||||
|
||||
2. Start the Compute service including its dependencies and configure
|
||||
@@ -300,6 +374,10 @@ Finalize installation
|
||||
# systemctl enable libvirtd.service openstack-nova-compute.service
|
||||
# systemctl start libvirtd.service openstack-nova-compute.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
2. Restart the Compute service:
|
||||
@@ -307,3 +385,7 @@ Finalize installation
|
||||
.. code-block:: console
|
||||
|
||||
# service nova-compute restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -19,26 +19,32 @@ create databases, service credentials, and API endpoints.
|
||||
|
||||
$ mysql -u root -p
|
||||
|
||||
.. end
|
||||
|
||||
* Create the ``nova_api`` and ``nova`` databases:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
CREATE DATABASE nova_api;
|
||||
CREATE DATABASE nova;
|
||||
mysql> CREATE DATABASE nova_api;
|
||||
mysql> CREATE DATABASE nova;
|
||||
|
||||
.. end
|
||||
|
||||
* Grant proper access to the databases:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' \
|
||||
mysql> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' \
|
||||
IDENTIFIED BY 'NOVA_DBPASS';
|
||||
GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' \
|
||||
mysql> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' \
|
||||
IDENTIFIED BY 'NOVA_DBPASS';
|
||||
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' \
|
||||
mysql> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' \
|
||||
IDENTIFIED BY 'NOVA_DBPASS';
|
||||
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' \
|
||||
mysql> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' \
|
||||
IDENTIFIED BY 'NOVA_DBPASS';
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NOVA_DBPASS`` with a suitable password.
|
||||
|
||||
* Exit the database access client.
|
||||
@@ -50,6 +56,8 @@ create databases, service credentials, and API endpoints.
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. To create the service credentials, complete these steps:
|
||||
|
||||
* Create the ``nova`` user:
|
||||
@@ -58,6 +66,7 @@ create databases, service credentials, and API endpoints.
|
||||
|
||||
$ openstack user create --domain default \
|
||||
--password-prompt nova
|
||||
|
||||
User Password:
|
||||
Repeat User Password:
|
||||
+-----------+----------------------------------+
|
||||
@@ -69,12 +78,16 @@ create databases, service credentials, and API endpoints.
|
||||
| name | nova |
|
||||
+-----------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
* Add the ``admin`` role to the ``nova`` user:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack role add --project service --user nova admin
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This command provides no output.
|
||||
@@ -85,6 +98,7 @@ create databases, service credentials, and API endpoints.
|
||||
|
||||
$ openstack service create --name nova \
|
||||
--description "OpenStack Compute" compute
|
||||
|
||||
+-------------+----------------------------------+
|
||||
| Field | Value |
|
||||
+-------------+----------------------------------+
|
||||
@@ -95,12 +109,15 @@ create databases, service credentials, and API endpoints.
|
||||
| type | compute |
|
||||
+-------------+----------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
#. Create the Compute service API endpoints:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
compute public http://controller:8774/v2.1/%\(tenant_id\)s
|
||||
|
||||
+--------------+-------------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-------------------------------------------+
|
||||
@@ -117,6 +134,7 @@ create databases, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
compute internal http://controller:8774/v2.1/%\(tenant_id\)s
|
||||
|
||||
+--------------+-------------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-------------------------------------------+
|
||||
@@ -133,6 +151,7 @@ create databases, service credentials, and API endpoints.
|
||||
|
||||
$ openstack endpoint create --region RegionOne \
|
||||
compute admin http://controller:8774/v2.1/%\(tenant_id\)s
|
||||
|
||||
+--------------+-------------------------------------------+
|
||||
| Field | Value |
|
||||
+--------------+-------------------------------------------+
|
||||
@@ -147,6 +166,8 @@ create databases, service credentials, and API endpoints.
|
||||
| url | http://controller:8774/v2.1/%(tenant_id)s |
|
||||
+--------------+-------------------------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
Install and configure components
|
||||
--------------------------------
|
||||
|
||||
@@ -162,6 +183,10 @@ Install and configure components
|
||||
openstack-nova-conductor openstack-nova-consoleauth \
|
||||
openstack-nova-novncproxy iptables
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. Install the packages:
|
||||
@@ -172,6 +197,10 @@ Install and configure components
|
||||
openstack-nova-console openstack-nova-novncproxy \
|
||||
openstack-nova-scheduler
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
#. Install the packages:
|
||||
@@ -181,6 +210,10 @@ Install and configure components
|
||||
# apt-get install nova-api nova-conductor nova-consoleauth \
|
||||
nova-novncproxy nova-scheduler
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: debian
|
||||
|
||||
#. Install the packages:
|
||||
@@ -190,6 +223,8 @@ Install and configure components
|
||||
# apt-get install nova-api nova-conductor nova-consoleauth \
|
||||
nova-consoleproxy nova-scheduler
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
``nova-api-metadata`` is included in the ``nova-api`` package,
|
||||
@@ -204,21 +239,27 @@ Install and configure components
|
||||
You can also manually edit the ``/etc/default/nova-consoleproxy``
|
||||
file, and stop and start the console daemons.
|
||||
|
||||
.. endonly
|
||||
|
||||
2. Edit the ``/etc/nova/nova.conf`` file and
|
||||
complete the following actions:
|
||||
|
||||
* In the ``[DEFAULT]`` section, enable only the compute and metadata
|
||||
APIs:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
enabled_apis = osapi_compute,metadata
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[api_database]`` and ``[database]`` sections, configure
|
||||
database access:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[api_database]
|
||||
@@ -229,12 +270,15 @@ Install and configure components
|
||||
...
|
||||
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NOVA_DBPASS`` with the password you chose for
|
||||
the Compute databases.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections,
|
||||
configure ``RabbitMQ`` message queue access:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -247,12 +291,15 @@ Install and configure components
|
||||
rabbit_userid = openstack
|
||||
rabbit_password = RABBIT_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``RABBIT_PASS`` with the password you chose for the
|
||||
``openstack`` account in ``RabbitMQ``.
|
||||
|
||||
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections,
|
||||
configure Identity service access:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -271,6 +318,8 @@ Install and configure components
|
||||
username = nova
|
||||
password = NOVA_PASS
|
||||
|
||||
.. end
|
||||
|
||||
Replace ``NOVA_PASS`` with the password you chose for the
|
||||
``nova`` user in the Identity service.
|
||||
|
||||
@@ -282,12 +331,15 @@ Install and configure components
|
||||
* In the ``[DEFAULT]`` section, configure the ``my_ip`` option to
|
||||
use the management interface IP address of the controller node:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
my_ip = 10.0.0.11
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: debian
|
||||
|
||||
* The ``.config`` and ``.postinst`` maintainer scripts of the
|
||||
@@ -296,14 +348,20 @@ Install and configure components
|
||||
value will normally still be prompted, and you can check that it
|
||||
is correct in the nova.conf after ``nova-common`` is installed:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
my_ip = 10.0.0.11
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
* In the ``[DEFAULT]`` section, enable support for the Networking service:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
@@ -311,6 +369,8 @@ Install and configure components
|
||||
use_neutron = True
|
||||
firewall_driver = nova.virt.firewall.NoopFirewallDriver
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
By default, Compute uses an internal firewall driver. Since the
|
||||
@@ -321,6 +381,7 @@ Install and configure components
|
||||
* In the ``[vnc]`` section, configure the VNC proxy to use the management
|
||||
interface IP address of the controller node:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[vnc]
|
||||
@@ -328,45 +389,65 @@ Install and configure components
|
||||
vncserver_listen = $my_ip
|
||||
vncserver_proxyclient_address = $my_ip
|
||||
|
||||
.. end
|
||||
|
||||
* In the ``[glance]`` section, configure the location of the
|
||||
Image service API:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[glance]
|
||||
...
|
||||
api_servers = http://controller:9292
|
||||
|
||||
.. end
|
||||
|
||||
.. only:: obs
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/run/nova
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/lib/nova/tmp
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
* In the ``[oslo_concurrency]`` section, configure the lock path:
|
||||
|
||||
.. path /etc/nova/nova.conf
|
||||
.. code-block:: ini
|
||||
|
||||
[oslo_concurrency]
|
||||
...
|
||||
lock_path = /var/lib/nova/tmp
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
.. todo:
|
||||
@@ -376,6 +457,8 @@ Install and configure components
|
||||
* Due to a packaging bug, remove the ``logdir`` option from the
|
||||
``[DEFAULT]`` section.
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo or ubuntu or debian
|
||||
|
||||
3. Populate the Compute databases:
|
||||
@@ -385,10 +468,14 @@ Install and configure components
|
||||
# su -s /bin/sh -c "nova-manage api_db sync" nova
|
||||
# su -s /bin/sh -c "nova-manage db sync" nova
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
Ignore any deprecation messages in this output.
|
||||
|
||||
.. endonly
|
||||
|
||||
Finalize installation
|
||||
---------------------
|
||||
|
||||
@@ -406,6 +493,10 @@ Finalize installation
|
||||
openstack-nova-consoleauth.service openstack-nova-scheduler.service \
|
||||
openstack-nova-conductor.service openstack-nova-novncproxy.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
* Start the Compute services and configure them to start
|
||||
@@ -420,6 +511,10 @@ Finalize installation
|
||||
openstack-nova-consoleauth.service openstack-nova-scheduler.service \
|
||||
openstack-nova-conductor.service openstack-nova-novncproxy.service
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
* Restart the Compute services:
|
||||
@@ -431,3 +526,7 @@ Finalize installation
|
||||
# service nova-scheduler restart
|
||||
# service nova-conductor restart
|
||||
# service nova-novncproxy restart
|
||||
|
||||
.. end
|
||||
|
||||
.. endonly
|
||||
|
||||
@@ -14,12 +14,15 @@ Verify operation of the Compute service.
|
||||
|
||||
$ . admin-openrc
|
||||
|
||||
.. end
|
||||
|
||||
#. List service components to verify successful launch and
|
||||
registration of each process:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack compute service list
|
||||
|
||||
+----+--------------------+------------+----------+---------+-------+----------------------------+
|
||||
| Id | Binary | Host | Zone | Status | State | Updated At |
|
||||
+----+--------------------+------------+----------+---------+-------+----------------------------+
|
||||
@@ -29,6 +32,8 @@ Verify operation of the Compute service.
|
||||
| 4 | nova-compute | compute1 | nova | enabled | up | 2016-02-09T23:11:20.000000 |
|
||||
+----+--------------------+------------+----------+---------+-------+----------------------------+
|
||||
|
||||
.. end
|
||||
|
||||
.. note::
|
||||
|
||||
This output should indicate three service components enabled on
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
Edit the ``/etc/hosts`` file to contain the following:
|
||||
|
||||
.. path /etc/hosts
|
||||
.. code-block:: ini
|
||||
|
||||
# controller
|
||||
@@ -17,6 +18,8 @@ Edit the ``/etc/hosts`` file to contain the following:
|
||||
# object2
|
||||
10.0.0.52 object2
|
||||
|
||||
.. end
|
||||
|
||||
.. warning::
|
||||
|
||||
Some distributions add an extraneous entry in the ``/etc/hosts``
|
||||
|
||||
Reference in New Issue
Block a user