UNIX-shell и telnet для работы с оборудованием или забота о tech-support'e

Преамбула

Компания, в которой я работаю, предоставляет клиентам такие услуги как:
  • доступ в Интернет
  • телефония
  • хостинг
и много-много чего другого.
Т.е. вполне такой нормальный Интернет-провайдер с целой куче дополнительных плюшек.

Магистральными линиями связи является оптоволокно, тогда как «последняя миля» — витая пара от управляемого коммутатора.
Коммутаторов много и для мониторинга используются две вещи: Nagios и Cacti.
Так же каждый клиент, которому предоставляется доступ в Интернет, в биллинге имеет привязку IP-адреса к MAC-адресу. На порту коммутатора есть указание работать только с теми MAC-адресами, которые указаны в конфигурации текущего коммутатора.
SNMP-трапами мы отлавливаем изменения MAC-адреса и среды в целом.
В один интересный день оказалось что коллегам из службы технической поддержки приходится руками заходить на коммутатор и перепрописывать конфигурацию.
Посмотрев на внутренности биллинга (на ту часть, что отвечала за информацию о клиенте), стало понятно, что именно сюда можно будет включить свою модификацию.
Амбула

Итак, имея в биллинге информацию о клиенте примерно такого содержания:
  • Номер договора
  • Адрес
  • Телефон
  • IP
  • MAC
Рядом с каждым пунктом есть ссылка на изменение информации.
То есть после того, как мы изменили MAC-адрес в биллинге, нужно его изменить и на коммутаторе.
Можно это сделать и через SNMP, и при помощи Perl/PHP. Я остановился на примитивном и простом варианте shell-script'а.
Так как в некоторых местах сети пришлось переписывать конфигурацию нескольких коммутаторов, то используется массив.
Скрипт генерируется автоматически, запускается и стирается.
#!/usr/local/bin/bash

set -f

myArr[0]="10.20.30.1"
myArr[1]="10.20.30.2"
myArr[2]="10.20.30.3"

for item in ${myArr[*]}
do
 {
 sleep 5
 echo "myLogin"
 sleep 1
 echo "myPassword"
 sleep 1
 echo "Команда на изменение конфигурации"
 ...
 sleep 15
 } | /usr/bin/telnet $item

done



Да. Возможно это примитивно, использование pipe'ов и прочего не является кошерным.
Но таки это рабочий вариант, который помог в экономии времени работников компании.


0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.