* [devel] I: connexion update
@ 2008-03-24 8:57 Peter V. Saveliev
0 siblings, 0 replies; only message in thread
From: Peter V. Saveliev @ 2008-03-24 8:57 UTC (permalink / raw)
To: devel
...
Updated to 0.4.6 rev. 1189
(http://www.radlinux.org/connexion/browser/branches/0.4.6?rev=1189)
Компоненты в Сизифе:
* ядро
* модули: базовый словарь
* модули: обработка событий
* модули: ncsh -- настройка сети, системы и т.п.
* интерфейсы: command line
* интерфейсы: registrator -- это управление ACL
* документация
* ncsh -- системный сервис, враппер cli и т.п.
* всякое
Установка ncsh: apt-get install ncsh
Использование ncsh:
# $EDITOR /etc/connexion/config
# service ncsh start
# ncsh -h
# ncsh
ncsh -- это лишь один из возможных способов применения connexion. В данном
случае, для настройки сети (и, в перспективе, некоторых системных сервисов) и
мониторинга событий.
В качестве источников событий на данный момент поддерживаются netlink, SNMP
traps v1, v2c. Т.е. в ответ на трап или изменение на интерфейсах можно
применять ту или иную часть конфигурации -- менять маршруты, адреса,
настройки iptables и т.п. Подробнее в примерах.
Использование connexion для своих нужд
$ connexion -x \
-w bala:/path/to/modules \
-W base:/usr/share/connexion-modules/basedict \
...
$ connexion-cli
В принципе, connexion core -- это типа такого языка программирования с
синтаксисом, слегка напоминающим питон и конфиги cisco, а по стилю -- xml.
Конфиг, который использует сервис ncsh, на самом деле просто скрипт для этого
языка. Словарь доступных слов определяется набором подключенных модулей. Чем
больше иерархий (-W, -w) подключено, тем богаче словарь. Каждое слово в
словаре определно в модуле. Пока что модули можно писать только на python,
т.к. мы со Стасом не нашли пока что примелемого стандарта для подключения
внешних модулей; а попадать в ситуацию a-la альтератор я не хочу.
Запускается нормально и от пользователя в том числе. При запуске от
пользователя не будут работать модули настройки сети (т.е., модули-то
отработают, но без толку) и нельзя snmp trapd сажать на привилегированные
порты. Это понятно. Коллектор событий netlink, однако, работает по любому.
Можно указывать сколько угодно иерархий модулей, но минимум -- одна. Разумно
включать модули из базового словаря. Подключение через -w означает отсутствие
доступа к внутренним структурам ядра connexion, через -W -- наличие такой
возможности. Базовый словарь надо подключать через -W, т.к. он управляет
ядром. Иерархия указанная первой, будет корнем дерева, ну, типа корневым
xmlns.
...
Разные примеры работы с ncsh: в документации, либо в ncsh -h, либо:
http://www.radlinux.org/docs/static/ru/ncsh_usecases.html
http://www.radlinux.org/connexion/wiki/Connexion/Samples
ЗЫ: мне тут в голову пришла мысль, пока писал: коль скоро connexion -- это
такой язык, то морда для него -- это вполне IDE. В том числе и веб. Надо
обдумать и попробовать зайти к кобыле с этого конца.
...
Всякое: питоноводам, возможно, будет интересна такая фишка как
python-module-cxnet, ушедшая в составе connexion-libs. Это низкоуровневые
интерфейсы работы с tcp/ip и netlink. В качестве примера -- userspace tarpit,
см.
http://www.radlinux.org/connexion/browser/branches/0.4.6/lib/cxnet/tarpit.py
--
Peter V. Saveliev
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2008-03-24 8:57 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-24 8:57 [devel] I: connexion update Peter V. Saveliev
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git