nocproject.org
03:15
умудрился распихать JS-либы по питоновским пакетам
03:15
когда увидете, что NOC ставит пакеты noc-pkg-* -- не пугайтесь :)
03:15
пока выкинул handlebars и shjs
03:20
03:21
заодно, в etc/requirements/local.txt можно писать свои пакеты для установки
03:21
также появилась возможность ставить debug-версии js либ
 
03:59
сейчас выкидываю иконки в пакеты
03:59
а в целом - последствия гораздо более долгоиграющи
04:00
если поиграться с setup.py в пакетах -- получится нормальный способ распространения дополнительных модулей и приложений для NOC
04:01
типа того же staticvlan
 
04:05
ага
04:05
за etc/requirements/local.txt спасибо.
 
04:06
ну я текст почитал. должно работать :)
04:06
чуть позже проверю
 
04:10
будем сажать нашего монстра на диету
 
04:33
переход на epoll c select серьезно снижает нагрузку при старте системы.
05:12
dvolodin, неа
05:13
не тащатся pkg
 
05:13
вааще
05:15
он должен говорить что их тянет ?
 
05:16
05:19
какие то у меня пакеты стремные
 
05:23
торнада 3
05:23
слик 1.0
05:25
обновил.
05:25
старые пришлось удалять руками из директории прям
05:25
uninstall не удалял
05:26
но тем неменее по библиотекам 404
05:28
раскурил
 
05:28
debug_js = true
05:29
и отсутствие библиотек -debug
05:29
я же вчера включал debug_js
 
05:30
а
05:30
в upgrade.conf пропиши, чтобы тащило дебаг
05:31
INSTALL_DEBUG=yes
 
05:32
это я понял :)
05:33
а Ext то где ?
 
05:33
но скоро будет
05:33
для него и делалось
05:33
:)
 
05:33
там не хило кода я так понимаю надо поправить
 
05:34
нет, немного совсем
 
05:34
да
05:34
но их немного
 
05:34
надо как то народ от ctrl+f5 Спасти :)
 
05:34
я пока два пакета иконок делаю
05:36
        <link rel="stylesheet" type="text/css" href="/static/css/noc-extjs.css" />
05:36
        <script type="text/javascript" src="/static/js/ext-all{% if setup.debug_js %}-debug{% endif %}.js"></script>
05:36
в идеале - только тут
05:38
там два пакета придется собирать
05:38
minified и полный
05:39
по идее -- пакет будет тривиальный
05:41
два пакета иконок тоже выпилил
 
05:42
какой нормальный пинок bitbucket проекту придал
 
05:44
все пилится на мелочевку и отдельные репы
05:44
так и до выпиливания nbsocket в отдельный проект дойдет. ;)
 
05:45
возможно и дойдет
05:45
если от этого будет какой-либо профит
 
05:45
кстати на ohloh поправь адрес репы
 
05:47
пинка дал, на самом деле, virtualenv
 
05:47
ну вчера еще плохой был
 
05:50
плодовито.
05:50
c beef то чо ?
05:50
форкать ?
05:50
или мылом слать :)
 
05:52
можно и форкать, да
05:59
в принципе, через pull request даже удобнее сливать будет
 
08:55
Господа, наши допилили LG на базе нока.
08:55
на PHP правда
08:56
есть желание поделиться этим делом.
08:56
надо кому нить ?
09:24
в общем если у кого возникнет интерес к LG обращайтесь
 
09:26
чо оно делает?
09:26
ping/traceroute/bgp?
 
09:26
и какую роль в нём играет нок?
 
09:26
и при этом торчит лицом наружу
09:27
нок ходит на железо
09:27
что бы лукинг гласс не ходил и не хранил на себе логины пароли от железа
 
09:29
ясно, клёво
09:29
а с квагой оно ведь не дружно?
 
09:30
сейчас ноковые модули написаны для Juniper
09:30
щас хотим запускать в продакшен
09:30
не уверен что lg.erterlecom.ru доступно снаружи
 
09:30
ping: unknown host lg.erterlecom.ru
 
09:31
пингуется но в браузере не контачит
 
