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: 19.03.2013
mikevlz|2 #
06:14
dvolodin: привет, а ты в сторону обычных методов кеширования не думал? ну там мемкешд или еще что?
06:15
а то я тут поставил себе, получил быстро-быстро открывающуюся и при этом нифига не меняющуюся страничку ивентов. Было забавно =)
06:15
ща уже убрал мидлваровые классы, думаю, может для чего-нить применить именно кешировалку...
06:16
граф, например, совать в нее, меняется он не так уж часто, а вот из баз дергает дофига
06:16
будет валяться в памяти - уже плюс
dvolodin #
06:17
какое преимущество дает мемкеш перед монгой?
mikevlz|2 #
06:18
память быстрее диска
dvolodin #
06:19
ты не прав
06:19
mmap -- это не строго диск
mikevlz|2 #
06:20
я тут попрофилировал свой view, в котором пути ищу. Суммарно - поиск пути 65-70 секунд. Если список вызовов отсортировать по времени и количеству вызовов - вверху работа с монгой и постгресом
dvolodin #
06:21
в общем - монга иногда сильно лучше мемкеша, у нее нет накладных расходов на разогрев кеша
06:21
mikevlz|2: это в каком это ты графе ищешь так?
mikevlz|2 #
06:21
в монгу нельзя просто так взять и положить граф.
dvolodin #
06:21
что мешает просто взять и положить граф в монгу?
mikevlz|2 #
06:22
куда предлагаешь класть?
06:23
узлы графа - ManagedObject и Interface, ребра - линки из БД и "линки" между интерфейсом и объектом, которому он принадлежит
06:23
вот в этом графе и ищу кратчайшие пути NetworkX-ом
06:28
трейс: http://dpaste.org/GgOQn/
06:31
ща перевыложу в более читаемом виде
06:32
http://dpaste.org/dSQf1/ вот так, без лишних пробелов
dvolodin #
06:34
кстати, все приличные сети сильно иерархичны по структуре
06:34
лучше задачу на две части побить -- кластеризация сети по уровням
06:34
и поиск пути в каждом кластере
mikevlz|2 #
06:35
думаешь будет ускорение за счет чуть меньшего количества элементов?
dvolodin #
06:35
на порядки меньшего
06:35
грубо говоря -- выход на ядро из сегмента доступа -- одна задача
06:35
выход на ядро из другого -- другая
06:36
поиск пути по ядру от одного сегмента до другого - третья
06:36
по ненужным сегментам вообще не проходим
06:37
граф связности в любом случае хранить надо в кеше -- чтобы коррелятор по топологии прикрывал алармы
mikevlz|2 #
06:38
и корень аварии искал
06:39
правда там еще вланы учитывать желательно, а не просто линки. Хотя если между железками путь один и там линкдаун - то вот причина
06:39
вобщем, побалуюсь я все-таки с кешем...
06:40
посмотрю, как измениться профайлинг, скорость поиска путей - можно будет дальше думать
zi_rus #
06:40
*изменится
mikevlz|2 #
06:40
zi_rus: не выпендривается
06:40
тьфу
zi_rus #
06:40
пятый класс
mikevlz|2 #
06:42
у меня по английскому и немецкому пятерки а по русскому и литературе четыре
zi_rus #
06:42
у меня тройка по-русскому
mikevlz|2 #
06:42
по русскому - без дефиса
06:42
:)
06:42
квиты
zi_rus #
06:43
нет, я опечатался
mikevlz|2 #
06:43
ладно, соскочил
zi_rus #
06:45
то-то же
dvolodin #
06:48
mikevlz|2: опять же -- в случае с включенным STP нужно искать не только кратчайшие пути
mikevlz|2 #
06:49
ну да...
06:58
dvolodin: радикально улучшил скорость поиска пути. У меня все тормозится на запросах к БД. Граф из мемкеша достался моментально
07:03
короче, минуту строится граф из базы, или за два запроса(на 0.5 секунды) тащим из мемкеша...
lexus-omsk #
07:15
dvolodin: не смотрел NOC-963? там тушёнку закоммитить надо в новый репо + вопрос есть тебе там же
07:16
почему-то тесты на некоторых скриптах после конвертации в json стали валиться
dvolodin #
07:17
какие именно завалились?
lexus-omsk #
07:17
именно get_interfaces... по крайней мере на Zyxel.ZyNOS
07:17
по-моему, что-то на DLink тоже валилось
07:20
да, такая же ситуация, например, на DLink.DxS_Cisco_CLI.get_version
Dmitry1 #
07:30
На DLink.DxS_Cisco_CLI.get_version ошибка в скрипте
lexus-omsk #
07:33
можно подробней? может у меня такой же косяк в Zyxel
Dmitry1 #
07:33
Оно выдирает версию '10.3(5T16),'
lexus-omsk #
07:33
- {'platform': 'DGS-3610-26G', 'vendor': 'DLink', 'version': '10.3(5T16),'}
07:33
+ {u'platform': 'DGS-3610-26G', u'vendor': 'DLink', u'version': '10.3(5T16)'}
07:33
меня вот это смущает
Dmitry1 #
07:33
а завершающей запятой не должно быть
lexus-omsk #
07:34
вижу теперь
07:39
ну да, как обычно - сам дурак ) Dmitry1: спасибо за наводку dvolodin: отбой
Dmitry1 #
07:40
пытаюсь поправить скрипт. тяжко идет
dvolodin #
07:40
я вот думаю, регулярки регулярками, а формальных грамматик никто не отменял
07:42
http://wiki.python.org/moin/LanguageParsing
07:44
http://pythonhosted.org/plex/tutorial.html#specifying-a-lexicon -- вот что-то вроде такого мы не хотим для парсинга вывода?
lexus-omsk #
07:47
так как теперь с тушёнкой быть? я прогоняю с fixed-beef-base и потом высылаю на beef@ ?
Dmitry1 #
07:49
Да. Но это в том случае, если тушенка верная
07:55
lexus-omsk: Поправил DLink.DxS_Cisco_CLI.get_version
07:56
dvolodin: Это обычный LEX.
dvolodin #
07:56
да
07:57
итогда проще на нем граматику налабать, чем воротить regexp
Dmitry1 #
07:58
Ну разве что для чтения конфигов
07:58
Или разработать свой собственный встраиваемый язык. Но лучше уже тогда взять LUA
dvolodin #
08:01
что может дать LUA из того, чего нет в python?
Dmitry1 #
08:03
простоту
lexus-omsk #
08:04
Dmitry1: я про тушёнку от Zyxel - я нашёл там баг... точнее баг в том, что не обновил тушёнку после очередной правки...
Dmitry1 #
08:04
ага
08:05
Я про то, чтобы в eventtrigger и alarmtrigger использовать LUA, вместо Python
08:05
Сейчас у меня хотелка: в eventtrigger на "Link Up" сделать проверку на скорость и дуплекс
08:06
Если скорость 10M или Half-Duplex - то поднимать аларм
08:06
Соответственно, опускать аларм, если скорость 100M и Full-Duplex
zi_rus #
08:07
иногда 10М задуманы а не по ошибке
08:07
надо на ошибки на порту реагировать
08:07
а для этого PM пилить
Dmitry1 #
08:08
Переменные speed и duplex передаются
08:09
zi_rus: А для того, чтобы при 10M не поднимало ошибку, надо иметь возможность в Inventory задавать скорость порта
zi_rus #
08:09
инвентори пусть сам ее дискаверит
Dmitry1 #
08:09
Как вариант
zi_rus #
08:09
одно руками задавать, другое руками, третье руками
Dmitry1 #
08:10
Но это дело далекого будущего
lexus-omsk #
08:10
зачем учить ещё язык... мы уже привыкшие к python-у... а так те же пирули будут, только ещё тащить отдельный интерпретатор
zi_rus #
08:10
так нужен будет отдельный человек только чтобы данные были актуальны
08:10
пусть лучше машина работает
Dmitry1 #
08:12
не все железки могут отдавать настройки порта
zi_rus #
08:25
народ, научите whois пользоваться :)
08:25
мне тут подсказали однажды что
08:25
whois AS25405 -i origin
08:25
покажет префиксы приндлжещие этой АС
08:25
и оно работало
08:26
а теперь не канает
08:26
No match for domain
Skripnik_A #
08:35
у меня отработало
zi_rus #
08:37
в федоре whois что ли сломали
Skripnik_A #
08:39
пробовал на gentoo
zi_rus #
08:39
я уже вские комбинации пробовал
08:40
и так
08:40
и whois AS25405 -- -i origin
08:40
и другие комбинации
08:41
вообще никак
08:41
даже тупо whois AS1111 не работает
mikevlz|2 #
09:36
man whois что говорит?
09:36
может дефолтовый RIR не задан?
zi_rus #
09:37
курил ман, ничего не понял
mikevlz|2 #
09:38
whois -i origin AS25405 м?
zi_rus #
09:38
пробовал
09:38
но для тебя еще раз проверил
09:38
No match for domain "ORIGIN AS25405".
09:39
как я только не извращался
mikevlz|2 #
09:39
стоп... У меня во whois -i означает использование базы NetworkSolutions
zi_rus #
09:40
-i --display-redirections
09:40
display every step in a redirection (default is to display only the last answer).
09:40
но это ключ от whois
09:41
jwhois -h whois.ripe.net -- -i admin-c,tech-c,zone-c CO19-RIPE
09:41
-- is used to separate the RIPE options from the jwhois options.
09:41
я так пробовал
09:41
тоже не ага
09:41
jwhois AS8371 -- -i origin
09:41
No match for domain "AS8371 -I ORIGIN".
mikevlz|2 #
09:44
хз
zi_rus #
09:46
о как
09:46
jwhois -h whois.ripe.net AS8371 -- -i origin
09:47
сработало
10:02
Dmitry1, что тебя останавливает сделать NOC-830?
Dmitry1 #
10:03
Вроде ничего
10:03
Просто у нас нету пока такого класса
zi_rus #
10:04
какого?
10:04
открывающий и закрывающий в разных классах?
Dmitry1 #
10:04
закрывающего для radius failed
10:04
да
10:04
открывающий и закрывающий в разных классаъ
10:05
сделаю. может даже сегодня
mikevlz|2 #
10:05
unclassified trap oids кого-нить интересуют?
zi_rus #
10:05
dvolodin, NOC-301, NOC-303 зачем открытыми держишь?
dvolodin #
10:07
303 - resolved
10:07
mikevlz|2: да, интересуют
mikevlz|2 #
10:09
у меня их мало :)
10:12
dvolodin: ты как-то не отреагировал на мои тесты с кешем...
10:12
ну кроме того, что "разделяй и здравствуй"
dvolodin #
10:17
mikevlz|2: а как я на них отреагирую? некий неизвестный функционал под монгой работает минуту, под мемкешем - 60 сек. И?
10:17
ты сделай запись в блоге, выложи код
mikevlz|2 #
10:17
а ты его поругаешь
10:18
:)
zi_rus #
10:18
mikevlz|2, ты ксати тут трассировкамми занимаешься, загляни в NOC-340 там это может пригодиться
10:18
dvolodin, NOC-353
11:00
Dmitry1, а про NOC-741 чот-то скажешь
11:04
Dmitry11, а про NOC-741 чот-то скажешь
Dmitry11 #
12:39
Да. Нужно аларм поднимать.
zi_rus #
12:47
я скорее спрашивал чего ждем
dvolodin #
12:54
zi_rus: по NOC-741 -- это где это у тебя такая прелесть?
zi_rus #
12:55
dvolodin, на 3400
12:55
jlyjv
12:55
одном
12:55
при конфиге забыли профиль выставить
12:55
теперь на мозги капает
12:56
профиль поменяли
dvolodin #
12:56
странного хочет
zi_rus #
12:56
а без ребута никак
12:57
а ребутать нельзя, там БС работает
12:57
надо официально заводить работы
12:57
еще и ночью заставят делать
12:58
вот все и забили
12:58
у нас два таких было
12:58
один получилось бутнуть, там другие работы проводились
12:58
а этот пока никак
12:58
dvolodin, а что странного? правильно хочет если tcam кончился
dvolodin #
12:59
с чего ему кончаться-то?
zi_rus #
13:00
так профиль неправильный, l2, все под маки зарезервировалось
13:00
а под л3 не осталось
13:03
The current template is "layer-2" template.
13:04
number of unicast mac addresses: 8K
13:04
number of IPv4 unicast routes: 0
13:04
и
13:04
The current template is "default" template.
13:04
number of unicast mac addresses: 5K
13:04
number of IPv4 unicast routes: 9K
dvolodin #
13:05
так зачем ему вообще какой-то L3 кроме management'а?
zi_rus #
13:05
ну как бы у нас л3 роутинг на них
13:07
там не только менеджмент
13:07
там и интернеты
13:07
и лупбеки
13:07
порядочно набегает
13:09
только не спрашивай зачем мы клиентов на каталистах терминируем
13:09
это меньшее из двух зол
mikevlz|2 #
13:56
<Scorp> не давно брал по питону книгу
13:56
<Scorp> 80% из нее вода
13:56
<drookie> Scorp: все живые организмы в той или иной степени состоят из воды
13:56
<drookie> питон не исключение
13:56
=)
cosminlixy #
15:23
hy everybody
mikevlz #
17:59
http://kb.nocproject.org/pages/viewpage.action?pageId=7766338 дискасс =)
20:08
dvolodin: есть блогпост
ufir #
20:12
блогпост есть
mikevlz #
20:12
=)
Tweet
Share this page
Share this page: Tweet