break out general_config into config and topology

This change takes the overcloud_nodes variable and defines that
under config/nodes/foo.yml. This depend on the change
to quickstart-extras where a definition of topology (nodes)
will be created. Pass the topology in an explicit variable vs.
using extra_args.

The original configuration files in config/general_config/ will
continue to work but are now deprecated.
The featureset files that define standard set of feature to test are
also added, and should correspond to test configuration for jobs that
are typically found upstream

Change-Id: Id6dd3f71b33f76a0401fe8a84080fe80de0dbb69
Co-Authored-By: Gabriele Cerami <gcerami@redhat.com>
This commit is contained in:
Wes Hayutin 2017-01-25 18:00:11 -05:00
parent 06c0e5bc82
commit c04dc5937c
28 changed files with 564 additions and 231 deletions

View File

@ -110,6 +110,27 @@ developer mode would be::
The full set of developer mode instructions are available in :ref:`devmode`
Feature Configuration and Nodes
-------------------------------
In previous versions of triple-quickstart a config file was used to determine
not only the features that would be enabled in tripleo and openstack but also
the number of nodes to be used. For instance "config/general_config/ha.yml" would
configure pacemaker and ensure three controller nodes were provisioned. This type
of configuration is now deprecated but will still work through the Queens release.
The feature and node configuration have been seperated into two distinct
configuration files to allow users to explicity select the configuration known as
"feature sets" and the nodes to be provisioned. The feature set configuration
can be found under tripleo-quickstart/config/general_config/ and the node
configuration can be found under tripleo-quickstart/config/nodes/
A more in depth description of the feature sets can be found in the documentation
under :ref:`feature-configuration`
A more in depth description of how to configure nodes can be found in the
documentation under :ref:`node-configuration`
Working With Quickstart Extras
------------------------------

View File

@ -0,0 +1,13 @@
# general multinode job configuration
enable_vbmc: false
gating_repo_enabled: true
composable_services: false
deploy_composable_scenario: true
step_overcloud_image: false
step_glance_upload: true
step_register: false
hypervisor_wait: false
deployed_server: true
network_isolation: false
package_installs: true
non_root_user_setup: true

View File

@ -0,0 +1,53 @@
# Summary of the feature set.
# Deploy an Openstack environment with ssl undercloud, introspect, and use network isolation
# This enables TLS for the undercloud which will also make haproxy bind to the
# configured public-vip and admin-vip.
undercloud_generate_service_certificate: True
overcloud_templates_path: /usr/share/openstack-tripleo-heat-templates
# We don't need introspection in a virtual environment (because we are
# creating all the "hardware" we really know the necessary
# information).
step_introspect: true
# Tell tripleo about our environment.
network_isolation: true
network_isolation_type: "multiple-nics"
network_isolation_args: >-
-e {{ overcloud_templates_path }}/environments/network-isolation.yaml
-e {{ tripleo_root }}/tripleo-ci/test-environments/network-templates/network-environment.yaml
extra_args: >-
--ntp-server pool.ntp.org
test_ping: true
enable_pacemaker: true
run_tempest: false
# keep the doc gen settings at the bottom of the config file.
# options below direct automatic doc generation by tripleo-collect-logs
artcl_gen_docs: true
artcl_create_docs_payload:
included_deployment_scripts:
- undercloud-install
- overcloud-custom-tht-script
- overcloud-prep-flavors
- overcloud-prep-images
- overcloud-prep-network
- overcloud-deploy
- overcloud-deploy-post
- overcloud-validate
included_static_docs:
- env-setup-virt
table_of_contents:
- env-setup-virt
- undercloud-install
- overcloud-custom-tht-script
- overcloud-prep-flavors
- overcloud-prep-images
- overcloud-prep-network
- overcloud-deploy
- overcloud-deploy-post
- overcloud-validate

View File

