MT#9249 Add more defaults and boot options for network.yml on Carrier

Change-Id: I990cfb4b53786e4a534fbb64c4629a6de2214a82
changes/47/1347/5
Alexander Lutay 10 years ago
parent fbfcb7f088
commit 354bd2cb46

@ -32,6 +32,9 @@ DEFAULT_IP1=192.168.255.251
DEFAULT_IP2=192.168.255.252 DEFAULT_IP2=192.168.255.252
DEFAULT_INTERNAL_NETMASK=255.255.255.248 DEFAULT_INTERNAL_NETMASK=255.255.255.248
DEFAULT_MCASTADDR=226.94.1.1 DEFAULT_MCASTADDR=226.94.1.1
DEFAULT_EXT_IP=192.168.52.114
DEFAULT_EXT_NETMASK=255.255.255.0
DEFAULT_EXT_GW=192.168.52.1
TARGET=/mnt TARGET=/mnt
PRO_EDITION=false PRO_EDITION=false
CE_EDITION=false CE_EDITION=false
@ -66,6 +69,13 @@ DPL_MYSQL_REPLICATION=true
GRML_PXE_IMAGES_PATH="/lib/live/mount/medium" GRML_PXE_IMAGES_PATH="/lib/live/mount/medium"
PXE_IMAGES_PATH="/tmp/grml_pxe" PXE_IMAGES_PATH="/tmp/grml_pxe"
FILL_APPROX_CACHE=false FILL_APPROX_CACHE=false
VLAN_BOOT_INT=2
VLAN_SSH_EXT=300
VLAN_WEB_EXT=1718
VLAN_SIP_EXT=1719
VLAN_SIP_INT=1720
VLAN_HA_INT=1721
VLAN_RTP_EXT=1722
# if TARGET_DISK environment variable is set accept it # if TARGET_DISK environment variable is set accept it
if [ -n "$TARGET_DISK" ] ; then if [ -n "$TARGET_DISK" ] ; then
@ -471,6 +481,10 @@ if checkBootParam ngcpnetmask ; then
INTERNAL_NETMASK=$(getBootParam ngcpnetmask) INTERNAL_NETMASK=$(getBootParam ngcpnetmask)
fi fi
if checkBootParam ngcpextnetmask ; then
EXTERNAL_NETMASK=$(getBootParam ngcpextnetmask)
fi
if checkBootParam ngcpeaddr ; then if checkBootParam ngcpeaddr ; then
EADDR=$(getBootParam ngcpeaddr) EADDR=$(getBootParam ngcpeaddr)
fi fi
@ -553,6 +567,34 @@ fi
if checkBootParam ngcpfillcache ; then if checkBootParam ngcpfillcache ; then
FILL_APPROX_CACHE=true FILL_APPROX_CACHE=true
fi fi
if checkBootParam ngcpvlanbootint ; then
VLAN_BOOT_INT=$(getBootParam ngcpvlanbootint)
fi
if checkBootParam ngcpvlansshext ; then
VLAN_SSH_EXT=$(getBootParam ngcpvlansshext)
fi
if checkBootParam ngcpvlanwebext ; then
VLAN_WEB_EXT=$(getBootParam ngcpvlanwebext)
fi
if checkBootParam ngcpvlansipext ; then
VLAN_SIP_EXT=$(getBootParam ngcpvlansipext)
fi
if checkBootParam ngcpvlansipint ; then
VLAN_SIP_INT=$(getBootParam ngcpvlansipint)
fi
if checkBootParam ngcpvlanhaint ; then
VLAN_HA_INT=$(getBootParam ngcpvlanhaint)
fi
if checkBootParam ngcpvlanrtpext ; then
VLAN_RTP_EXT=$(getBootParam ngcpvlanrtpext)
fi
## }}} ## }}}
## interactive mode {{{ ## interactive mode {{{
@ -627,6 +669,7 @@ for param in $* ; do
*ngcpip1=*) IP1=$(echo $param | sed 's/ngcpip1=//');; *ngcpip1=*) IP1=$(echo $param | sed 's/ngcpip1=//');;
*ngcpip2=*) IP2=$(echo $param | sed 's/ngcpip2=//');; *ngcpip2=*) IP2=$(echo $param | sed 's/ngcpip2=//');;
*ngcpnetmask=*) INTERNAL_NETMASK=$(echo $param | sed 's/ngcpnetmask=//');; *ngcpnetmask=*) INTERNAL_NETMASK=$(echo $param | sed 's/ngcpnetmask=//');;
*ngcpextnetmask=*) EXTERNAL_NETMASK=$(echo $param | sed 's/ngcpextnetmask=//');;
*ngcpmcast=*) MCASTADDR=$(echo $param | sed 's/ngcpmcast=//');; *ngcpmcast=*) MCASTADDR=$(echo $param | sed 's/ngcpmcast=//');;
*ngcpcrole=*) CARRIER_EDITION=true; CROLE=$(echo $param | sed 's/ngcpcrole=//');; *ngcpcrole=*) CARRIER_EDITION=true; CROLE=$(echo $param | sed 's/ngcpcrole=//');;
*ngcpnw.dhcp*) DHCP=true;; *ngcpnw.dhcp*) DHCP=true;;
@ -639,6 +682,13 @@ for param in $* ; do
*lowperformance*) ADJUST_FOR_LOW_PERFORMANCE=true;; *lowperformance*) ADJUST_FOR_LOW_PERFORMANCE=true;;
*enablevmservices*) ENABLE_VM_SERVICES=true;; *enablevmservices*) ENABLE_VM_SERVICES=true;;
*ngcpfillcache*) FILL_APPROX_CACHE=true;; *ngcpfillcache*) FILL_APPROX_CACHE=true;;
*ngcpvlanbootint*) VLAN_BOOT_INT=$(echo $param | sed 's/ngcpvlanbootint=//');;
*ngcpvlansshext*) VLAN_SSH_EXT=$(echo $param | sed 's/ngcpvlansshext=//');;
*ngcpvlanwebext*) VLAN_WEB_EXT=$(echo $param | sed 's/ngcpvlanwebext=//');;
*ngcpvlansipext*) VLAN_SIP_EXT=$(echo $param | sed 's/ngcpvlansipext=//');;
*ngcpvlansipint*) VLAN_SIP_INT=$(echo $param | sed 's/ngcpvlansipint=//');;
*ngcpvlanhaint*) VLAN_HA_INT=$(echo $param | sed 's/ngcpvlanhaint=//');;
*ngcpvlanrtpext*) VLAN_RTP_EXT=$(echo $param | sed 's/ngcpvlanrtpext=//');;
esac esac
shift shift
done done
@ -695,6 +745,7 @@ if checkBootParam ip ; then
declare -A IP_ARR declare -A IP_ARR
if loadNfsIpArray IP_ARR $(getBootParam ip) ; then if loadNfsIpArray IP_ARR $(getBootParam ip) ; then
INSTALL_DEV=${IP_ARR[device]} INSTALL_DEV=${IP_ARR[device]}
EXT_GW=${IP_ARR[gw-ip]}
fi fi
fi fi
@ -740,11 +791,17 @@ if "$PRO_EDITION" ; then
IP2=$(awk '/sp2/ { print $1 }' /tmp/hosts) || IP2=$DEFAULT_IP2 IP2=$(awk '/sp2/ { print $1 }' /tmp/hosts) || IP2=$DEFAULT_IP2
if [ -z "$INTERNAL_NETMASK" ]; then if [ -z "$INTERNAL_NETMASK" ]; then
wget --timeout=30 -O "/tmp/interfaces" "${MANAGEMENT_IP}:3000/nwconfig/${TARGET_HOSTNAME}" wget --timeout=30 -O "/tmp/interfaces" "http://${MANAGEMENT_IP}:3000/nwconfig/${TARGET_HOSTNAME}"
INTERNAL_NETMASK=$(grep "$INTERNAL_DEV inet" -A2 /tmp/interfaces | awk '/netmask/ { print $2 }') INTERNAL_NETMASK=$(grep "$INTERNAL_DEV inet" -A2 /tmp/interfaces | awk '/netmask/ { print $2 }')
fi fi
if [ -z "$EXTERNAL_NETMASK" ]; then
wget --timeout=30 -O "/tmp/interfaces" "http://${MANAGEMENT_IP}:3000/nwconfig/${TARGET_HOSTNAME}"
EXTERNAL_NETMASK=$(grep "$EXTERNAL_DEV inet" -A2 /tmp/interfaces | awk '/netmask/ { print $2 }')
fi
fi fi
[ -n "$EXT_GW" ] || EXT_GW=$DEFAULT_EXT_GW
[ -n "$IP1" ] || IP1=$DEFAULT_IP1 [ -n "$IP1" ] || IP1=$DEFAULT_IP1
[ -n "$IP2" ] || IP2=$DEFAULT_IP2 [ -n "$IP2" ] || IP2=$DEFAULT_IP2
case "$ROLE" in case "$ROLE" in
@ -752,13 +809,20 @@ if "$PRO_EDITION" ; then
sp2) INTERNAL_IP=$IP2 ;; sp2) INTERNAL_IP=$IP2 ;;
esac esac
[ -n "$INTERNAL_NETMASK" ] || INTERNAL_NETMASK=$DEFAULT_INTERNAL_NETMASK [ -n "$INTERNAL_NETMASK" ] || INTERNAL_NETMASK=$DEFAULT_INTERNAL_NETMASK
[ -n "$EXTERNAL_NETMASK" ] || EXTERNAL_NETMASK=$DEFAULT_EXT_NETMASK
[ -n "$MCASTADDR" ] || MCASTADDR=$DEFAULT_MCASTADDR [ -n "$MCASTADDR" ] || MCASTADDR=$DEFAULT_MCASTADDR
logit "ha_int sp1: $IP1 sp2: $IP2 netmask: $INTERNAL_NETMASK" logit "ha_int sp1: $IP1 sp2: $IP2 netmask: $INTERNAL_NETMASK"
fi fi
[ -n "$EIFACE" ] || EIFACE=$INSTALL_DEV [ -n "$EIFACE" ] || EIFACE=$INSTALL_DEV
[ -n "$EADDR" ] || EADDR=$INSTALL_IP
if "$CARRIER_EDITION" ; then
# The first Carrier node is booted via DHCP, while requires static HW config on reboot
[ -n "$EADDR" ] || EADDR=$DEFAULT_EXT_IP
else
[ -n "$EADDR" ] || EADDR=$INSTALL_IP
fi
if "$CE_EDITION" ; then if "$CE_EDITION" ; then
case "$SP_VERSION" in case "$SP_VERSION" in
@ -1401,12 +1465,32 @@ get_network_devices () {
gen_installer_config () { gen_installer_config () {
mkdir -p "${TARGET}/etc/ngcp-installer/" mkdir -p "${TARGET}/etc/ngcp-installer/"
# We are installing Carrier using DHCP but configure network.yml on static IPs
# as a result we cannot use "ip route show dev $DEFAULT_INSTALL_DEV"
if "$CARRIER_EDITION" ; then
if [ -n "$EXT_GW" ]; then
GW="$EXT_GW"
else
echo "Last resort, guesting gateway for external IP as first IP in EADDR"
GW=$(echo $EADDR | awk -F. '{print $1"."$2"."$3".1"}')
fi
else
GW="$(ip route show dev $DEFAULT_INSTALL_DEV | awk '/^default via/ {print $3}')"
fi
if "$CARRIER_EDITION" ; then if "$CARRIER_EDITION" ; then
cat > ${TARGET}/etc/ngcp-installer/config_deploy.inc << EOF cat > ${TARGET}/etc/ngcp-installer/config_deploy.inc << EOF
CROLE="${CROLE}" CROLE="${CROLE}"
PXE_IMAGES_PATH="${PXE_IMAGES_PATH}" PXE_IMAGES_PATH="${PXE_IMAGES_PATH}"
MANAGEMENT_IP="${MANAGEMENT_IP}" MANAGEMENT_IP="${MANAGEMENT_IP}"
FILL_APPROX_CACHE="${FILL_APPROX_CACHE}" FILL_APPROX_CACHE="${FILL_APPROX_CACHE}"
VLAN_BOOT_INT="${VLAN_BOOT_INT}"
VLAN_SSH_EXT="${VLAN_SSH_EXT}"
VLAN_WEB_EXT="${VLAN_WEB_EXT}"
VLAN_SIP_EXT="${VLAN_SIP_EXT}"
VLAN_SIP_INT="${VLAN_SIP_INT}"
VLAN_HA_INT="${VLAN_HA_INT}"
VLAN_RTP_EXT="${VLAN_RTP_EXT}"
EOF EOF
fi fi
@ -1423,10 +1507,15 @@ DPL_MYSQL_REPLICATION="${DPL_MYSQL_REPLICATION}"
TARGET_HOSTNAME="${TARGET_HOSTNAME}" TARGET_HOSTNAME="${TARGET_HOSTNAME}"
DEFAULT_INSTALL_DEV="${DEFAULT_INSTALL_DEV}" DEFAULT_INSTALL_DEV="${DEFAULT_INSTALL_DEV}"
INTERNAL_DEV="${INTERNAL_DEV}" INTERNAL_DEV="${INTERNAL_DEV}"
GW="$(ip route show dev $DEFAULT_INSTALL_DEV | awk '/^default via/ {print $3}')" GW="${GW}"
EXTERNAL_DEV="${EXTERNAL_DEV}" EXTERNAL_DEV="${EXTERNAL_DEV}"
NETWORK_DEVICES="${NETWORK_DEVICES}" NETWORK_DEVICES="${NETWORK_DEVICES}"
DEFAULT_INTERNAL_NETMASK="${DEFAULT_INTERNAL_NETMASK}" DEFAULT_INTERNAL_NETMASK="${DEFAULT_INTERNAL_NETMASK}"
# I would like to delete ${DEFAULT_INTERNAL_NETMASK} and use ${INTERNAL_NETMASK} into installer,
# Lets test we have INTERNAL_NETMASK==DEFAULT_INTERNAL_NETMASK for CE/PRO/Carrier (in installer)
# and switch code to INTERNAL_NETMASK then.
INTERNAL_NETMASK="${INTERNAL_NETMASK}"
EXTERNAL_NETMASK="${EXTERNAL_NETMASK}"
RETRIEVE_MGMT_CONFIG="${RETRIEVE_MGMT_CONFIG}" RETRIEVE_MGMT_CONFIG="${RETRIEVE_MGMT_CONFIG}"
EOF EOF
fi fi

Loading…
Cancel
Save