09:32
ну значит еще безопасники не открыли.
 
09:32
за продакшен можете не бояться, у вк вообще только бгп работает, ни пинги ни трейсы не дает делать
 
09:32
ну брали за образец lg.retn.net
 
09:32
у вас еще и безопасники на что-то влияют
09:33
а мы сами по себе
09:33
только они наши сети сканируют
09:33
если чего лишнее откроется, заставят объясняться
09:34
или закрывать
09:35
чего там с графиками?
09:35
стало красиво?
 
09:35
а чо, уже есть графики?
 
09:36
судя по логам, я обновлялся 7 февраля
09:36
(этого года)
09:36
чую, безболезненно до каррента я не обновлюсь
 
09:36
j,yjdbimcz
09:37
обновишься
09:37
я же обновился
 
09:37
кто мне умную вещь подскажет
 
09:37
самая большая жомпа еесли у ят есть кастомное поле проект
 
09:37
не всем так повезет, мне вот кастом филд придется как-то мигрировать
09:38
плюс новые демоны, значит им надо сделать настройки
09:38
плюс обновлялка поменялась, по обычной инструкции уже не обновиться
09:38
там еще virtualenv появился
09:39
в общем гемора много будет
09:39
я наверное  сразу на новом сервере инсталляцию буду делать
09:39
давно напрашивается
 
09:39
хорошо быть ленивым
09:39
я так и не добрался до кастом филдов
 
09:40
на самом деле в нок много меняется
09:40
я до половины замутил бгп
09:40
а потом его поменяли
09:40
стабильности нет
 
09:40
zi_home: что поменяли в BGP?
 
09:40
пишешь пируль, а через полгода его функция уже в апстриме
09:40
dvolodin, где?
09:40
я не понял
 
09:41
zi_home>
09:41
я до половины замутил бгп
09:41
[1:40pm] <zi_home>
09:41
а потом его поменяли
 
09:41
тьфу
09:41
днс
09:41
опечатка
 
09:41
прям по Фрейду опечатка
09:41
 :)
 
09:42
да, всего 3 буквы промахнулся
09:43
и главное все рядом
09:43
dvolodin, так что мы имеем с графиками?
09:43
готово к продакшену
09:44
хотя бы сами графики
 
09:44
графики - в процессе реализации функционала
 
09:44
без интеграции с остальной частью
09:45
как я понял, проба готова и уже можеть собирать данные
 
09:45
да
09:45
тестировать ее надо
09:45
из сделаного -- теперь чек может на основании конфига говорить, какие у него time series
09:46
в принципе, я хочу сделать oid'ы списком
09:46
чтобы в одном чеке сразу несколько параметров драть
 
09:46
для железки или для графика?
09:47
поскорее бы результат
09:48
а то могу не дождаться
 
09:48
по одному чеку можно будет несколько графиков получать
 
09:48
на самом деле меня волнует больше как это все настраивается
09:49
понятно  что для одиночного оид все очевидно
09:50
я смотрю что есть в кактусе
09:50
там есть дата сорс - это фактически аналог чека
09:50
указываются какие данные собирать
09:51
а есть графики
 
09:51
с ним привязываются сорсы
 
09:51
тут так же
09:51
есть check -- это процесс сбора данных
09:51
он выдает несколько time series
 
09:51
со значениями каждого из параметров
09:51
time series -- результаты измерений
 
09:52
почему их несколько?
 
09:52
dvolodin: агрегацию данных надо обязательно сделать
 
09:52
результат он же один
 
09:52
тут же жалуются, что монга пухнет с голоду
 
09:52
у меня есть check -- mongodb
09:52
 он за раз снимает с десяток параметров
09:52
под каждый параметр будет свой time series
 
09:53
эээ
09:53
черт, как все усложнили
 
09:53
наоборот
09:53
так бы ты десять data source руками настраивал
 
09:53
этого хочется избежать
 
09:53
количество чтений, количество записей, количество вставок
09:53
ну вот
09:53
тут ты говоришь -- паси мою монгу
09:54
и он автоматом пасет сразу несколько параметров
 