@ -0,0 +1,114 @@
# Summary of the feature set.
# Deploy an HA openstack environment with IPV6, SSL enabled Overcloud
# We don't need introspection in a virtual environment (because we are
# creating all the "hardware" we really know the necessary
# information).
step_introspect: false
# Tell tripleo about our environment.
network_isolation: true
extra_args: >-
--ntp-server pool.ntp.org
test_ping: true
enable_pacemaker: true
tempest_config: false
run_tempest: false
overcloud_ipv6: true
ssl_overcloud: true
# TO-DO's
undercloud_ui: true # TODO
undercloud_validation: true # TODO
floating_ip_cidr: 10.0.0.0/24
external_network_cidr: 192.168.23.0/24
undercloud_networks:
external:
address: "{{ undercloud_external_network_cidr|nthhost(1) }}"
netmask: "{{ undercloud_external_network_cidr|ipaddr('netmask') }}"
address6: "{{ undercloud_external_network_cidr6|nthhost(1) }}"
device_type: ovs
type: OVSIntPort
ovs_bridge: br-ctlplane
network_environment_args:
ControlPlaneSubnetCidr: "{{ undercloud_network_cidr|ipaddr('prefix') }}"
ControlPlaneDefaultRoute: "{{ undercloud_network_cidr|nthhost(1) }}"
EC2MetadataIp: "{{ undercloud_network_cidr|nthhost(1) }}"
ExternalNetCidr: 2001:db8:fd00:1000::/64
ExternalAllocationPools: [{"start": "2001:db8:fd00:1000::10", "end": "2001:db8:fd00:1000:ffff:ffff:ffff:fffe"}]
ExternalInterfaceDefaultRoute: 2001:db8:fd00:1000::1
NeutronExternalNetworkBridge: "''"
InternalApiNetCidr: fd00:fd00:fd00:2000::/64
InternalApiAllocationPools: [{"start": "fd00:fd00:fd00:2000::10", "end": "fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe"}]
StorageNetCidr: fd00:fd00:fd00:3000::/64
StorageAllocationPools: [{"start": "fd00:fd00:fd00:3000::10", "end": "fd00:fd00:fd00:3000:ffff:ffff:ffff:fffe"}]
StorageMgmtNetCidr: fd00:fd00:fd00:4000::/64
StorageMgmtAllocationPools: [{"start": "fd00:fd00:fd00:4000::10", "end": "fd00:fd00:fd00:4000:ffff:ffff:ffff:fffe"}]
TenantNetCidr: 172.16.0.0/24
TenantAllocationPools: [{"start": "172.16.0.10", "end": "172.16.0.250"}]
DnsServers: [ '{{ external_network_cidr6|nthhost(1) }}' ]
networks:
- name: external
bridge: brext
forward_mode: nat
address: "{{ external_network_cidr|nthhost(1) }}"
netmask: "{{ external_network_cidr|ipaddr('netmask') }}"
dhcp_range:
- "{{ external_network_cidr|nthhost(10) }}"
- "{{ external_network_cidr|nthhost(50) }}"
nat_port_range:
- 1024
- 65535
- name: overcloud
bridge: brovc
- name: overcloud2
bridge: brovc2
- name: overcloud3
bridge: brovc3
- name: overcloud4
bridge: brovc4
- name: overcloud5
bridge: brovc5
- name: overcloud6
bridge: brovc6
# keep the doc gen settings at the bottom of the config file.
# options below direct automatic doc generation by tripleo-collect-logs
artcl_gen_docs: true
artcl_create_docs_payload:
included_deployment_scripts:
- undercloud-install
- overcloud-custom-tht-script
- overcloud-prep-flavors
- overcloud-prep-images
- overcloud-prep-network
- overcloud-deploy
- overcloud-deploy-post
- overcloud-validate
included_static_docs:
- env-setup-virt
table_of_contents:
- env-setup-virt
- undercloud-install
- overcloud-custom-tht-script
- overcloud-prep-flavors
- overcloud-prep-images
- overcloud-prep-network
- overcloud-deploy
- overcloud-deploy-post
- overcloud-validate

View File

@ -0,0 +1,5 @@
undercloud_generate_service_certificate: false
ssl_overcloud: false
undercloud_check_idempotency: true
undercloud_check_sanity: true

View File

@ -0,0 +1,9 @@
undercloud_generate_service_certificate: false
ssl_overcloud: false
test_ping: true
deploy_composable_scenario: false
composable_services: true
composable_scenario: multinode.yaml
# Use default test template
# validate_template: tenantvm-floatingip.yaml

View File

