About Forum Blogs NOC Docs Downloads KB Issues Code CI Registration

nocproject.org

#nocproject.org at irc.freenode.net log.
Back to nocproject.org Back to IRC log index
Date: 05.09.2012
dvolodin #
05:34
zi_rus: ./noc shell
05:34
>>> from noc.inv.models import SubInterface
05:34
>>> SubInterface.objects.filter(is_bridge=True, untagged_vlan__exists=True)
zi_rus #
05:35
так работает, но ...(remaining elements truncated)...
05:36
все же будем костылять. а вот если на будущее будет репорт в ноке это просто шикарно. но в этом есть смысл если остальные поодержат тему с репортом
05:37
dvolodin, а вообще, спасибо за подсказки
dvolodin #
05:37
report какого рода?
05:37
for si in SubInterface......:
05:38
....
05:38
и делай с ним, что хочешь
05:38
managed object автоматом подтянет
zi_rus #
05:44
ну репорт, как в ипам, там например есть такой как ip usage/overview. тут можно было бы выбрать физические порты с ненудевым дескрипшеном, все нетранковые порты, все физические роутед порты. просто вот у нас сейчас запросили список всех рабочих портов на сет
05:44
и, в ноке все данные есть, а вытащить их нельзя, в питоне или работе с БД, я как обычный юзер не очень, сейчас с помощью нока дернем по несколько команд на всех железках и скриптом приведем к нужному виду. а по-другому - никак
05:46
такая бедв
dvolodin #
06:07
ну так пишите описания отчетов
06:07
в space development
06:07
будем обсуждать
06:07
полезный и универсальные вещи - делать
zi_rus #
06:13
dvolodin, space development - это где? ссылочку, или лучше куда тыкать, на будущее пригодилось бы. сейчас попробовал бы мысли изложить
dvolodin #
06:14
http://kb.nocproject.org/display/DEV/Open+Discussions
06:14
делай страничку
06:14
по результатам обсуждения можно уточнять описание
06:15
в итоге получится задание
06:15
вообще на тему отчетов для inventory можно подумать
il #
06:15
Всем привет. Подскажите пожалуйста, кроме данного user guide http://kb.nocproject.org/display/DOC/User%27s+Guide ничего больше нету? ато там как-то маловато
dvolodin #
06:15
il: нет
il #
06:15
хочу разобраться с fault manager, даже alarm создать немогу
06:16
непонимаю как
dvolodin #
06:16
зачем создавать?
06:16
отправь в коллектор syslog и трапы
il #
06:17
он их сам будет ловить?
06:17
ничего не надо настраивать?
06:17
в документации у меня неотображаются диаграммы gliffy
06:19
как добавить в коллектор?
mikevlz #
06:31
dvolodin: как можно отдебажить Knowledge Base? у меня давно уже поломался вывод стоек, ща бы опять попланировать монтаж 4 серваков, а не показывает, мать ее
Unbeerable #
06:35
noc.fm.models.OIDCollision: Cannot resolve OID 1.3.6.1.4.1.171.12.11.1.11.1 collision between EQUIPMENT-MIB::swEquipPowerSavingLinkDetectState and EQUIPMENT-MIB::swEquipmentPowerSavingState. Equal preferences
06:35
post-update: 80: sync-mibs failed
06:35
wtf
dvolodin #
06:42
il: ловить будет сам, надо на активаторе поднять коллекторы
mikevlz #
06:42
Там вроде надо было базу чистить при очередном апдейте
06:42
Unbeerable: эт я тебе писал
Unbeerable #
06:43
уже вбил в гугл ошибку
06:43
нашёл логи канала от 4 июля
il #
06:43
ок. Как поднять коллекторы? и как проверить поднялись или нет?
mikevlz #
06:48
il: sockstat -n или netstat -a на тазике с активаторами. Смотришь, чтоб были порты snmptrap и syslog открыты
06:49
и если есть вариант посмотреть - кем открыты, то это должен быть python
06:50
noc python 73505 13 udp4 *:162 *:*
06:50
noc python 73505 14 udp4 *:514 *:*
06:50
06:50
пример вывода sockstat
il #
06:52
161 и 162 закрыты
06:53
покрайней мере netstat их не показал
mikevlz #
06:53
noc# netstat -an | grep 162
06:53
udp4 0 0 *.162 *.*
06:55
настраивать всякие безопасности и прочие зависимые от ОС вещи. Смотреть логи активатора, он может ругаться, что не может открыть порт. Сменить пользователя активатору на root, чтоб не было проблем с портом, отобрать порт у других прог, например snmptrapd из
06:55
комплекта net-snmp
il #
06:55
спасибо я умею искать grep ом
06:55
netstat ненашел 162 и 161
06:56
Вопрос как поднять коллектор?
07:04
прошу прощения, mikevlz предыдущее сообщение пришло кракозябрами, можешь повторить?
zi_rus #
07:04
нарисовал кое-что по репортам для интерфейсов, надо бы обсудить. http://kb.nocproject.org/display/DEV/Interface+inventory+Reports+system
mikevlz #
07:05
настраивать всякие безопасности и прочие зависимые от ОС вещи. Смотреть логи активатора, он может ругаться, что не может открыть порт. Сменить пользователя активатору на root, чтоб не было проблем с портом, отобрать порт у других прог, например snmptrapd из
07:05
комплекта net-snmp
il #
07:06
блин. опять кракозябры
mikevlz #
07:06
netstat -a не покажет 162-й порт
07:06
надо еще ключ n
il #
07:06
так тоже искал
mikevlz #
07:07
noc-activator.log
07:07
смотреть ошибки
il #
07:07
ок
07:13
2012-09-05 11:10:00,335 [fm.correlator] Running job performance_report(report)
07:13
2012-09-05 11:10:00,338 0 events has been disposed (success: 0, failed: 0). 60.1688160896 seconds elapsed. 0.00 events/sec
07:13
каждую минуту куда-то report хоронит
dvolodin #
07:14
ну нормально
07:14
нет трапов, нет алармов
il #
07:14
а почему тогда в netstat невидно
07:14
что он слушает
07:15
?
dvolodin #
07:15
логи активатора посмотри
il #
07:15
там вроде норм
07:18
http://pastebin.com/rFnMJu5Z
07:18
я ничего плохого не увидел
dvolodin #
07:18
не поднимает он коллекторы
07:18
listen_traps
07:19
и listen_syslog в конфиге
il #
07:20
оу. ) там пусто. А что должно быть?
zi_rus #
07:22
listen_traps = 0.0.0.0
il #
07:23
да. нашел
07:23
спасибо
dvolodin #
07:26
il: какие железки?
il #
07:27
всмысле с которыми буду работать?
07:27
сейчас просто стенд собрал два dlink des 3200
zi_rus #
07:29
подергай им порты, алармы увидишь
il #
07:29
ок. спасибо
mikevlz #
07:57
тыкс
07:58
fdp/cdp не пашет на Foundry.
07:58
тополоджи дискавери
07:59
каталист(cdp) - (cdp listen) Foundry (fdp) - (fdp) Foundry
07:59
вот такая схема. На среднем foundry в консоли видно всех соседев...
dvolodin #
08:13
с поллерами проблема осталась?
freeseacher #
08:14
да
lexus-omsk #
08:22
у меня пока не наблюдается проблемы... но она не всегда сразу вылезает... мониторим пока
08:23
прошло около часа, полёт нормальный
08:33
вопрос не в тему: а в регекспах \n и $ одинаково интерпретируются?
dvolodin #
08:34
нет
08:34
зависит от режима
lexus-omsk #
08:35
если конкретно, то копаюсь в get_interfaces для huawei
08:35
ищу, почему же XGigabit порты не попадают в результат
08:36
а ещё смутила вот такая конструкция [^\n,]+
dvolodin #
08:38
а как вам идейка - определять fqdn template для discovery на уровне префикса?
zi_rus #
08:40
не очень
freeseacher #
08:40
очень.
08:41
это по факту будет поледно для пулов.
08:41
и очень полезно для всех остальных хостов
zi_rus #
08:41
для пулов есть address ranges
lexus-omsk #
08:41
насчёт huawei - похоже в принципе не попадают в результат порты с дефолтным дескрипшеном
dvolodin #
08:53
идея такая
08:53
ищем template по цепочке вверх
08:54
не нашли - берем из конфига
zi_rus #
08:55
я так и не понял мотивации для этого
08:55
dvolodin, подумай лучше про инвентори репортс
dvolodin #
08:56
мотивация -- разные имена в разных сетях
08:56
возможны галочки - не обнаруживать адреса вообще в этом префиксе и ниже
zi_rus #
09:02
хм. когда имя принципиально его задаешь руками или через addr range, а когда нет, то какая разница. хотя вам виднее, лично для себя я не вижу пользы
dvolodin #
09:04
это для discovery
09:05
сейчас используется один общий шаблон
mikevlz #
09:07
вот иметь отдельный шаблон для префикса - это клева было бы
_4ePTeHok #
09:07
статусы портов в инвентори...
09:08
инфа с железок для рисования морды инвентори
09:08
разделение статусов в конце-концов
mikevlz #
09:08
например, делаем префикс для p2p-линков между маршрутизаторами, задаем шаблон для сетки, из которой будут /30 браться...
_4ePTeHok #
09:08
тяжело 2 fqdn прописать руками?
mikevlz #
09:09
_4ePTeHok: мы уже третью /24 заполняем префиксами по /30
_4ePTeHok #
09:09
имхо это более узкоспециализированная проблема нежели вышеописанные.
mikevlz #
09:10
fqdn template на уровне префикса решает мою задачу :)
_4ePTeHok #
09:10
но не положит линки в БД
mikevlz #
09:11
у меня в переходном состоянии миграция на автоматически управляемый ДНС.
dvolodin #
09:11
mikevlz: там большие изменения готовятся
mikevlz #
09:12
я помню
09:12
но изменения изменениями, а я имел в виду, что там не два fqdn вписать надо
dvolodin #
09:14
zi_rus: относительно отчета -- пишите пока идеи, рисуйте в gliffy варианты формы запросов, дойдут руки - подумаю
09:16
блин, нужна морда для просмотра job'ов
Dmitry1 #
09:43
Нужна морда для просмотра передней панели свича
_4ePTeHok #
09:43
Dmitry1, а для нее надо еще много чего в бд инвентори положить.
Dmitry1 #
09:44
я работаю над этим
_4ePTeHok #
09:44
я не про гет интерфейсес
09:44
я про version inv к примеру
Dmitry1 #
09:45
Кстати, после долгих размышлений, решил для D-Link разные виды media считать разными интерфейсами
_4ePTeHok #
09:46
нумерация то одна
09:46
ifindex у них разве различается?
Dmitry1 #
09:46
Но для разных media можно выставлять разные admin_status, description, speed, duplex, flow_control и т.п.
_4ePTeHok #
09:47
мде.
Dmitry1 #
09:47
Отож.
_4ePTeHok #
09:47
и тут не могли как у всех сделать. все равно можно только один медиа задействовать
Dmitry1 #
09:48
Решили с dvolodin в будущем сделать специальный тип интерфеса, у которого можно несколько разных media типов иметь
09:48
Это актуально для разных извращений, типа V35, X25 и т.п.
09:50
Что-то типа многоканального интерфейса.
il #
09:51
а за что отвечает "syslog_host = " в файле noc-classifier.conf ? В admin-guide его нету
Dmitry1 #
09:51
по идее, адрес, на котором слушент
il #
09:51
у меня просто прилетают события, но не распознаются
dvolodin #
09:52
il: не нужен он тебе
il #
09:52
ок
Dmitry1 #
09:52
посмотри, может ли NOC слушать на 514 порту?
dvolodin #
09:52
это syslog host, на который noc может бросать свои логи
09:52
il: в Fault Management > Events их видно?
il #
09:52
да
dvolodin #
09:52
managed object'ы настроены под них
09:52
классификатор их обрабатывает?
il #
09:53
Subject:
09:53
Unknown Event Source: 10.0.0.5
09:53
Event has been received from unknown source 10.0.0.5 by collector (Activator pool default)
Dmitry1 #
09:53
В SA попрописывай event_source для железок
il #
09:53
ок
mikevlz #
09:53
в Managed Object надо выставить trap source ip
_4ePTeHok #
09:53
саму железку не забудь добавить..
il #
09:56
простите если что. порой понимаю насколько глупые вопросы. все потому что тороплюсь
Dmitry1 #
09:58
начальство торопит?
il #
10:03
пока что сам тороплюсь )
zi_rus #
10:33
Dmitry1, snmp не тестировал?
Dmitry1 #
10:34
нет пока
zi_rus #
10:34
жаль, развивать надо эту тему
Dmitry1 #
10:34
сейчас d-link мучаю
10:38
Надо, чтобы хоть как-то заработало. Часть свичей стопудово работать не будет.
lexus-omsk #
11:02
dvolodin: вот такой ещё трейс, правда не уверен, связан ли с NOC-656
11:02
http://pastie.org/4667522
dvolodin #
11:04
не связан, но из тех же переработок
lexus-omsk #
11:07
что-то повалилось в логи теперь Requesting object mappings, проц под 100% опять ушёл
_4ePTeHok #
11:11
Dmitry1, как ты относишься к тому, чтобы ifindex и iftype для каждой железки хранить в инвентори?
11:12
тогда можно будет по snmp сопоставить порт с cli-шным однозначно
11:13
и в FM в правилах не парится
Dmitry1 #
11:14
_4ePTeHok: положительно отношусь. Только как узнать, как они соотносятся?
dvolodin #
11:14
он хранится там
11:14
вы только в скриптах его выдавайте
_4ePTeHok #
11:14
iftype не снимается.
11:14
а он принципиален
11:15
Dmitry1, type подскажет - вилан это или физич. порт
11:15
если вилан - то от номера вычитаем 4000
11:15
от ifindex всмысле
Dmitry1 #
11:15
Ээээээ
11:16
тут опять проблема с d-link
_4ePTeHok #
11:16
тьфу, 1000 вычитать надо конечно.
Dmitry1 #
11:16
в стеке интерфейсы могут иметь фиг-знает какие ifindex.
_4ePTeHok #
11:16
ну вот в данный момент я даже виланы отделить не могу от интерфейсов физических
11:17
ибо в json - логику не впихнешь
11:17
и функция нормализации имени тут мало чем поможет
11:17
нам же нужно в итоге иметь одинаковые ифейсы и в FM и в inv
dvolodin #
11:29
_4ePTeHok: может все-таки convert_interface_name допилить?
_4ePTeHok #
11:30
примеры если где то есть - попробую.
ApmeM #
11:31
<dvolodin>, а тебя можно побеспокоить на тему телнета и еджкоров?
dvolodin #
11:33
можно
11:33
ну что-то вроде
11:33
try:
11:33
i = int(interface)
11:33
if i > 4000:
11:34
return "Vl %d" % (i - 4000)
11:34
except ValueError:
11:34
pass
11:34
....
11:34
или вообще та
11:35
if "4000" < interface < "8096":
_4ePTeHok #
11:35
у нас в json уже дописываются Eth 1/x
dvolodin #
11:35
return "Vl %d" % (int(interface) - 4000)
11:35
ну пусть пишутся
_4ePTeHok #
11:35
нормализация на каком этапе проходит?
dvolodin #
11:36
если "type": "interface_name",
11:36
в event class
_4ePTeHok #
11:37
т е после обработки json?
dvolodin #
11:37
json в обработке вообще не учавствует :)
11:38
когда event в базу будет укладываться, произойдет нормализация
_4ePTeHok #
12:06
хм. сломал классифир похоже.
12:06
видимо когда он переменную в int пытается перевести а там текст.
12:06
через try все ж придется.
12:32
dvolodin, подмоги чуток http://pastebin.com/VfNaTndV
12:32
вижу что int() argument must be a string or a number, not 'NoneType'
12:33
но ведь интерфейс должен отдаваться..
dvolodin #
12:33
функцию покажи
_4ePTeHok #
12:33
она там же чуть ниже
12:33
в пасте
12:40
type в переменной с ифейсом не определен?
dvolodin #
12:52
ты все-таки ifindex кормишь?
_4ePTeHok #
12:52
а чего мне ему кормить то
12:52
проблема только с снмп-же
12:53
в сислоге оно пишет влан или eth
12:53
а в snmp трапе только ifindex прилетает
12:54
чего там с типом не так то? interface же sring должен быть по идее
12:54
+t
il #
13:02
Возвращаясь к вопросу о noc-classifier. Все было хорошо. Теперь он опять перестал определять событие. Хотя trap source ip прописан
_4ePTeHok #
13:02
в логах классифера что
il #
13:03
2012-09-05 17:02:48,330 REPORT: elapsed: 0.0270s, speed: 37.0ev/s, events: 1, failed: 0, deleted: 0, suppressed: 0, unknown: 0, classified: 1, disposed: 0
13:03
все норм
_4ePTeHok #
13:03
ну классифицировалось значит
il #
13:03
Unknown Event Source: 10.0.0.5
evyscr #
13:11
il: повторим, Trap Source IP точно прописан? И в ём точно 10.0.0.5?
dvolodin #
13:11
и trap community
_4ePTeHok #
13:11
dvolodin, какой тип у interface? если не string то как быть?
il #
13:11
ip коллектора должен быть
13:11
?
evyscr #
13:12
ip источника же
il #
13:12
trap communit не менял
_4ePTeHok #
13:12
адрес с которого железка шлет трапы
13:12
к тебе на нок
il #
13:12
до этого был коллектора и работало
evyscr #
13:12
Где??
il #
13:12
ip коллектора в ip trap source
evyscr #
13:12
в Service Activation -> Managed Objects?
_4ePTeHok #
13:13
в веб морде
13:13
уточняйте..
13:13
=)
evyscr #
13:13
в веб-морде нока.
il #
13:13
да
evyscr #
13:13
хгм
il #
13:14
Service Activation -> Managed Objects для конкретной железки прописал trap ip source и тот и этот адрес пробывал
_4ePTeHok #
13:14
должно быть так - в ./etc/noc-activator.conf = IP интерфейса нока (где он будет слушать)
il #
13:14
только что
_4ePTeHok #
13:15
в Service Activation -> Managed Objects - интерфейс железки которая будет слать трапы в нок
il #
13:15
там 0.0.0.0
13:15
в /etc/noc-activator.conf 0.0.0.0
evyscr #
13:16
that's ok
_4ePTeHok #
13:16
это значит что будет на всех интерфейсах сервера слушать.
il #
13:16
так оно и было
13:16
все было гуд
evyscr #
13:16
Мне для сислога хватает Trap Source IP
_4ePTeHok #
13:17
сислог да. snmp - community еще надо
il #
13:17
Trap Source Ip когда все работало был ip машины на которой noc работает и все было гуд
evyscr #
13:17
хгм
13:17
не SAE ли редактируем?
il #
13:17
snmp community изначально был public
_4ePTeHok #
13:18
Managed Objects создавал?
il #
13:18
потом менял. но теперь и он не работает
13:18
да
evyscr #
13:18
эм...
il #
13:18
у меня уже днем все работало
13:18
и определял events
13:19
ну вот опять работает
13:19
))
13:19
чудеса или руки у меня кривые
evyscr #
13:20
надо сделать кнопку для вываливания конфига МО в json. и заставлять пастебинить.
13:21
Так, а audit trail у нас про все изменения в МО расскажет?
13:24
вроде про все.
13:24
il: можешь посмотреть в Main -> Audit Trail что именно твои руки делали с этим МО.
il #
13:25
вообщем либо Trap source ip не сразу отрабатывает. я теперь меняю его как хочу а оно все равно работает
13:25
секунду
evyscr #
13:26
ну, скажем, отрабатывало оно не мгновенно.
il #
13:28
минуту переключает trap source ip
13:28
т.е. примерно
_4ePTeHok #
13:29
оно выставляется 1 раз для каждой железки
il #
13:29
я просто ради эксперимента менял его
evyscr #
13:30
охблджад... спам прилетел: "Putty – это великолепная антистресс игрушка. Putty позволяет легко и незаметно расслабиться."
_4ePTeHok #
13:30
гг
evyscr #
13:30
кажется, chiark придётся таки задуматься о доменном имени.
il #
13:32
маленький вопрос. у меня последние 2 дня появляются crashinfo файлы в папке с логами
13:32
это норм? )
evyscr #
13:32
что они появляются там - норм
13:33
что они появляются - суровая правда жизни
13:33
или кривость
il #
13:33
) просто внутри только пару строк непонятно инфы
evyscr #
13:33
поэтому их надо рассматривать каждый в отдельности
13:34
dvolodin: кстате.
il #
13:34
(dp1 S'component' p2 S'noc-correlator p3 sS'source' p4 S'system' p5 sS'traceback' p6
zi_rus #
13:35
<il>, ищи, в одном из логов более приемлемый формат той же ошибки
evyscr #
13:35
dvolodin: как _должен_ вести себя нок, если закончилось свободное место на диске?
il #
13:35
ок
_4ePTeHok #
13:36
evyscr, поди как и все остальное
13:36
помереть кверху лапками
zi_rus #
13:36
evyscr, очевидно начнет сильнее крашиться
evyscr #
13:37
ну я же выделил "должен"
zi_rus #
13:37
он при неправильных правах на файлы запуститься не может, а ту сразу такое
13:39
однозначно сдохнет
evyscr #
13:41
ох... повторю: не "как себя поведёт", а "как должен себя повести"
_4ePTeHok #
13:41
evyscr, "должен" удалить все свои логи, краши и т д, посносить все в системе что ему не нужно и завладеть миром)
evyscr #
13:42
у меня не freebsd, world отсутствует.-)
zi_rus #
13:46
значит впадет в депрессию и убьет себя.
_4ePTeHok #
14:00
мистика какая то.
14:01
делаю в функции convert_interface_name какое нибудь простое преобразования типа return interface.replace("/ ", "=") - работает
14:01
как со строкой прошу заметить
14:02
делаю if interface.startswith("Eth" or "VLAN"): - получаю отлуп 'NoneType' object has no attribute 'startswith'
dvolodin #
14:07
блин
14:08
if interface.startswith("Eth") or interface.startswith("VLAN")
_4ePTeHok #
14:08
да не в том дело
dvolodin #
14:08
"Eth" or "VLAN" даст "Eth"
14:08
:)
_4ePTeHok #
14:08
'NoneType' object откуда?
14:08
я уже пяток способов разных перепробовал
14:09
как будто ifindex не передается в convert_interface_name переменной с type sting/int
14:09
точнее как будто вообще не передается
14:10
но при этом - убираю все из convert_interface_name - в бд ложится interface 10 к примеру
14:11
т е проблема где то при вызове convert_interface_name и передаче переменной верного типа ей
14:12
снятое сислогом - обрабатывается в convert_interface_name верно
14:12
снятый ifindex snmp = валится на любой попытке его обработать в функции как 'NoneType' object
Tweet
Share this page
Share this page: Tweet