09:54
а если мне надо добавить или удалить параметр
 
09:54
это делается в настройках чего?
 
09:54
если хочешь удалить -- на time series ставишь inactive, и все
 
09:55
ой как через одно место все это
09:56
вот типичный пример
09:56
мне надо рисовать графики температуры
09:56
на 7600
09:56
куча вских датчиков
 
09:57
мне нужны те что по входу температутру меряют
 
09:57
в идеале - у тебя чек должен быть - мониторить температуру 7600
 
09:57
там оид на кадой железке свой
09:57
они похожи и несут кое какой смысл
 
09:57
да пожалуйста
09:57
будет у тебя чек, который на входе будет получать managed object
 
09:58
но из менее 10 моих железок, только 2 или 3 совпали, для остальных пришлось пожертвовать
 
09:58
а дальше по модели железки будет сам разбираться, что он сможет промониторить и что отдать
 
09:58
а ты, в идеале, в профиле managed objecty'а или в настройках объекта галочку поставишь, что хочешь температуру
 
09:59
да, допустим, а какую
09:59
мы снимаем внешнюю с датчиков на входе
09:59
а есть еще десяток в других местах
09:59
на выходе на плате
09:59
на чипах
 
09:59
да поболее
10:00
у них датчики под каждый ASIC на плате
10:00
я снимал температуру с 7600, помню еще
 
10:00
ну не знаю, у нас примерно по 4-5 на плате
 
10:00
как он будет определять интересные мне данные
 
10:01
все возьмет
10:01
лишнее ты выкинешь
10:01
или параметр конфига вводить
 
10:01
отлично, да там есть ветка где лежат все данные
 
10:01
пониторить супы, мониторить карты
 
10:01
нюанс
10:01
там нумерация идет по +1000 для каждой платы
 
10:02
первая плата 10хх оиды, вторая 20хх
10:02
а то что если у меня нет второй платы а есть третья
10:02
то значения для третьей будут среди 20хх
 
10:02
короче чеками надо будет меняться как аларамами
10:02
гделал кто то чек и его надо пошарить
10:03
* сделал
 
10:03
не получится разделить LC и SUP
10:03
или придется персонально для 7600 делать костыль
10:03
ме3400 вообще не показывает темпеературу
10:04
начнем с начала
10:04
я открываю МО или профиль МО
10:05
ставлю галочку, ping check - он будет пинговать доступность железки
10:05
ставлю галочку, темп. чек - он начинает снимать данные о температуре железки
10:05
вопрос
10:05
откуда он знает для какой железки или платформы, какие данные снимать?
10:06
для 3550/3560 это один оид
10:06
для 7600 - другой
10:06
для длинков третий, если они вообще могут возвращять эти значения
 
10:07
модель у него на входе будет
10:07
из version discovery
 
10:07
модель будет
10:07
а как будет определять ся соотвествие модели и номеров оид
 
10:07
и делай там mapping'и
 
10:07
либо в коде check'а
10:07
либо отдельным ресурсом
10:08
скажем, в виде json
 
10:09
появилась новая железка которую нок не до конца поддерживает. лезть в код?
 
10:09
да, чтоб нок ее поддерживал как минимум настолько, насколько тебе нужно
 
10:10
либо в  оыщт
10:10
в json
10:10
в котором mapping'и oid'ов
10:10
а как еще?
10:11
не руками же заводить oid'ы
10:11
:)
 
10:11
Ну ты оставь для извращенцев Generic SNMP OID Check
 
10:11
мне больше нравится как ФМ, репо правил
 
10:11
я и говорю -- в json
10:12
по логике вещей, это класс SNMP проб
10:12
у них на входе -- managed object
10:12
и какие-то mapping'и
 
10:12
так, допустим разобрались, у нас есть соответствие модель/версия софта/оид
 
10:12
там и посложнее может быть
10:13
но, скорее всего, да
 
10:13
мне не нужны все датчики, только часть
 
10:13
селектор, oid -> выход
 
10:13
иду в time series и отключаю ненужные
 