@ -0,0 +1,6 @@
undercloud_generate_service_certificate: false
enable_opstools_repo: true
test_ping: true
composable_scenario: scenario001-multinode.yaml
validate_template: scenario001-multinode.yaml

View File

@ -0,0 +1,5 @@
undercloud_generate_service_certificate: false
test_ping: true
composable_scenario: scenario002-multinode.yaml
validate_template: scenario002-multinode.yaml

View File

@ -0,0 +1,5 @@
undercloud_generate_service_certificate: false
test_ping: true
composable_scenario: scenario003-multinode.yaml
validate_template: scenario003-multinode.yaml

View File

@ -0,0 +1,5 @@
undercloud_generate_service_certificate: false
test_ping: true
composable_scenario: scenario004-multinode.yaml
validate_template: scenario004-multinode.yaml

View File

@ -0,0 +1,5 @@
undercloud_generate_service_certificate: false
test_ping: true
composable_scenario: scenario005-multinode.yaml
validate_template: scenario005-multinode.yaml

View File

@ -1,43 +1,9 @@
# Deploy an HA openstack environment.
#
# This will require (6144 * 4) == approx. 24GB for the overcloud
# nodes, plus another 8GB for the undercloud, for a total of around
# 32GB.
control_memory: 6144
compute_memory: 6144
undercloud_memory: 8192
# Giving the undercloud additional CPUs can greatly improve heat's
# performance (and result in a shorter deploy time).
undercloud_vcpu: 4
# Since HA has more machines, we set the cpu for controllers and
# compute nodes to 1
default_vcpu: 1
# Deploy an HA openstack environment with an IPA Server.
# This enables TLS for the undercloud which will also make haproxy bind to the
# configured public-vip and admin-vip.
undercloud_generate_service_certificate: True
# Create three controller nodes and one compute node.
overcloud_nodes:
- name: control_0
flavor: control
virtualbmc_port: 6230
- name: control_1
flavor: control
virtualbmc_port: 6231
- name: control_2
flavor: control
virtualbmc_port: 6232
- name: compute_0
flavor: compute
virtualbmc_port: 6233
# We don't need introspection in a virtual environment (because we are
# creating all the "hardware" we really know the necessary
# information).
@ -47,7 +13,6 @@ step_introspect: false
network_isolation: true
network_isolation_type: 'single-nic-vlans'
extra_args: >-
--control-scale 3
--ntp-server pool.ntp.org
test_ping: true
enable_pacemaker: true

View File

@ -1,28 +1,4 @@
# Deploy an HA openstack environment.
#
# This will require (6144 * 4) == approx. 24GB for the overcloud
# nodes, plus another 8GB for the undercloud, for a total of around
# 32GB.
control_memory: 6144
compute_memory: 6144
undercloud_memory: 8192
# Giving the undercloud additional CPUs can greatly improve heat's
# performance (and result in a shorter deploy time).
undercloud_vcpu: 4
# Create three controller nodes and one compute node.
overcloud_nodes:
- name: control_0
flavor: control
- name: control_1
flavor: control
- name: control_2
flavor: control
- name: compute_0
flavor: compute
# Deploy an HA openstack environment with IPV6.
# We don't need introspection in a virtual environment (because we are
# creating all the "hardware" we really know the necessary
@ -33,7 +9,6 @@ step_introspect: false
network_isolation: true
network_isolation_type: 'single-nic-vlans'
extra_args: >-
--control-scale 3
--ntp-server pool.ntp.org
test_ping: true
enable_pacemaker: true

View File

@ -3,16 +3,6 @@
# for this job, but test all defaults otherwise.
step_introspect: true
# Define a single controller node and a single compute node.
overcloud_nodes:
- name: control_0
flavor: control
virtualbmc_port: 6230
- name: compute_0
flavor: compute
virtualbmc_port: 6231
# Tell tripleo how we want things done.
extra_args: >-
--ntp-server pool.ntp.org

View File

@ -1,17 +1,7 @@
# TO DO, REMOVE THIS CONFIG IN FAVOR OF OVERRIDING THE ONE VARIABLE
# We set introspection to true and use only the minimal amount of nodes
# for this job, but test all defaults otherwise
step_introspect: true
# Define a single controller node and a single compute node.
overcloud_nodes:
- name: control_0
flavor: control
virtualbmc_port: 6230
- name: compute_0
flavor: compute
virtualbmc_port: 6231
network_isolation: false
# This enables TLS for the undercloud which will also make haproxy bind to the

