meta data for this page
  •  

Tömeges VLAN interfész generáló szkript

ovm_create_clan_interfaces.sh
#!/bin/bash
#A konfig fajl strukturaja:
#OVS    Szulo_interface VLAN_ID IP_cim  Netmask
 
LOGFILE="ovm_create_vlan_interfaces.log"
 
. ovm_functions.sh
kulcs_ellenorzes
 
[[ -e $1 ]] || { echo "Add meg a konfig fajlt parameterkent."; exit 1; }
while read LINE; do
        OVS_NAME=$(echo $LINE | cut -d' ' -f 1)
        IFACE_NAME=$(echo $LINE | cut -d' ' -f 2)
        VLAN=$(echo $LINE | cut -d' ' -f 3)
        IPADDR=$(echo $LINE | cut -d' ' -f 4)
        NETMASK=$(echo $LINE | cut -d' ' -f 5)
        IFACE_ID=$(ovm_cli list bondport | grep $OVS_NAME | grep $IFACE_NAME | grep -oP '(?<=id:)[^ ]+(?= )')
        echo -e "$yel$(date '+%Y.%m.%d %H:%M') | ${IFACE_NAME}.${VLAN} letrehozasa a(z) $OVS_NAME szerver $IFACE_NAME interfeszen:$end" | tee -a $LOGFILE
        VLAN_IFACE_ID=$(ovm_cli "create VlanInterface vlanId=${VLAN} mtu=1500 name=${IFACE_NAME}.${VLAN} on BondPort id=${IFACE_ID}" | tee /tmp/ovm_create_vlan_interfaces.tmp | grep -oP '(?<=id:)[^ ]+(?= )')
        RC=$?
        cat /tmp/ovm_create_vlan_interfaces.tmp | tee -a $LOGFILE
        if [[ $RC -eq 0 ]]; then
                echo "$yel$(date '+%Y.%m.%d %H:%M') | ${IFACE}.${VLAN} IP beallitas:$end" | tee -a $LOGFILE
                ovm_cli embeddedCreate VlanInterface id=${VLAN_IFACE_ID} ipAddressConfig ipAddressConfigType=STATIC ipAddress=$IPADDR ipNetmask=$NETMASK | tee /tmp/ovm_create_vlan_interfaces.tmp
                RC2=$?
                cat /tmp/ovm_create_vlan_interfaces.tmp | tee -a $LOGFILE
                if [[ $RC2 -eq 0 ]]; then
                        echo "$grn$(date '+%Y.%m.%d %H:%M') | Sikerult!$end" | tee -a $LOGFILE
                else
                        echo "$red$(date '+%Y.%m.%d %H:%M') | IP cim beallitas nem sikerült!$end" | tee -a $LOGFILE
                fi
        else
                echo "$red$(date '+%Y.%m.%d %H:%M') | Valami nem sikerült!$end" | tee -a $LOGFILE
        fi
        echo | tee >> $LOGFILE
done <<< "`cat $1 | grep -v '^#' | sed 's/[[:space:]]\+/ /g' | tr -s '[:blank:]'`"
sed -i -e 's/\x1b\[[0-9;]*m//g' -e 's/^M//g'  $LOGFILE