10:13
смотришь, какие time series оно сделало, убираешь галочками ненужное
10:13
в принципе, можно прямо в фоме check'а сделать отключение лишнего
 
10:13
как из нужных теперь получить график и где его увидеть
 
10:14
либо кликнув в time series
 
10:14
в форме чека даже лучше
10:14
это правильней
 
10:14
да, это чуть позже сделаю
10:14
а затем ты берешь dashboard, лепишь на него графики и говоришь им, какие time series рисовать
 
10:15
dash уже сть?
10:16
то есть я говорю, создать новый график, указываю для него подпись, легенду и какие time series отображать
 
10:16
нет, думаю над конфигом
10:16
zi_home: да
10:16
именно
 
10:17
суть в том, что даже check'и оно автоматом тебе поднимать будет из discovery на основании профиля
 
10:17
скажем, появился ядерный линк -- автоматом встал на мониторинг
10:18
график для сбора данных не нужен совсем
 
10:18
сбор данных без графика не нужен
 
10:18
что толку если они будут собираться
 
10:18
контроль threshold'ов можно в фоне делать
 
10:19
когда я захочу к ним обратиться мне придется хреначить сотни и тысячи графиков для интерфейсов допустим чтобы отследить откуда прише лфлуд
10:19
в настройках чека
10:19
надо галочку
10:20
чтобы автоматом создавал график
10:21
блин
10:21
если прикрыть несколько автоматизаций
10:21
получается кактус в чистом виде
 
10:21
а зачем
10:22
если ты захочешь посмотреть график параметра, ты его посмотришь
10:22
не делая самого графика
 
10:22
есть как минимум 2 параметра которые поодиночке смотреть глупо
10:22
входящий трафи и исходящий
10:23
смотреть показания одного датчика в отрыве от остальных тоже малополезно
10:23
графики рисуют чтобы иметь наглядность
 
10:24
dvolodin, идею о том что Check-ами надо будет меняться поддерживаешь ?
 
10:24
когда разные данные сводят на один график значит так оно наглядней
 
10:24
как в кактусе шаблонами
 
10:25
freeseacher: ну да, равно как и скриптами и правилами FM
 
10:25
тогда формат текущий для чека не верный в принципе
10:25
его тяжело будет импортировть
 
10:25
freeseacher: API-то правильный
 
10:25
нужен промежуточный чек темплайт
10:25
именно чек темплейт шарится
 
10:25
нужны просто check'и, которые могут хавать шаблоны
10:25
ну да
 
10:25
сейчас такой сущности нету
 
10:26
ну так надо ее реализовать :)
 
10:26
ага
10:26
и видимо нужно както dafult-ить значения
10:27
особенно стораджа
 
10:27
но нужны и python'овские проверки
10:27
или придется реализовывать птичий язык на базе JSON с полным функционалом питона
10:27
бред будет
 
10:29
давай раскурим как сделаны шаблоны в кактусе ?
 
10:29
а чего там курить-то/
 
10:30
там в xml-ку кладется все
10:30
вплоть до скрипта который вызывается для снятия параметра
10:31
10:31
вот для наглядности
10:32
там есть моменты которые уже учтены.
10:32
типа версии системы в которой сделан экспорт
 
10:33
чем это отличается от того, что есть?
 
10:33
у нока пока нет экспорта :)
10:34
и пихать в экспорт например названия стораджа нельзя
10:34
хато надо описать тип подходящего стораджа с его параметрами
 
10:35
ну а зачем в кучу сваливать хранение съем, контроль и хранение?
 
10:35
сейчас в чеке описывается ойпиадрес и что именно дергать
10:35
что бы можно было воспроизвести на другой инсталации
10:36
а под контролем ты имеешь ввиду проверку граничных значений или что то другое ?
 
10:37
и это тоже, да
10:37
нам же еще надо указывать, какие alarm'ы поднимать
 
10:37
ну это как раз неотъемлимая часть графика
10:37
алармы да.
10:37
алармы мы шарим
 
10:38
не поднимать же аларм -- беда, параметр слишком большой
10:38
:)
 
10:38
почему не подымать :)
10:38
подымать
 