View File

@ -1,43 +1,9 @@
# Deploy an HA openstack environment.
#
# This will require (6144 * 4) == approx. 24GB for the overcloud
# nodes, plus another 8GB for the undercloud, for a total of around
# 32GB.
control_memory: 6144
compute_memory: 6144
undercloud_memory: 8192
# Giving the undercloud additional CPUs can greatly improve heat's
# performance (and result in a shorter deploy time).
undercloud_vcpu: 4
# Since HA has more machines, we set the cpu for controllers and
# compute nodes to 1
default_vcpu: 1
# This enables TLS for the undercloud which will also make haproxy bind to the
# configured public-vip and admin-vip.
undercloud_generate_service_certificate: True
# Create three controller nodes and one compute node.
overcloud_nodes:
- name: control_0
flavor: control
virtualbmc_port: 6230
- name: control_1
flavor: control
virtualbmc_port: 6231
- name: control_2
flavor: control
virtualbmc_port: 6232
- name: compute_0
flavor: compute
virtualbmc_port: 6233
# We don't need introspection in a virtual environment (because we are
# creating all the "hardware" we really know the necessary
# information).
@ -47,7 +13,6 @@ step_introspect: false
network_isolation: true
network_isolation_type: 'single-nic-vlans'
extra_args: >-
--control-scale 3
--ntp-server pool.ntp.org
test_ping: true
enable_pacemaker: true

View File

@ -0,0 +1,25 @@
---
features:
- Configuration files in general_config were separated
into feature sets (to be specified with --config
argument )and nodes configuration (to be specified with
--nodes configuration)
Featureset files should contain only the list of flags
that enable features we want to test in the deployment,
the overcloud nodes configuration, and all that involves
their set up, should be put into nodes configuration
files.
The nodes file should follow the scheme
N<type>[_N<type>[_N<type>]...].yml
Where N is the number of nodes of a certain <type>,
<type> could be one of ctlr for controllers, comp for
compute nodes, ceph for ceph nodes, and so on.
It's advised to add a node_count variable to the nodes
configuration file
deprecations:
- All old configuration files are deprecated. Any new
configuration should put the topology part into nodes/
dir and the part that configures the features to be
tested into featureset files. For example, the old
minimal.yml file was split into no_netiso.yml and
1ctlr_1comp.yml

6
config/nodes/1ctlr.yml Normal file
View File

@ -0,0 +1,6 @@
# Define a single controller node
overcloud_nodes:
- name: control_0
flavor: control
node_count: 1

View File

@ -0,0 +1,9 @@
# Define a single controller node and a single compute node.
overcloud_nodes:
- name: control_0
flavor: control
virtualbmc_port: 6230
- name: compute_0
flavor: compute
virtualbmc_port: 6231

View File

@ -14,9 +14,8 @@ overcloud_nodes:
flavor: ceph
virtualbmc_port: 6232
# Tell tripleo how we want things done.
extra_args: >-
--ntp-server pool.ntp.org
# Tell tripleo which nodes to deploy.
topology: >-
--ceph-storage-scale 1
-e {{overcloud_templates_path}}/environments/storage-environment.yaml

View File

@ -0,0 +1,41 @@
# Deploy an HA openstack environment.
#
# This will require (6144 * 4) == approx. 24GB for the overcloud
# nodes, plus another 8GB for the undercloud, for a total of around
# 32GB.
control_memory: 6144
compute_memory: 6144
undercloud_memory: 8192
# Giving the undercloud additional CPUs can greatly improve heat's
# performance (and result in a shorter deploy time).
undercloud_vcpu: 4
# Since HA has more machines, we set the cpu for controllers and
# compute nodes to 1
default_vcpu: 1
node_count: 4
# Create three controller nodes and one compute node.
overcloud_nodes:
- name: control_0
flavor: control
virtualbmc_port: 6230
- name: control_1
flavor: control
virtualbmc_port: 6231
- name: control_2
flavor: control
virtualbmc_port: 6232
- name: compute_0
flavor: compute
virtualbmc_port: 6233
# Tell tripleo which nodes to deploy.
topology: >-
--control-scale 3

