Fixed reboot not working
This commit is contained in:
@@ -31,6 +31,8 @@ load_config() {
|
||||
MGMT_IFACE="${MGMT_IFACE:-}"
|
||||
MGMT_ADDRESS="${MGMT_ADDRESS:-}"
|
||||
MGMT_GATEWAY="${MGMT_GATEWAY:-}"
|
||||
DNS_NAMESERVERS="${DNS_NAMESERVERS:-}"
|
||||
DNS_SEARCH_DOMAINS="${DNS_SEARCH_DOMAINS:-}"
|
||||
}
|
||||
|
||||
validate_config() {
|
||||
@@ -45,17 +47,23 @@ validate_config() {
|
||||
fail "MGMT_ADDRESS must include a CIDR prefix, example: 10.0.0.13/24"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -n "$DNS_NAMESERVERS" ]; then
|
||||
for ns in $DNS_NAMESERVERS; do
|
||||
case "$ns" in
|
||||
10.96.0.10)
|
||||
fail "DNS_NAMESERVERS must not contain cluster DNS service IP (10.96.0.10)"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
check_prereqs() {
|
||||
# only the special one, coreutils should not be checked
|
||||
need_cmd ip
|
||||
need_cmd hostname
|
||||
need_cmd grep
|
||||
need_cmd awk
|
||||
need_cmd cut
|
||||
need_cmd mkdir
|
||||
need_cmd printf
|
||||
need_cmd cat
|
||||
}
|
||||
|
||||
configure_mgmt_interface() {
|
||||
@@ -123,16 +131,59 @@ net.ipv4.ip_forward = 1
|
||||
EOF
|
||||
}
|
||||
|
||||
configure_dns() {
|
||||
local tmpfile
|
||||
local ns_count=0
|
||||
|
||||
if [ -z "$DNS_NAMESERVERS" ]; then
|
||||
log "DNS_NAMESERVERS not set; leaving /etc/resolv.conf unchanged"
|
||||
return
|
||||
fi
|
||||
|
||||
mkdir -p /etc
|
||||
tmpfile="/etc/resolv.conf.monok8s.tmp"
|
||||
: > "$tmpfile"
|
||||
|
||||
if [ -n "$DNS_SEARCH_DOMAINS" ]; then
|
||||
printf 'search %s\n' "$DNS_SEARCH_DOMAINS" >> "$tmpfile"
|
||||
fi
|
||||
|
||||
for ns in $DNS_NAMESERVERS; do
|
||||
printf 'nameserver %s\n' "$ns" >> "$tmpfile"
|
||||
ns_count=$((ns_count + 1))
|
||||
done
|
||||
|
||||
[ "$ns_count" -gt 0 ] || fail "DNS_NAMESERVERS is set but no valid nameservers were parsed"
|
||||
|
||||
printf 'options timeout:2 attempts:3\n' >> "$tmpfile"
|
||||
|
||||
mv "$tmpfile" /etc/resolv.conf
|
||||
log "configured /etc/resolv.conf from DNS_NAMESERVERS"
|
||||
}
|
||||
|
||||
print_summary() {
|
||||
log "node configuration applied"
|
||||
log "hostname: $HOSTNAME"
|
||||
log "interface: $MGMT_IFACE"
|
||||
log "address: $MGMT_ADDRESS"
|
||||
|
||||
if [ -n "${MGMT_GATEWAY:-}" ]; then
|
||||
log "gateway: $MGMT_GATEWAY"
|
||||
else
|
||||
log "gateway: <not set>"
|
||||
fi
|
||||
|
||||
if [ -n "${DNS_NAMESERVERS:-}" ]; then
|
||||
log "dns nameservers: $DNS_NAMESERVERS"
|
||||
else
|
||||
log "dns nameservers: <unchanged>"
|
||||
fi
|
||||
|
||||
if [ -n "${DNS_SEARCH_DOMAINS:-}" ]; then
|
||||
log "dns search: $DNS_SEARCH_DOMAINS"
|
||||
else
|
||||
log "dns search: <not set>"
|
||||
fi
|
||||
}
|
||||
|
||||
main() {
|
||||
@@ -142,8 +193,9 @@ main() {
|
||||
|
||||
ensure_ip_forward
|
||||
configure_mgmt_interface
|
||||
configure_dns
|
||||
set_hostname_if_needed
|
||||
print_summary
|
||||
}
|
||||
|
||||
main "$@"
|
||||
main "$@"
|
||||
|
||||
Reference in New Issue
Block a user