pre-deployment
==============

.. _pre-deployment_512e:

512e
----

Advanced Format 512e Support.

Detect whether the undercloud disks use Advanced Format. If they do, the overcloud images may fail to upload to Glance.


- **hosts**: undercloud
- **groups**: prep, pre-deployment
- **metadata**: 
- **parameters**: 
- **roles**: advanced-format-512e-support

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/advanced-format-512e-support/>`__.


.. _pre-deployment_ceilometerdb-size:

ceilometerdb-size
-----------------

Events Database Size Check.

The undercloud's events database can grow to a substantial size if event_time_to_live is set to a negative value (infinite limit).
This validation checks event_time_to_live and fails if the variable is set to a negative value or if it has no custom setting (their value is -1 by default).


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 

  - **event_ttl_check**: event_time_to_live

  - **panko_config_file**: /var/lib/config-data/puppet-generated/panko/etc/panko/panko.conf
- **roles**: ceilometerdb-size

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/ceilometerdb-size/>`__.


.. _pre-deployment_ceph-ansible-installed:

ceph-ansible-installed
----------------------

Check if ceph-ansible is installed on the undercloud.

Prints a message if ceph-ansible isn't installed


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 

  - **fail_without_ceph_ansible**: False
- **roles**: ceph

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/ceph/>`__.


.. _pre-deployment_collect-flavors-and-verify-profiles:

collect-flavors-and-verify-profiles
-----------------------------------

Collect and verify role flavors.

This validation checks the flavors assigned to roles exist and have the correct capabilities set.


- **hosts**: undercloud
- **groups**: pre-deployment, pre-upgrade
- **metadata**: 
- **parameters**: 
- **roles**: collect-flavors-and-verify-profiles

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/collect-flavors-and-verify-profiles/>`__.


.. _pre-deployment_default-node-count:

default-node-count
------------------

Verify hypervisor statistics.

This validation checks that the nodes and hypervisor statistics add up.


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 
- **roles**: default-node-count

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/default-node-count/>`__.


.. _pre-deployment_deployment-images:

deployment-images
-----------------

Verify existence of deployment images.

This validation checks that images bm-deploy-kernel and bm-deploy-ramdisk exist before deploying the overcloud, and that only one exists by that name.


- **hosts**: undercloud
- **groups**: pre-deployment, pre-upgrade
- **metadata**: 
- **parameters**: 

  - **deploy_ramdisk_name**: bm-deploy-ramdisk

  - **deploy_kernel_name**: bm-deploy-kernel
- **roles**: deployment-images

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/deployment-images/>`__.


.. _pre-deployment_dhcp-provisioning:

dhcp-provisioning
-----------------

DHCP on the Provisioning Network.

An unexpected DHCP server on the provisioning network can cause problems with deploying the Ironic nodes.
This validation checks for DHCP responses on the undercloud's provisioning interface (eth1 by default) and fails if there are any.


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 
- **roles**: dhcp-validations

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/dhcp-validations/>`__.


.. _pre-deployment_dns:

dns
---

Verify DNS.

Verify that the DNS resolution works


- **hosts**: undercloud, overcloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 

  - **server_to_lookup**: example.com
- **roles**: dns

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/dns/>`__.


.. _pre-deployment_ironic-boot-configuration:

ironic-boot-configuration
-------------------------

Check Ironic boot configuration.

Check if baremetal boot configuration is correct.


- **hosts**: undercloud
- **groups**: pre-deployment, pre-upgrade
- **metadata**: 
- **parameters**: 

  - **deploy_ramdisk_name**: bm-deploy-ramdisk

  - **deploy_kernel_name**: bm-deploy-kernel
- **roles**: ironic-boot-configuration

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/ironic-boot-configuration/>`__.


.. _pre-deployment_network-environment:

network-environment
-------------------

Validate the Heat environment file for network configuration.

This validates the network environment and nic-config files that specify the overcloud network configuration and are stored in the current plan's Swift container.
The deployers are expected to write these files themselves as described in the Network Isolation guide:
http://tripleo.org/advanced_deployment/network_isolation.html


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 

  - **plan_env_path**: plan-environment.yaml

  - **ip_pools_path**: environments/ips-from-pool-all.yaml

  - **network_environment_path**: environments/network-environment.yaml
- **roles**: network-environment

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/network-environment/>`__.


.. _pre-deployment_node-disks:

node-disks
----------

Check node disk configuration.

Check node disk numbers and sizes and whether root device hints are set.


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 

  - **ironic_conf_file**: /var/lib/config-data/puppet-generated/ironic/etc/ironic/ironic.conf
- **roles**: node-disks

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/node-disks/>`__.


.. _pre-deployment_switch-vlans:

switch-vlans
------------

Compare switch port VLANs to VLANs in nic config.

LLDP data received during introspection contains the configured VLANs for each switch port attached to the nodes interfaces.  Compare the VLAN IDs set on the switch port to those configured in nic config files. Since the mapping of roles to nodes isn't known prior to deployment, this check can only check VLANs across all switch ports, not on a particular switch port.


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 

  - **ironic_inspector_conf_file**: /var/lib/config-data/puppet-generated/ironic_inspector/etc/ironic-inspector/inspector.conf

  - **network_environment_path**: environments/network-environment.yaml
- **roles**: switch-vlans

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/switch-vlans/>`__.


.. _pre-deployment_undercloud-debug:

undercloud-debug
----------------

Undercloud Services Debug Check.

The undercloud's openstack services should _not_ have debug enabled. This will check if debug is enabled on undercloud services. If debug is enabled, the root filesystem can fill up quickly, and is not a good thing.


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 

  - **debug_check**: True
- **roles**: undercloud-debug

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/undercloud-debug/>`__.


.. _pre-deployment_undercloud-heat-purge-deleted:

undercloud-heat-purge-deleted
-----------------------------

Verify heat-manage purge_deleted is enabled in crontab.

Without a purge_deleted crontab enabled, the heat database can grow very large.  This validation checks that the purge_deleted crontab has been set up.


- **hosts**: undercloud
- **groups**: pre-upgrade, pre-deployment
- **metadata**: 
- **parameters**: 

  - **cron_check**: heat-manage purge_deleted
- **roles**: undercloud-heat-purge-deleted

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/undercloud-heat-purge-deleted/>`__.


.. _pre-deployment_undercloud-process-count:

undercloud-process-count
------------------------

Check the number of OpenStack processes on undercloud.

The default settings for OpenStack is to run one process (heat-engine, keystone, etc.) per CPU core. On a machine with a lot of cores this is both unnecessary and can consume a significant amount of RAM, leading to crashes due to OOMKiller.


- **hosts**: undercloud
- **groups**: pre-deployment
- **metadata**: 
- **parameters**: 

  - **max_process_count**: 8
- **roles**: undercloud-process-count

`View source code for the role <http://git.openstack.org/cgit/openstack/tripleo-validations/tree/roles/undercloud-process-count/>`__.