View File

@ -43,19 +43,8 @@ overcloud_nodes:
flavor: compute
virtualbmc_port: 6235
# We don't need introspection in a virtual environment (because we are
# creating all the "hardware" we really know the necessary
# information).
step_introspect: false
# Tell tripleo about our environment.
network_isolation: true
network_isolation_type: 'single-nic-vlans'
extra_args: >-
topology: >-
--compute-scale 3
--control-scale 3
--ntp-server pool.ntp.org
test_ping: true
enable_pacemaker: true
run_tempest: false

View File

@ -0,0 +1 @@
node_count: 4

View File

@ -11,79 +11,7 @@ You configure tripleo-quickstart by placing variable definitions in a
YAML file and passing that to ansible using the ``-e`` command line
option, like this::
ansible-playbook playbook.yml -e @myconfigfile.yml
Controlling resources
---------------------
These variables set the resources that will be assigned to a node by
default, unless overridden by a more specific variable:
- ``default_disk``
- ``default_memory``
- ``default_vcpu``
These variables set the resources assigned to the undercloud node:
- ``undercloud_disk``
- ``undercloud_memory`` (defaults to **12288**)
- ``undercloud_vcpu`` (defaults to **4**)
These variables set the resources assigned to controller nodes:
- ``control_disk``
- ``control_memory``
- ``control_vcpu``
These variables control the resources assigned to compute nodes:
- ``compute_disk``
- ``compute_memory``
- ``compute_vcpu``
These variables control the resources assigned to ceph storage nodes:
- ``ceph_disk``
- ``ceph_memory``
- ``ceph_vcpu``
There is another option ``extradevices`` that can be used to create three
additional blockdevices ``vdb``, ``vdc`` and ``vdd`` per node. By default it
is only enabled on the objectstorage node flavor.
Setting number and type of overcloud nodes
------------------------------------------
The ``overcloud_nodes`` variable can be used to change the number and
type of nodes deployed in your overcloud. The default
(``config/general_config/minimal.yml``) looks like this::
overcloud_nodes:
- name: control_0
flavor: control
- name: compute_0
flavor: compute
You can use your own config if you want to test a different setup. For
example::
overcloud_nodes:
- name: control_0
flavor: control
- name: control_1
flavor: control
- name: control_2
flavor: control
- name: compute_0
flavor: compute
- name: ceph_0
flavor: ceph
- name: swift_0
flavor: objectstorage
ansible-playbook playbook.yml -e @/path/myconfigfile.yml
Specifying custom heat templates
--------------------------------
@ -102,27 +30,6 @@ The ``overcloud_templates_branch`` variable can be used to specify the
branch that needs to be cloned from a specific repository. When this
variable is set, git will clone only the branch specified.
An example
----------
To create a minimal environment that would be unsuitable for deploying
anything real nova instances, you could place something like the
following in ``myconfigfile.yml``::
undercloud_memory: 8192
control_memory: 6000
compute_memory: 2048
overcloud_nodes:
- name: control_0
flavor: control
- name: compute_0
flavor: compute
And then pass that to the ``ansible-playbook`` command as described at
the beginning of this document.
Explicit Teardown
-----------------
@ -169,4 +76,4 @@ into the undercloud, so the system can use it.
Please note that you also need to define all the images you want to
fetch, using the ``images`` setting. You will need to define the name
of the image, the url where to get it, and the image type (qcow2, tar).
As a reference, please look at `http://git.openstack.org/cgit/openstack/tripleo-quickstart/tree/config/release/master-tripleo-ci.yml`
As a reference, please look at the `config <http://git.openstack.org/cgit/openstack/tripleo-quickstart/tree/config/release/master-tripleo-ci.yml>`_

View File

