FQDN validation
Adds optional validation to ensure FQDN set by Nova matches /etc/hosts as created by overcloud heat configuration. Consistent FQDN requires the nova parameter [Default]/dhcp_domain to match the CloudDomain tht parameter. This validation is disabled by default. Change-Id: Ib5689acae66baf63ecccbc3b1c0b96684781b863
This commit is contained in:
parent
596c1674b7
commit
bae2d11393
@ -10,6 +10,10 @@ parameters:
|
||||
default: ''
|
||||
description: A string containing a space separated list of IP addresses used to ping test each available network interface.
|
||||
type: string
|
||||
ValidateFqdn:
|
||||
default: false
|
||||
description: Optional validation to ensure FQDN as set by Nova matches the name set in /etc/hosts.
|
||||
type: boolean
|
||||
|
||||
resources:
|
||||
AllNodesValidationsImpl:
|
||||
@ -19,6 +23,8 @@ resources:
|
||||
inputs:
|
||||
- name: ping_test_ips
|
||||
default: {get_param: PingTestIps}
|
||||
- name: validate_fqdn
|
||||
default: {get_param: ValidateFqdn}
|
||||
config: {get_file: ./validation-scripts/all-nodes.sh}
|
||||
|
||||
outputs:
|
||||
|
@ -67,5 +67,23 @@ function ping_default_gateways() {
|
||||
echo "SUCCESS"
|
||||
}
|
||||
|
||||
# Verify the FQDN from the nova/ironic deployment matches
|
||||
# FQDN in the heat templates.
|
||||
function fqdn_check() {
|
||||
HOSTNAME=$(hostname)
|
||||
SHORT_NAME=$(hostname -s)
|
||||
FQDN_FROM_HOSTS=$(awk '$3 == "'${SHORT_NAME}'"{print $2}' /etc/hosts)
|
||||
echo -n "Checking hostname vs /etc/hosts entry..."
|
||||
if [[ $HOSTNAME != $FQDN_FROM_HOSTS ]]; then
|
||||
echo "FAILURE"
|
||||
echo -e "System hostname: ${HOSTNAME}\nEntry from /etc/hosts: ${FQDN_FROM_HOSTS}\n"
|
||||
exit 1
|
||||
fi
|
||||
echo "SUCCESS"
|
||||
}
|
||||
|
||||
ping_controller_ips "$ping_test_ips"
|
||||
ping_default_gateways
|
||||
if [[ $validate_fqdn == "True" ]];then
|
||||
fqdn_check
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user