<commit_before>.. _production-environment-config:

========================================================
Appendix B: Example production environment configuration
========================================================

Introduction
~~~~~~~~~~~~

The production environment is a minimal set of components to deploy a working
OpenStack-Ansible environment for production purposes.

The environment has the following characteristics:

* 3 control plane hosts
* 2 compute hosts
* 1 storage host
* 1 log aggregation host
* 2 network agent hosts
* Each host multiple Network Interface Cards (NIC) configured as
  bonded pairs.
* The full compute kit will be installed with Telemetry (ceilometer) included,
  with NFS configured as a storage back-end for nova, glance, and
  cinder.

.. image:: figures/arch-layout-production.png
   :width: 100%

Network configuration
~~~~~~~~~~~~~~~~~~~~~

.. literalinclude:: ../../../etc/network/interfaces.d/openstack_interface.cfg.example

Environment configuration
~~~~~~~~~~~~~~~~~~~~~~~~~

The ``/etc/openstack_deploy/openstack_user_config.yml`` configuration file
sets the hosts available in the groups. This designates the services that
runs on them.

.. literalinclude:: ../../../etc/openstack_deploy/openstack_user_config.yml.example
   :start-after: # limitations under the License.

<commit_msg>[DOCS] Applies edits to the OSA install guide appendix B<commit_after>.. _production-environment-config:

========================================================
Appendix B: Example production environment configuration
========================================================

A production environment contains the minimal set of components needed to
deploy a working OpenStack-Ansible (OSA) environment for production purposes.

A production environment has the following characteristics:

* Three infrastructure (control plane) hosts
* Two compute hosts
* One storage host
* One log aggregation host
* Two network agent hosts
* Multiple Network Interface Cards (NIC) configured as bonded pairs for each
  host
* Full compute kit with the Telemetry service (ceilometer) included,
  with NFS configured as a storage back end for the Compute (nova), Image
  (glance), and Block Storage (cinder) services

.. image:: figures/arch-layout-production.png
   :width: 100%

Network configuration
~~~~~~~~~~~~~~~~~~~~~

.. literalinclude:: ../../../etc/network/interfaces.d/openstack_interface.cfg.example

Environment configuration
~~~~~~~~~~~~~~~~~~~~~~~~~

The ``/etc/openstack_deploy/openstack_user_config.yml`` configuration file
defines which hosts run the containers and services deployed by OSA. For
example, hosts listed in the ``shared-infra_hosts`` section run containers
for many of the shared services that your OpenStack environment requires.
Following is an example of the
``/etc/openstack_deploy/openstack_user_config.yml`` configuration file for a
production environment.

.. literalinclude:: ../../../etc/openstack_deploy/openstack_user_config.yml.example
   :start-after: # limitations under the License.


{'fraction_non_alphanumeric': 0.17462393721386527, 'fraction_numerical': 0.0035971223021582736, 'mean_word_length': 5.346473029045643, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1779106', 'n_tokens_mistral': 758, 'n_tokens_neox': 702, 'n_words': 290}