10:38
потому что правильнее поднять alarm -- перегрелась железка
10:38
:)
10:38
тот же самый, что и по трапу
 
10:39
когда известно что именно мониторит график
10:40
а уведомление об аларме это fm же да ?
 
10:41
да
10:56
на самом деле check'и NOC могут использовать формы extjs
10:56
чего не сделать с шаблонами
11:02
шаблоны типа "вася пупкин настроил 3 параметра на железке" в количестве 100500 штук тоже слабоинтересны
11:02
потому как на практике будешь брать первую похожую, пилить на ее основе новую пробу и родишь 100501-ю
 
11:05
чот криво проапдейтилось чтоли... в mo profile на страничке ссылка на static/img/fam/silk/tick.png, а такого файла нет. и каталога fam/ тоже
11:06
вообще всё грохнулось ;)
11:06
pymongo.errors.AutoReconnect: connection closed
11:06
upgrade-user: 62: sync-mibs failed
11:06
Terminating
11:07
монга сдохла оказывается
 
11:12
ссылочку поправить надо, да
 
11:16
вообщем оказалось, что быкап монги пожрал всё место на виртуалке
 
11:38
<dvolodin> на самом деле check'и NOC могут использовать формы extjs
11:38
как это прогтиворечит шаблонам ?
11:39
съем 3 параметров может быть нифига не тривиальным
11:39
к тому же график так же работа по оформлению цветовой дифиринциации
11:39
особенно если на графике бльше 4 параметров
11:40
и надо определить что будет линией а что ареей
11:40
далшьше в графике будет вестись расчет тренда
 
11:40
freeseacher: а вот с этим не согласен
 
11:40
и формула расчета тренда тоже должна быть
 
11:40
компоновка и вид графика определяется задачей
11:41
и потребности у всех разные
 
11:41
а расчеты тренда -- неграфическая часть
 
11:41
но в шаблоне я делаю и чек и вид того как оно будет отображаться
11:41
тренды надо рисовать
11:41
как они вдруг стали не графическими ?
11:42
рисовать ли ты их будешь бледнее или линией дотовой
 
12:17
Добрый день. Я опять с глупыми вопросами. А именно - mongodb скушал все что мог на диске. Как его приструнить?
 
12:20
т.е. только так?
12:20
а почистить там...
12:20
Я, конечно, могу, у меня есть....
 
12:21
ивенты какие-нибудь старые убить
12:21
алармы
12:21
если конечно фм используется
 
12:22
а больше ничего там не жрет диск так
 
12:22
ну мало ли, инвентори
 
12:22
хех, выпилил extjs
12:22
:)
12:22
не пугайтесь
12:22
:)
 
12:23
я думал ты его запиливаешь, а ты выпиливаешь
 
12:23
пойду, поищу где их можно выпилить
 
12:23
теперь пхп будет?
12:24
:)
12:25
 
12:25
какой пхп, свят-свят-свят
12:25
JRuby
 
12:25
а я уж было хотел воскликнуть "неужели .NET?"
 
12:29
хм-м-м.... Результат должен проявиться сразу? :)
 
12:30
хз, никогда не делал этого для освобождения места
12:31
и смотря что ты стирал
12:31
и что было
 
12:33
ну,какие-то эвенты там были
12:33
алармов особо не было
 
12:34
тогда возможно что-то еще съело место
 
12:36
надо гуглить про монгу
 
12:37
 noc]# du -H -a /var/lib/mongodb/
12:37
4	/var/lib/mongodb/mongod.lock
12:37
16388	/var/lib/mongodb/noc.ns
12:37
131076	/var/lib/mongodb/noc.1
12:37
65540	/var/lib/mongodb/noc.0
12:37
524292	/var/lib/mongodb/noc.3
12:37
1048580	/var/lib/mongodb/noc.4
12:37
262148	/var/lib/mongodb/noc.2
12:37
2096132	/var/lib/mongodb/noc.5
12:37
4	/var/lib/mongodb/_tmp
12:37
1048580	/var/lib/mongodb/journal/prealloc.2
12:37
1048588	/var/lib/mongodb/journal/j._5
12:37
4	/var/lib/mongodb/journal/lsn
12:37
1048580	/var/lib/mongodb/journal/j._6
12:37
Я нечаянно
 