@ -0,0 +1,75 @@
.. _feature-configuration:
Feature Configuration
=====================
One can configure the Openstack features installed on either the undercloud
or overcloud by placing variable definitions in a YAML file and passing that
to quickstart using the ``-c`` command line option, like this::
quickstart.sh -c config/general_config/featureset001.yml
Each feature set can also deploy a customized list of Openstack services. These
services are defined by the tripleo-heat-templates used for the overcloud deployment.
A definition of the services can be found `here <https://github.com/openstack/tripleo-heat-templates/blob/master/README.rst#service-testing-matrix>`_
Below is a table with various features listed in each row and the features enabled
in each feature set configuration file in each column.
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| Feature | set001 | set002 | set003 | set004 | set005 | set006 | set007 | set008 | set009 |
+=================+========+========+========+========+========+========+========+========+========+
| ipv6 | | X | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| SSL UC | X | X | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| SSL OC | | X | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| net iso SN | X | X | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| net iso MN | | | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| net iso BOND | | | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| introspection | X | | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| undercloud idem | | | X | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| ping test | X | X | | | X | X | X | X | X |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| tempest | | | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| scenario001 | | | | | X | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| scenario002 | | | | | | X | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| scenario003 | | | | | | | X | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| scenario004 | | | | | | | | X | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| scenario005 | | | | | | | | | X |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| multinode-nonha | | | | X | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| | | | | | | | | | |
+-----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
Definition of Terms:
+--------------+-------------------------------------------------------------------+--+
| Acroynm | Definition | |
+==============+===================================================================+==+
| UC | Tripleo Undercloud | |
+--------------+-------------------------------------------------------------------+--+
| OC | Tripleo Overcloud | |
+--------------+-------------------------------------------------------------------+--+
| net iso SN | network isolation single network interface card | |
+--------------+-------------------------------------------------------------------+--+
| net iso MN | network isolation multiple network interface card | |
+--------------+-------------------------------------------------------------------+--+
| net iso BOND | network isolation bonded network interfaces | |
+--------------+-------------------------------------------------------------------+--+
| ping test | deploy test heat stack, ping and ssh tests launched test instance | |
+--------------+-------------------------------------------------------------------+--+
| idem | idempotency test | |
+--------------+-------------------------------------------------------------------+--+

View File

@ -0,0 +1,109 @@
.. _node-configuration:
Node Configuration
=============
You configure the overcloud nodes by placing variable definitions in a
YAML file and passing that to ansible using the ``-N`` command line
option, like this::
quickstart.sh -N config/nodes/1ctlr_1comp.yml
Setting number and type of overcloud nodes
------------------------------------------
The ``overcloud_nodes`` variable can be used to change the number and
type of nodes deployed in your overcloud. The default
(``config/general_config/minimal.yml``) looks like this::
overcloud_nodes:
- name: control_0
flavor: control
virtualbmc_port: 6230
- name: compute_0
flavor: compute
virtualbmc_port: 6231
You can use your own config if you want to test a different setup. For
example::
overcloud_nodes:
- name: control_0
flavor: control
virtualbmc_port: 6230
- name: control_1
flavor: control
virtualbmc_port: 6231
- name: control_2
flavor: control
virtualbmc_port: 6232
- name: compute_0
flavor: compute
- name: ceph_0
flavor: ceph
- name: swift_0
flavor: objectstorage
Controlling resources
---------------------
These variables set the resources that will be assigned to a node by
default, unless overridden by a more specific variable:
- ``default_disk``
- ``default_memory``
- ``default_vcpu``
These variables set the resources assigned to the undercloud node:
- ``undercloud_disk``
- ``undercloud_memory`` (defaults to **12288**)
- ``undercloud_vcpu`` (defaults to **4**)
These variables set the resources assigned to controller nodes:
- ``control_disk``
- ``control_memory``
- ``control_vcpu``
These variables control the resources assigned to compute nodes:
- ``compute_disk``
- ``compute_memory``
- ``compute_vcpu``
These variables control the resources assigned to ceph storage nodes:
- ``ceph_disk``
- ``ceph_memory``
- ``ceph_vcpu``
There is another option ``extradevices`` that can be used to create three
additional blockdevices ``vdb``, ``vdc`` and ``vdd`` per node. By default it
is only enabled on the objectstorage node flavor.
An example
----------
To create a minimal environment that would be unsuitable for deploying
anything real nova instances, you could place something like the
following in ``myconfigfile.yml``::
undercloud_memory: 8192
control_memory: 6000
compute_memory: 2048
overcloud_nodes:
- name: control_0
flavor: control
- name: compute_0
flavor: compute
And then pass that to the ``ansible-playbook`` command as described at
the beginning of this document.

View File

