mirror of
https://github.com/clearlinux/clear-linux-documentation.git
synced 2026-08-24 08:48:15 +00:00
This commit provides the documentation for the OpenStack Swift implementation with the clear-config-management tool.
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
.. _installing_openstack:
|
||||
|
||||
Installing OpenStack
|
||||
####################
|
||||
Installing OpenStack*
|
||||
#####################
|
||||
|
||||
This section details an OpenStack* installation that uses
|
||||
This section details an OpenStack installation that uses
|
||||
bundles available for Clear Linux* OS for Intel® Architecture.
|
||||
|
||||
The sample configuration files that are included will likely
|
||||
@@ -26,18 +26,18 @@ components:
|
||||
- Neutron
|
||||
- Dashboard (In identity node)
|
||||
- Heat
|
||||
- Swift
|
||||
|
||||
Note:
|
||||
-----
|
||||
|
||||
Below you will find the reference to componets supported on ClearLinux* but
|
||||
its support in Clear Config Management is still pending of development:
|
||||
Below you will find the reference to componets supported on Clear Linux OS for Intel Architecture, but
|
||||
its support in Clear Config Management is still pending development:
|
||||
|
||||
.. csv-table:: "Supported Components on ClearLinux*, but unsupported by Clear Config Management"
|
||||
:header: "Component", "Bundles", "OpenStack* official documentation"
|
||||
:widths: 20, 70, 100
|
||||
:widths: 20, 70, 100
|
||||
|
||||
"Swift", "openstack-object-storage and openstack-block-storage-controller", "http://docs.openstack.org/developer/swift/"
|
||||
"Cinder", "openstack-block-storage and openstack-block-storage-controller", "http://docs.openstack.org/developer/cinder/"
|
||||
"Ceilometer", "openstack-telemetry", "http://docs.openstack.org/developer/ceilometer/"
|
||||
|
||||
@@ -45,7 +45,7 @@ its support in Clear Config Management is still pending of development:
|
||||
Prerequisites
|
||||
=============
|
||||
|
||||
Before the installer can set up your cloud environment, these requirements
|
||||
Before the installer can set up your cloud environment, these prerequisites
|
||||
should be completed (if they aren't already):
|
||||
|
||||
#. Create a pair of SSH keys.
|
||||
@@ -65,7 +65,7 @@ should be completed (if they aren't already):
|
||||
Using the Installer
|
||||
===================
|
||||
|
||||
This step presumes a Clear Linux* machine as the ansible host.
|
||||
This step presumes a machine running Clear Linux OS for Intel Architecture as the ansible host.
|
||||
|
||||
|
||||
Install the bundle
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.. _openstack_conf_vars_list:
|
||||
|
||||
Variables for OpenStack Deployment
|
||||
##################################
|
||||
Variables for OpenStack* Deployment
|
||||
###################################
|
||||
|
||||
This installer provides a variety of configurations you can set through
|
||||
variables; below you will find a reference of the components supported
|
||||
@@ -29,6 +29,13 @@ Required Variables
|
||||
"*(Heat)* **heat_user_password**", "Password for heat user"
|
||||
"*(Heat)* **heat_database_password**", "Password for heat database"
|
||||
"*(Heat)* **heat_domain**", "The heat domain that contains projects and users for stacks"
|
||||
"*(Swift)* **swift_user_password**", "Password for 'swift' user"
|
||||
"*(Swift)* **swift_database_password**", "Password for 'swift' database"
|
||||
"*(Swift)* **swift_replica_count**", "Replica number for each object. IMPORTANT: This number must be lower than the sum of all the storage devices among all storage nodes. It can be changed later."
|
||||
"*(Swift)* **swift_hash_path_suffix**", "Suffix for the object path name"
|
||||
"*(Swift)* **swift_hash_path_prefix**", "Prefix for the object path name"
|
||||
"*(Swift)* **swift_storage_device_path**", "The path of the storage devices"
|
||||
"*(Swift)* **swift_storage_devices**", "A list of the storage devices dedicated to swift deployment. For more information, see :ref:`openstack_swift_deployment_scenarios`"
|
||||
|
||||
Optional Variables
|
||||
==================
|
||||
@@ -44,6 +51,8 @@ Optional Variables
|
||||
"*(Nova)* **nova_public_interface_name**: unset", "Public interface of Neutron machines, if is not set, it will take the default interface reported by **ip route**"
|
||||
"*(Nova)* **nova_virt_type**: qemu", "Virtualization type (qemu | kvm), if this is not set, then the playbook will try to guess it"
|
||||
"*(Neutron)* **os_tuning_params**: net.ipv4.ip_forward: 1, net.ipv4.conf.default.rp_filter: 0, net.ipv4.conf.all.rp_filter: 0, net.bridge.bridge-nf-call-iptables: 1, net.bridge.bridge-nf-call-ip6tables: 1", "syctl values needed by neutron when using openvswitch deployment scenario"
|
||||
"*(Swift)* **swift_public_interface_name**, "Public interface of storage nodes, also known as the storage network interface name; If is not set, it will take the default interface reported by **ip route**"
|
||||
|
||||
|
||||
Note:
|
||||
-----
|
||||
|
||||
@@ -31,7 +31,7 @@ Below you will find the description of each group in the `hosts` file.
|
||||
|
||||
.. csv-table:: "Inventory File Groups"
|
||||
:header: "Group", "Components", "Comments"
|
||||
:widths: 40, 40, 300
|
||||
:widths: 40, 40, 300
|
||||
|
||||
"[dbservers]", "MariaDB", ""
|
||||
"[messaging_servers]", "RabbitMQ", ""
|
||||
@@ -41,9 +41,11 @@ Below you will find the description of each group in the `hosts` file.
|
||||
"[openstack_compute]", "Nova", "Accepts multiple entries to have multiple compute nodes. You can add more entries and re-run the installer to add them to your environment."
|
||||
"[openstack_networking]", "Neutron", ""
|
||||
"[openstack_orchestration]", "Heat", ""
|
||||
"[openstack_object_storage_controller]", "Swift", "The Swift storage controller. It runs the swift proxy server and the memcache server"
|
||||
"[openstack_object_storage]", "Swift", "The Swift Storage nodes. Accepts multiple entries to have multiple storage nodes"
|
||||
|
||||
|
||||
Important Notes
|
||||
Important notes
|
||||
---------------
|
||||
|
||||
* To omit any role, do not add an entry under its group section.
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
.. _openstack_swift_deployment_scenarios:
|
||||
|
||||
OpenStack* Swift* Deployment Scenarios
|
||||
######################################
|
||||
|
||||
You can install OpenStack Swift using clear-config-management through two
|
||||
possible scenarios.
|
||||
|
||||
- **Scenario #1:** All the storage nodes are identical, with the same number of storage devices with the same names.
|
||||
|
||||
- **Scenario #2:** The storage setup is heterogeneous. The list of storage devices must be provided for each storage node individually.
|
||||
|
||||
|
||||
Scenario #1: Identical storage nodes scenario
|
||||
=============================================
|
||||
|
||||
To set up this scenario, the ``swift_storage_devices`` variable needs to be
|
||||
defined in ``../group_vars/all`` as follows:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
...
|
||||
swift_storage_device_path: /dev/
|
||||
swift_storage_devices:
|
||||
- sda
|
||||
- sdb
|
||||
...
|
||||
|
||||
Scenario #2: Different storage nodes scenario
|
||||
=============================================
|
||||
|
||||
With this setup, specific information about each storage node has to be provided.
|
||||
|
||||
First, in the root of your Ansible* directory setup, create a new directory called ``host_vars``.
|
||||
Inside ``host_vars``, for each storage node, create a new file with the name of the
|
||||
storage node's hostname or IP. In each file, provide the list of the storage
|
||||
devices.
|
||||
|
||||
The Ansible directory setup should look similar to the following directory tree:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
openstack/
|
||||
├── group_vars
|
||||
│ └── all
|
||||
├── hosts
|
||||
├── host_vars
|
||||
│ ├── storage-one
|
||||
│ └── storage-two
|
||||
├── openstack_deployment.yml
|
||||
└── README.md
|
||||
|
||||
And the ``storage-one`` and ``storage-two`` storage node files should look similar to this:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
---
|
||||
devices:
|
||||
- sdb
|
||||
- sdc
|
||||
- sdd
|
||||
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
---
|
||||
devices:
|
||||
- vdb
|
||||
- vdc
|
||||
Reference in New Issue
Block a user