Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Возвращаясь к краеугольной теме любого сисадмина к бекапам, вынужден заметить что бекап требуется не только для серверов но и для коммутаторов(switch) и аппаратных маршрутизаторов. Вылетают флешки с записанным конфигом свитча редко, но во первых это все таки случается, во вторых, имеет место еще и ошибка сисадмина, а если она подкреплена излишней самоуверенностью в виде мгновенного write memory, то бекап становится единственным спасением.


 Новые статьи на сайте:


 

Hilik     Настроим все

 http://www.hilik.org.ua/

 

Скрипт backup конфигурации Cisco Catalyst. Настройка rsh на свитче.

 

Возвращаясь к краеугольной теме любого сисадмина к бекапам, вынужден заметить что бекап требуется не только для серверов но и для коммутаторов(switch) и аппаратных маршрутизаторов. Вылетают флешки с записанным конфигом свитча редко, но во первых это все таки случается, во вторых, имеет место еще и ошибка сисадмина, а если она подкреплена излишней самоуверенностью в виде мгновенного write memory, то бекап становится единственным спасением.
Для бекапа с помощью моего скрипта потребуется в первую очередь настроить Catalyst на выполнение удаленных команд с помощью rsh, для этого надо выполнить такие настройки:

configure terminal
no ip rcmd domain-lookup
ip rcmd rsh-enable
ip rcmd remote-host hilik 192.168.1.1 root enable

первая команда no ip rcmd domain-lookup запрещает проверку адреса хоста с которого вы соединяетесь со свитчем через DNS.
вторая ip rcmd rsh-enable – включает сам сервис rsh, а именно удаленную командную строку.
И наконец ip rcmd remote-host hilik 192.168.1.1 root enable – тут описано, что пользователь hilik(этот пользователь должен существовать на свитче), будет соединяться с хоста 192.168.1.1, на удаленном хосте он будет под rootом и enable означает, что он будет выполнять команды доступные в режиме enable.
Проверить правильность настройки можно выполнив с хоста 192.168.1.1 из под rootа такую команду:

rsh -l hilik 192.168.1.2 show running-config

192.168.1.2 – свитч на котором мы настроили rsh.
Если как результат выполнения этой команды вы увидели файл настроек своего свитча, значит все получилось. Можно переходить к самому скрипту бекапа.

Скрипт бекапа состоит из двух файлов, один из них catalyst.txt – список свитчей с именами и backup_catalyst.pl – перловый скрипйт непосредственно бекапящий настройки.
Файл catalyst.txt выглядит так:

192.168.1.2 switch1
192.168.1.3 switch2
192.168.1.4 switch3
192.168.1.5 switch4

А сам перловый скрипт такой:

#!/usr/bin/perl -w
#Список свитчей тут
$SW_LIST='catalyst.txt';
#Юзер от имени кторого бекапим свитчи
$USER='hilik';
#Текущую дату будем использовать для имени файла
#что бы иметь нужное количество бекапов
$date=`/bin/date +%d%m%Y`;\
#Бекапить будем сюда
$BACKUP_DIR='/home/backup/';
 
open(IN,"<$SW_LIST" ) or die "Ne mogu otkryt catalyst list";
while(<IN>)
{
 
($host, $name)=split(" ",$_);
if($host and $name)
{
chomp($name);
$file="$name.$date";
#print $file;
chomp($host);
`/usr/bin/rsh -l $USER $host 'sh running-config' >$BACKUP_DIR/$file`;
#print $k
#print "Host $host, Name $name\n";
}
}
close(IN);

Результатом выполнения скрипта станет для каждого свитча файл кофигурации свитчей:

ls -la /home/backup/
switch1.23072009
switch2.23072009
switch3.23072009
switch4.23072009
switch5.23072009
switch1.24072009
switch2.24072009
switch3.24072009
switch4.24072009
switch5.24072009

На каждый день свой файл.
Стоит у меня на cron:

* * * * * /root/bin/backup_catalyst.pl

Работает просто и надежно.

 

 Буду рад комментариям, постараюсь ответить на вопросы. Заходите на сайт http://www.hilik.org.ua/
 


В избранное