12:38
db.noc.showCollections - не покажет размер коллекции? не могу у себя пока проверить
12:45
во
12:45
db.printCollectionStats()
12:45
какие-то размеры показывает
 
12:54
<collection>.stats()
 
13:09
чот всё поломалось при обновлении, даже вебморда теперь не работает
 
13:35
refresh сделай
13:36
да и upgrade не надо забывать
 
13:36
дык буквально минут 5 назад делал
13:37
в логах  сплошная ругань на "/opt/noc/static/pkg/  - а что я сделаю, если у меня этого каталога нет
 
13:39
должен был вытащить пакеты
13:39
./scripts/upgrade прогнал?
 
13:41
и что?
13:41
нет static/pkg?
13:42
./bin/pip freeze что показывает?
 
13:44
порнуха
13:44
а где  noc-pkg-* ?
13:44
из requirements.txt
 
13:45
это только в debug.txt
13:46
добавил руками..
 
13:47
13:47
у меня есть подозрение, что ты добавил туда -e .......
13:47
и при merge возник конфликт
13:51
-e hg+Not trusting file /opt/noc/.hg/hgrc from untrusted user noc, group noc
13:51
Not trusting file /opt/noc/.hg/hgrc from untrusted user noc, group noc@Not trusting file /opt/noc/.hg/hgrc from untrusted user noc, group noc
13:51
Not trusting file /opt/noc/.hg/hgrc from untrusted user noc, group noc
13:51
8e69729cb0ec270ef7261570500dd346532db969#egg=noc-dev
13:51
это явно локальное
 
13:53
интересно, откуда оно взялось... руками я давно там ничего не правил
13:53
но сейчас пакеты поставились и все заработало
 
13:53
открыл посмотреть и ой? :)
 
13:54
это я про "я ничего не делал, оно само!"
13:55
ufir: газпрём то вам еще три ляма отдал?
13:55
я тут на выходных на башорге цитату увидел
 
13:58
а еще у редактора vi есть две функции
13:58
бибикать и все портить
13:58
:)
 
13:58
mikevlz газпром если и отдал - то кому-то другому ;)
 
13:59
dvolodin: это да...
13:59
мы вот тут пальцем тыкали в человека, который с невозмутимым видом правил на сервере какой-то скрипт в vim
14:00
при том, что там стоял mc, был штатный для фряхи ee, для линуха - nano
14:00
mc стоял с редактором
 
14:01
ничо, он шутку понял
 
14:01
я бы тоже понял, может быть :)
14:01
органически не понимаю mc и nano :)
 
14:01
а ee?
14:01
=)
14:02
а вообще - да. Ты прав, писать надо исключительно в OO.o Writer
 
14:04
office 365
14:04
с сервера
 
16:16
dvolodin, ты тут?
16:16
вопрос про дискавери
16:16
на одном свиче есть 2 роутед портв
16:16
*порта
16:17
дискавери уверенно рисует линк между ними
16:17
есть мнение что линк действительно есть
16:17
я не пойму по какому критерию он это определяет
 
16:18
как посмотреть, на карте не получается
16:19
там действительно в обоих оптика
16:19
да udld на свиче смотрит на себя
16:20
понятно, спасибо за подсказку
 
16:25
на линк на карте наведи
16:25
там hint должен выскочить
16:26
действительно петля на свиче?
 
16:26
линка на карте нет
16:27
два порта через запятую
16:27
когда скрываю, то вообще ничего нет
16:27
там два порта в сторону клиента
16:27
он похоже в один свич все воткнул
16:28
и даже не удосужился по вланам раскидать
 
16:41
почти все js либы раскидал по пакетам
16:41
остался только openlayers
16:42
не так уж их и много было
16:42
но static капитально прочистился
16:43
как портируем все приложения на extjs, уйдут и ошметки плагинов jquey
16:44
иногда и мусор надо выгребать
 
    Share this page
    Share this page: