[sisyphus] ncsh: настройка машины в ответ на события
Peter V. Saveliev
=?iso-8859-1?q?peet_=CE=C1_altlinux=2Eru?=
Пт Окт 19 15:03:54 MSD 2007
...
Итого, в Сизиф ушла (и когда-то дойдёт) сборка ncsh-0.4.4-alt6 (с
зависимостями в виде connexion и модулей).
Те, кто Сизифом не пользуется, могут скачать из svn:
svn co svn://radlinux.org/radlinux/branches/0.4.4/
(помимо явных зависимостей потребуются модули питона (2.4): pysnmp 4.x,
pyasn1, pysnmp-mibs, ctypes -- это всё есть в Сизифе; точно есть для gentoo;
наверняка есть для debian)
Что стало возможно, помимо прочего:
* работа с netlink: можно изменять таблицы маршрутизации и шейпинг в ответ на
добавление/удаление адресов на интерфейсы (актуально, например, для
ppp-сессий) -- то есть софтина мониторит состояние адресов и при изменении
предпринимает действия
* работа с snmp traps: изменять маршрутизацию и шейпинг в ответ на пакеты
snmp traps.
* перезапускать, останавливать и т.п. штатные сервисы, например, на изменения
на интерфейсах или по получению snmp traps:
!
catch snmp if snmpTrapOID=linkUp if community=bala
exec /etc/init.d/pptp start
!
events
snmp
т.е. ncsh теперь можно использовать не только и не столько для настройки
машины, а как trap-демон для различных событий с последующей их обработкой.
Warn: тараканы присутствуют! :) но самый децл.
...
Примеры тут: http://www.radlinux.org/connexion/wiki/Connexion/Samples
...
Если это кому-нибудь окажется полезно -- пишите -- от этого зависят
приоритеты. Если это нужно юзать сейчас, то тогда разумно будет повысить
приоритет у документирования всего этого (т.к. документация пока неполная).
Если же нет -- у меня на очереди полная обработка netlink, inotify и
мониторинг процессов.
--
Peter V. Saveliev
Подробная информация о списке рассылки Sisyphus