Dlink config backup: различия между версиями
Материал из noname.com.ua
Перейти к навигацииПерейти к поискуSirmax (обсуждение | вклад) |
Sirmax (обсуждение | вклад) |
||
| Строка 55: | Строка 55: | ||
1.3.6.1.4.1.171.12.1.2.1.1.8.3 i 3 |
1.3.6.1.4.1.171.12.1.2.1.1.8.3 i 3 |
||
| + | </PRE> |
||
| + | ==Скрипт mass-backup== |
||
| + | У меня получился такой скриптик |
||
| + | <PRE> |
||
| + | #!/bin/bash |
||
| + | |||
| + | MYSQL=`which mysql` |
||
| + | MYSQL_CONNECT_INFO="-u my_database -pPASSWORD USERNAME --skip-column-names -e" |
||
| + | |||
| + | SNMPSET=` which snmpset` |
||
| + | TFTP_SERVER_IP='172.16.0.1' |
||
| + | |||
| + | DATE=`date +%d%m%Y` |
||
| + | TAR=`which tar` |
||
| + | |||
| + | $MYSQL $MYSQL_CONNECT_INFO "SELECT IP,DESCRIPTION,rw_community from switch where is_backup=1" | while read LINE |
||
| + | do |
||
| + | IP=`echo $LINE | awk '{print $1}'` |
||
| + | DESCRIPTION=`echo $LINE | awk '{print $2}'` |
||
| + | RW_COMMUNITY=`echo $LINE | awk '{print $3}'` |
||
| + | FILE_NAME=`echo $DESCRIPTION | sed -e 's/\./_/' | sed -e 's/ /_/'` |
||
| + | touch /tftproot/$FILE_NAME'_'${DATE}_DLINK_CFG |
||
| + | chmod 777 /tftproot/$FILE_NAME'_'${DATE}_DLINK_CFG |
||
| + | $SNMPSET -v2c -c $RW_COMMUNITY $IP 1.3.6.1.4.1.171.12.1.2.1.1.3.3 a $TFTP_SERVER_IP \ |
||
| + | 1.3.6.1.4.1.171.12.1.2.1.1.4.3 i 2 \ |
||
| + | 1.3.6.1.4.1.171.12.1.2.1.1.5.3 s $FILE_NAME'_'${DATE}_DLINK_CFG \ |
||
| + | 1.3.6.1.4.1.171.12.1.2.1.1.7.3 i 2 \ |
||
| + | 1.3.6.1.4.1.171.12.1.2.1.1.8.3 i 3 |
||
| + | done |
||
| + | |||
| + | # Выждать завершение всех процессов |
||
| + | sleep 5 |
||
| + | |||
| + | |||
| + | cd /tftproot |
||
| + | $TAR -cf dlink-cfg-$DATE.tar *_DLINK_CFG |
||
</PRE> |
</PRE> |
||
Версия 14:24, 9 марта 2009
Резервное копирование конфигов
Загрузка конфигурационного файла на TFTP-сервер
1. На коммутаторе создать view и community
create snmp view test 1 view_type included create snmp community my_community view test read_write
2. Задать IP-адрес TFTP-сервера:
snmpset -v2c -c my_community 172.29.14.122 1.3.6.1.4.1.171.12.1.2.1.1.3.3 a 172.29.14.1 SNMPv2-SMI::enterprises.171.12.1.2.1.1.3.3 = IpAddress: 172.29.14.1
3 - (последняя цифра OIDа) - Конфигурационный файл (config file) 172.29.14.1 - IP-адрес TFTP-сервера
3. Выбрать тип передачи файла:
snmpset -v2c -c my_comunity 172.29.14.122 1.3.6.1.4.1.171.12.1.2.1.1.4.3 i 2 SNMPv2-SMI::enterprises.171.12.1.2.1.1.4.3 = INTEGER: 2
2 - Загрузка по сети (1 и 3 по-видимому смысла не имеют, 1 - other, 3 - out-of-band load )
4. Задать имя конфигурационного файла:
snmpset -v2c -c my_community 172.29.14.122 1.3.6.1.4.1.171.12.1.2.1.1.5.3 s DES3526.cfg SNMPv2-SMI::enterprises.171.12.1.2.1.1.5.3 = STRING: "DES3526.cfg"
DES3526.cfg - Имя файла
5. Выбрать либо загрузку файла на коммутатор, либо на TFTP-сервер (download или upload):
snmpset -v2c -c my_community 172.29.14.122 1.3.6.1.4.1.171.12.1.2.1.1.7.3 i 2 SNMPv2-SMI::enterprises.171.12.1.2.1.1.7.3 = INTEGER: 2
2 - Upload
6. Начать передачу файла:
snmpset -v2c -c my_community 172.29.14.122 1.3.6.1.4.1.171.12.1.2.1.1.8.3 i 3
3 -> Начать операцию
Можно все комманды выполнить одним snmpset (подсказал voron ) (это позволит сэконосить в скриптах когда нужно сохранить конфиги со многих коммутаторов)
snmpset -v2c -c my_community 172.29.14.122 1.3.6.1.4.1.171.12.1.2.1.1.3.3 a 172.29.14.1 \
1.3.6.1.4.1.171.12.1.2.1.1.4.3 i 2 \
1.3.6.1.4.1.171.12.1.2.1.1.5.3 s DES3526.cfg \
1.3.6.1.4.1.171.12.1.2.1.1.7.3 i 2 \
1.3.6.1.4.1.171.12.1.2.1.1.8.3 i 3
Скрипт mass-backup
У меня получился такой скриптик
#!/bin/bash
MYSQL=`which mysql`
MYSQL_CONNECT_INFO="-u my_database -pPASSWORD USERNAME --skip-column-names -e"
SNMPSET=` which snmpset`
TFTP_SERVER_IP='172.16.0.1'
DATE=`date +%d%m%Y`
TAR=`which tar`
$MYSQL $MYSQL_CONNECT_INFO "SELECT IP,DESCRIPTION,rw_community from switch where is_backup=1" | while read LINE
do
IP=`echo $LINE | awk '{print $1}'`
DESCRIPTION=`echo $LINE | awk '{print $2}'`
RW_COMMUNITY=`echo $LINE | awk '{print $3}'`
FILE_NAME=`echo $DESCRIPTION | sed -e 's/\./_/' | sed -e 's/ /_/'`
touch /tftproot/$FILE_NAME'_'${DATE}_DLINK_CFG
chmod 777 /tftproot/$FILE_NAME'_'${DATE}_DLINK_CFG
$SNMPSET -v2c -c $RW_COMMUNITY $IP 1.3.6.1.4.1.171.12.1.2.1.1.3.3 a $TFTP_SERVER_IP \
1.3.6.1.4.1.171.12.1.2.1.1.4.3 i 2 \
1.3.6.1.4.1.171.12.1.2.1.1.5.3 s $FILE_NAME'_'${DATE}_DLINK_CFG \
1.3.6.1.4.1.171.12.1.2.1.1.7.3 i 2 \
1.3.6.1.4.1.171.12.1.2.1.1.8.3 i 3
done
# Выждать завершение всех процессов
sleep 5
cd /tftproot
$TAR -cf dlink-cfg-$DATE.tar *_DLINK_CFG