
#!/bin/sh
# File	: cdot_create_intercluster_lifs.sh
# By	: Maarten.deBoer@Atos.net, 221206
# Subject	: Script to create NetApp cDOT InterCluster LIFs for at NL-FSOD
PGM=`basename $0|cut -d\. -f1` 
VER="0.1"
SSH="/usr/bin/ssh -n"

CLUSTER="nlnaf103"
PORTA="a108a"
PORTB="a108b"
NODE1="nlnaf103-09"
NODE2="nlnaf103-10"
PORT1="e0c"
PORT2="e0e"
VLAN="1530"
BRO_DOMAIN="fg-108-1530"
#nlnaf103-09_ic1=10.217.255.178
#nlnaf103-09_ic2=10.217.255.179
#nlnaf103-10_ic1=10.217.255.180
#nlnaf103-10_ic2=10.217.255.181
IPADDR1="10.217.255.178"
IPADDR2="10.217.255.179"
IPADDR3="10.217.255.180"
IPADDR4="10.217.255.181"
NETMASK="255.255.255.192"

echo "`date` ${PGM} v${VER} started."|tee -a ${LOG}

echo "  1. Creating InterFaceGroups"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp create -node ${NODE1} -ifgrp ${PORTA} -distr-func port -mode multimode"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp create -node ${NODE1} -ifgrp ${PORTB} -distr-func port -mode multimode"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp create -node ${NODE2} -ifgrp ${PORTA} -distr-func port -mode multimode"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp create -node ${NODE2} -ifgrp ${PORTB} -distr-func port -mode multimode"|tee -a ${LOG}

${SSH} ${CLUSTER} "ifgrp show -node ${NODE1}"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp show -node ${NODE2}"|tee -a ${LOG}


echo "  2. Removing ports from Default (broadcast)domain"|tee -a ${LOG}

${SSH} ${CLUSTER} "network port broadcast-domain remove-ports -broadcast-domain Default -ports ${NODE1}:${PORT1}"|tee -a ${LOG}
${SSH} ${CLUSTER} "network port broadcast-domain remove-ports -broadcast-domain Default -ports ${NODE1}:${PORT2}"|tee -a ${LOG}
${SSH} ${CLUSTER} "network port broadcast-domain remove-ports -broadcast-domain Default -ports ${NODE2}:${PORT1}"|tee -a ${LOG}
${SSH} ${CLUSTER} "network port broadcast-domain remove-ports -broadcast-domain Default -ports ${NODE2}:${PORT2}"|tee -a ${LOG}

echo "  3. Adding ports to (broadcast)domain"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp add-port -node ${NODE1} -ifgrp ${PORTA} -port ${PORT1}"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp add-port -node ${NODE1} -ifgrp ${PORTB} -port ${PORT2}"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp add-port -node ${NODE2} -ifgrp ${PORTA} -port ${PORT1}"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp add-port -node ${NODE2} -ifgrp ${PORTB} -port ${PORT2}"|tee -a ${LOG}

${SSH} ${CLUSTER} "ifgrp show -node ${NODE1}"|tee -a ${LOG}
${SSH} ${CLUSTER} "ifgrp show -node ${NODE2}"|tee -a ${LOG}


echo "  4. Adding VLAN (${VLAN}) to interface-ports"|tee -a ${LOG}
${SSH} ${CLUSTER} "vlan create -node ${NODE1} -vlan-name ${PORTA}-${VLAN}"|tee -a ${LOG}
${SSH} ${CLUSTER} "vlan create -node ${NODE1} -vlan-name ${PORTB}-${VLAN}"|tee -a ${LOG}
${SSH} ${CLUSTER} "vlan create -node ${NODE2} -vlan-name ${PORTA}-${VLAN}"|tee -a ${LOG}
${SSH} ${CLUSTER} "vlan create -node ${NODE2} -vlan-name ${PORTB}-${VLAN}"|tee -a ${LOG}
${SSH} ${CLUSTER} "vlan show -node ${NODE1}"|tee -a ${LOG}
${SSH} ${CLUSTER} "vlan show -node ${NODE2}"|tee -a ${LOG}


echo "  5. Creating & adding ports to Broadcast Domain (${BRO_DOMAIN})"|tee -a ${LOG}
${SSH} ${CLUSTER} "broadcast-domain create -broadcast-domain ${BRO_DOMAIN} -mtu 1500 -ports ${NODE1}:${PORTA}-${VLAN}"|tee -a ${LOG}
${SSH} ${CLUSTER} "broadcast-domain add-ports -broadcast-domain ${BRO_DOMAIN} -ports ${NODE1}:${PORTB}-${VLAN}"|tee -a ${LOG}
${SSH} ${CLUSTER} "broadcast-domain add-ports -broadcast-domain ${BRO_DOMAIN} -ports ${NODE2}:${PORTA}-${VLAN}"|tee -a ${LOG}
${SSH} ${CLUSTER} "broadcast-domain add-ports -broadcast-domain ${BRO_DOMAIN} -ports ${NODE2}:${PORTB}-${VLAN}"|tee -a ${LOG}
 
${SSH} ${CLUSTER} "broadcast-domain show -broadcast-domain ${BRO_DOMAIN}"|tee -a ${LOG}


echo "  6. Configuring IP-addresses to the IC interfaces"|tee -a ${LOG}




${SSH} ${CLUSTER} "network interface create -lif ${NODE1}_ic1 -vserver ${CLUSTER} -role intercluster -address ${IPADDR1} -netmask ${NETMASK} -status-admin up -failover-policy local-only -firewall-policy intercluster -auto-revert true -failover-group ${BRO_DOMAIN} -home-node ${NODE1} -home-port ${PORTB}-${VLAN}"|tee -a ${LOG}

${SSH} ${CLUSTER} "network interface create -lif ${NODE1}_ic2 -vserver ${CLUSTER} -role intercluster -address ${IPADDR2} -netmask ${NETMASK} -status-admin up -failover-policy local-only -firewall-policy intercluster -auto-revert true -failover-group ${BRO_DOMAIN} -home-node ${NODE1} -home-port ${PORTB}-${VLAN}"|tee -a ${LOG}

${SSH} ${CLUSTER} "network interface create -lif ${NODE2}_ic1 -vserver ${CLUSTER} -role intercluster -address ${IPADDR3} -netmask ${NETMASK} -status-admin up -failover-policy local-only -firewall-policy intercluster -auto-revert true -failover-group ${BRO_DOMAIN} -home-node ${NODE2} -home-port ${PORTA}-${VLAN}"|tee -a ${LOG}

${SSH} ${CLUSTER} "network interface create -lif ${NODE2}_ic2 -vserver ${CLUSTER} -role intercluster -address ${IPADDR4} -netmask ${NETMASK} -status-admin up -failover-policy local-only -firewall-policy intercluster -auto-revert true -failover-group ${BRO_DOMAIN} -home-node ${NODE2} -home-port ${PORTB}-${VLAN}"|tee -a ${LOG}

${SSH} ${CLUSTER} "network interface show *ic*"|tee -a ${LOG}

echo "`date` ${PGM} v${VER} finished."|tee -a ${LOG}
exit 0