@ -172,6 +172,9 @@ usage () {
echo " specify the config file that contains the node"
echo " configuration, can be used only once"
echo " (default=config/general_config/minimal.yml)"
echo " -N, --nodes <file>"
echo " specify the number of nodes that should be created by"
echo " the provisioner. "
echo " -e, --extra-vars <key>=<value>"
echo " additional ansible variables, can be used multiple times"
echo " -w, --working-dir <dir>"
@ -263,6 +266,11 @@ while [ "x$1" != "x" ]; do
shift
;;
--nodes|-N)
OPT_NODES=$2
shift
;;
--clean|-X)
OPT_CLEAN=1
;;
@ -360,7 +368,45 @@ fi
# Set this default after option processing, because the default depends
# on another option.
: ${OPT_CONFIG:=$OOOQ_DIR/config/general_config/minimal.yml}
# Default general configuration
: ${OPT_CONFIG:=$OPT_WORKDIR/config/general_config/minimal.yml}
# Default Nodes
: ${OPT_NODES:=$OPT_WORKDIR/config/nodes/1ctlr_1comp.yml}
# allow the deprecated config files to work
OLD_CONFIG=""
if [[ "$OPT_CONFIG" =~ .*ha.yml ]]; then
OLD_CONFIG=$OPT_CONFIG
OPT_CONFIG=$OPT_WORKDIR/config/general_config/pacemaker.yml;
OPT_NODES=$OPT_WORKDIR/config/nodes/3ctlr_1comp.yml;
elif [[ "$OPT_CONFIG" =~ .*ceph.yml ]]; then
OLD_CONFIG=$OPT_CONFIG
OPT_CONFIG=$OPT_WORKDIR/config/general_config/minimal.yml;
OPT_NODES=$OPT_WORKDIR/config/nodes/1ctlr_1comp_1ceph.yml;
elif [[ "$OPT_CONFIG" =~ .*ha_big.yml ]]; then
OLD_CONFIG=$OPT_CONFIG
OPT_CONFIG=$OPT_WORKDIR/config/general_config/pacemaker.yml;
OPT_NODES=$OPT_WORKDIR/config/nodes/3ctlr_3comp.yml;
elif [[ "$OPT_CONFIG" =~ .*ha_ipa.yml ]]; then
OLD_CONFIG=$OPT_CONFIG
OPT_CONFIG=$OPT_WORKDIR/config/general_config/ipa.yml;
OPT_NODES=$OPT_WORKDIR/config/nodes/3ctlr_1comp.yml;
elif [[ "$OPT_CONFIG" =~ .*ha_ipv6.yml ]]; then
OLD_CONFIG=$OPT_CONFIG
OPT_CONFIG=$OPT_WORKDIR/config/general_config/ipv6.yml;
OPT_NODES=$OPT_WORKDIR/config/nodes/3ctlr_1comp.yml;
elif [[ "$OPT_CONFIG" =~ .*minimal_pacemaker.yml ]]; then
OLD_CONFIG=$OPT_CONFIG
OPT_CONFIG=$OPT_WORKDIR/config/general_config/pacemaker.yml;
fi
if [ "$OLD_CONFIG" != "" ]; then
echo "******************** PLEASE READ ****************************"
echo ""
echo "DEPRECATION NOTICE: $OLD_CONFIG has been deprecated"
echo ""
sleep 3;
fi
if [ "$OPT_INSTALL_DEPS" = 1 ]; then
echo "NOTICE: installing dependencies"
@ -436,6 +482,7 @@ fi
ansible-playbook -$VERBOSITY $OPT_WORKDIR/playbooks/$OPT_PLAYBOOK \
-e @$OPT_CONFIG \
-e @$OPT_NODES \
-e ansible_python_interpreter=/usr/bin/python \
-e @$OPT_WORKDIR/config/release/$OPT_RELEASE.yml \
-e local_working_dir=$OPT_WORKDIR \

View File

@ -30,8 +30,7 @@ data_files =
usr/local/share/tripleo-quickstart/library = library/*
usr/local/share/tripleo-quickstart/test_plugins = test_plugins/*
playbooks = playbooks/*
config/general_config = config/general_config/*
config/release = config/release/*
config/ = config/*
[wheel]
universal = 1