Virtual bare metal cluster management
Go to file
Mark Goddard 9111328e8a Use ansible_facts to reference facts
By default, Ansible injects a variable for every fact, prefixed with
ansible_. This can result in a large number of variables for each host,
which at scale can incur a performance penalty. Ansible provides a
configuration option [0] that can be set to False to prevent this
injection of facts. In this case, facts should be referenced via
ansible_facts.<fact>.

This change updates all references to Ansible facts within Tenks
from using individual fact variables to using the items in the
ansible_facts dictionary. This allows users to disable fact variable
injection in their Ansible configuration, which may provide some
performance improvement.

This change disables fact variable injection in the ansible
configuration used in CI, to catch any attempts to use the injected
variables.

[0] https://docs.ansible.com/ansible/latest/reference_appendices/config.html#inject-facts-as-vars

Change-Id: I4831769909c341c72bb178daf8df3309773a56ad
Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2022-02-23 18:17:43 +00:00
ansible Use ansible_facts to reference facts 2022-02-23 18:17:43 +00:00
doc Support UEFI boot mode 2022-02-08 10:52:28 +00:00
playbooks Use ansible_facts to reference facts 2022-02-23 18:17:43 +00:00
releasenotes Support UEFI boot mode 2022-02-08 10:52:28 +00:00
roles Use ansible_facts to reference facts 2022-02-23 18:17:43 +00:00
tenks Changes following becoming an official project 2018-12-07 18:26:04 +00:00
tests Fix invalid argument formatting in the exception message 2020-11-23 11:08:31 +08:00
zuul.d [CI] Optimise irrelevant files 2022-02-21 19:23:29 +01:00
.ansible-lint Use ansible_facts to reference facts 2022-02-23 18:17:43 +00:00
.gitignore Add skip list to ansible lint 2020-09-01 09:57:16 +02:00
.gitreview OpenDev Migration Patch 2019-04-19 19:35:44 +00:00
.stestr.conf Add stestr config file 2018-09-19 08:40:46 +00:00
LICENSE Initial commit 2018-08-17 11:38:20 +01:00
README.rst Replace git.openstack.org URLs with opendev.org URLs 2019-04-24 14:21:48 +02:00
requirements.txt Cleanup py27 support 2020-04-05 20:20:10 +02:00
requirements.yml Add basis for README 2018-08-23 13:04:48 +00:00
setup.cfg Test all supported python version 2021-11-25 09:10:21 +00:00
setup.py Cleanup py27 support 2020-04-05 20:20:10 +02:00
test-requirements.txt Add pep8 import order check 2020-04-21 16:26:52 +02:00
tox.ini Fix ansible lint 2021-03-24 10:34:36 +00:00

Tenks

image

Tenks is a utility that manages virtual bare metal clusters for development and testing purposes. It offers:

  • Declarative definition of clusters using Ansible's familiar YAML syntax
  • Automated creation and deletion of virtualised bare metal nodes across any number of hypervisors
  • In-built management of Open vSwitch bridges for physical networks
  • Registration of nodes and ports with OpenStack Ironic, and creation of OpenStack Nova flavors
  • Simple cluster reconfiguration and tear-down

To get started with Tenks, see the documentation (linked below).