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: 11.04.2013
zi_rus #
05:19
lexus-omsk, ложные надежды, этого не случится
05:28
скажите кто знает, system notification inv.prefix_discovery посылает отчеты только по префиксам или по префиксам и ip?
mikevlz #
05:52
для ip там другой шаблон есть
In-nick #
05:52
Привет всем
zi_rus #
05:57
mikevlz, речь про нотификацию
mikevlz #
05:59
ммм...
zi_rus #
06:00
что?
mikevlz #
06:01
вот конкретно этим вещам пофигу, что ты отправишь
06:02
посмотри version_inventory pyrule
06:02
в самом конце используется системное уведомление. Можно использовать его как ссылку на notification group по сути. А отправлять что угодно
zi_rus #
06:03
я не хочу отправлять, он сам отправляет
06:03
мне приходят уведомления ip discovery и prefix discovery
mikevlz #
06:03
иии?
zi_rus #
06:03
я хочу знать могу я подписать человека только на префикс дискавери
06:03
или не могу
mikevlz #
06:04
если хочешь глянуть все, что там приходит добавь в шаблон {% debug %}
06:04
это выведет весь контекст. А вообще - раньше присылало все в ip address discovered, но это починили, я issue делал
zi_rus #
06:08
как все сложно, я просто хотел уточнить
06:08
если не смогу сделать как хочу, значит не смогу
In-nick #
06:40
Ребета, кто сталкивался с такой проблемой?
06:40
При заходе на SA > Managed Objects - выскакивает данная лажа:
06:40
(copy-pasta: http://tny.cz/fd188712 )
dvolodin #
06:50
alarm class удален
In-nick #
06:55
Есть возможность исправить?
dvolodin #
06:57
а зачем их было удалять?
06:57
./noc sync-collections должно помочь
Dmitry1 #
06:57
dvolodin: У меня ку-да-то пропали все интерфейсы из Inventory -> Interfaces. Выскакивает всплывающее окно с надписью "Failed to get interfaces"
dvolodin #
06:57
Дим, давай трейс
Dmitry1 #
06:58
Трейса нету. Диалоговое окно такое говорит
In-nick #
06:58
dvolodin: были удалены файлы cache mongodb так как занимали более 20ГБ.. может быть из-за этого?
Dmitry1 #
06:59
In-nick: ./noc sync-collections
dvolodin #
06:59
из-за того
In-nick #
06:59
всё остальное открывается и работает исправно
dvolodin #
07:00
я настоятельно не советую бездумно дропать базу монги
Dmitry1 #
07:01
dvolodin: В логах noc-sae я вижу, как время от времени отрабатываются скрипты get_interfaces и т.п. Базу не трогал.
dvolodin #
07:03
трейс из 500-й ошибки покажи
Dmitry1 #
07:03
да нету 500 ошибки
07:03
вылазит обычное диалоговое окно
In-nick #
07:03
после sync-collections - заработало. Спасибо.
07:03
Это нормально что при маленькой базе, mongo cache растет за пару месяцев (при минимальных обновлениях) до 20-30 ГБ.
07:03
?
Dmitry1 #
07:04
In-nick: А у тебя fm_archive запускается?
In-nick #
07:07
Мы используем только: Config & AddressSpace management + DNS
07:08
остальные не используем.
dvolodin #
07:10
Dmitry1: Посмотри в JS консоли
Dmitry1 #
07:11
Метка времени: 11.04.2013 10:11:02
07:11
Предупреждение: ReferenceError: reference to undefined property a.ownerCt
07:11
Источник: http://10.111.0.14/static/js/ext-all.js
07:11
Строка: 15
dvolodin #
07:11
это явно не то
07:11
HTTP-запросы смотри
Dmitry1 #
07:12
2013-04-11 10:01:44,281 500 GET /inv/interface/34/?_dc=1365664265252 (127.0.0.1) 373.53ms
dvolodin #
07:12
ну вот
07:13
а что внутри?
07:13
оно тебе traceback должно было вернуть
Dmitry1 #
07:13
о. вот еще нашел
07:13
2013/04/11 09:55:08 [error] 1477#0: *22598 open() "/usr/local/noc/contrib/lib/django/contrib/admin/static/admin/css/css/forms.css" failed (2: No such file or directory), client: 10.111.0.18, server: <yourdomain>, request: "GET /media/admin/css/css/forms.css HTTP/1.1", host: "10.111.0.14", referrer: "http://10.111.0.14/main/schedule/"
dvolodin #
07:13
это еруда
Dmitry1 #
07:14
так в том то и дело, что нету traceback
dvolodin #
07:14
руками сделай запрос
Dmitry1 #
07:15
я тебе на почту скриншот отправил
zi_rus #
07:18
Dmitry1, какой браузер?
Dmitry1 #
07:18
файрфокс
zi_rus #
07:19
Dmitry1, ну вот 2013-04-11 10:01:44,281 500 GET /inv/interface/34/?_dc=1365664265252 (127.0.0.1) 373.53ms открой
07:19
там будет requested url
07:19
открой его в соседней вкладке
07:19
там будет трейс
freeseacher #
07:20
господа. а напомните что надо сделать что бы скинуть состоние fing failed ? jyj e vtyz pfgjvybkjcm
07:20
оно у меня запомнилось
Dmitry1 #
07:20
ага. понятно. вылезло
07:21
<class 'mongoengine.queryset.InvalidQueryError'> Cannot resolve field "is_bridge" START OF TRACEBACK
dvolodin #
07:21
Во
zi_rus #
07:21
Dmitry1, это уже пофиксили
dvolodin #
07:21
давай трейс
zi_rus #
07:21
кажется
dvolodin #
07:21
да, фиксили
Dmitry1 #
07:21
значит не совсем пофиксили
zi_rus #
07:22
Dmitry1, обновись для начала
dvolodin #
07:22
давай полный трейс, посмотрю
mikevlz #
07:23
freeseacher: смотри методы get_status и set_status + сгенерируй пачку ивентов ping ok
07:23
методы ManagedObject
Dmitry1 #
07:23
http://pastebin.com/4s1hTY1P
freeseacher #
07:23
mikevlz, боюсь я не имею открывающего ping failed :)
mikevlz #
07:24
а он и не нужен...
dvolodin #
07:24
freeseacher: сделай json с event'а PING OK и залей его inject-event'ом на нужную железку
07:24
:)
freeseacher #
07:24
во.
07:24
само прошло
mikevlz #
07:24
испугалось...
freeseacher #
07:24
стоило только спросить :)
07:24
57 дней не пугалось
mikevlz #
07:25
клева...
freeseacher #
07:25
я взял событие на себя и "закрыл" его а потом нок перезапустил
07:25
заработало :)
07:25
пасиба всем
mikevlz #
07:26
ну событие ты закрыл. а статус managed_object соответствующего обновился?
Dmitry1 #
07:26
нашел уже у себя ошибку.
dvolodin #
07:26
ты что-то сам правил?
mikevlz #
07:27
а то будет - аларма нет, а железка не опрашивается, т.к. get_status = False
dvolodin #
07:32
кстати, профиль у тебя не запрещает ее пинговать?
freeseacher #
07:37
нет прфиль штатный
dvolodin #
07:50
вот кстати, когда будем переделывать managed object нужно будет сделать просмотр эффективных настроек
09:13
Патчик для DNS c GridVCS нормально работает?
freeseacher #
09:13
а где проверять :) ?
`kk #
09:25
да
09:26
у Skripnik_A надо ещё спросить
09:31
freeseacher, http://pastie.org/7312223
09:35
freeseacher, http://static.nocproject.org/irclog/2013.04.04.html
09:35
как-то так -)
Skripnik_A #
09:48
<dvolodin>, проблем с патчем не заметил. работает нормально
dvolodin #
10:14
можно начинать готовить его к проталкиванию в основную ветку?
`kk #
10:24
как по мне - да
zi_rus #
10:26
а что изменит переход?
10:26
похерится вся история до него?
`kk #
10:26
Skripnik_A, у тебя подцепилась история ?
Skripnik_A #
10:26
нет
`kk #
10:27
но зоны перенесли норм?
dvolodin #
10:27
./scripts/migrate-repo есть
10:28
должно перетащить
Skripnik_A #
10:29
<`kk>, зоны перенеслись нормально. а история для меня была не критична
zi_rus #
10:29
автоматом отработает при обновлении или придется после апдейта запускать?
10:30
dvolodin, а сможешь такое обойти, у меня некоторые версии конфигов различаются только незначащей строчкой которая изменяется непонятно почему, а в истории это сойдает новую запись, что неудобно, разрастается сильно
mikevlz #
10:34
zi_rus: config_filter_rule сделай
dvolodin #
10:40
zi_rus: В окончательном варианте сделаю миграцию
10:41
делаю сейчас апдейтилку для удаленных демонов
10:42
чтобы по аналогии с активатором обновлялись
10:42
для начала - sync
zi_rus #
10:54
mikevlz, это че такое?
Hanapi #
10:58
Привет! Мое сообщение видно?
zi_rus #
11:04
может да, а может и нет :)
Hanapi #
11:08
настраиваю активатор с веб интерфейса, для чего нужен Shard?
11:09
и с IP по IP что такое?
zi_rus #
11:12
ip это откуда он будет коннектиться к ноку, если на том же сервере то 127.1
11:12
shard default и не заморачивайся, это для крупных инсталляций
Hanapi #
11:27
3000 коммутаторов большая инсталяция?
Dmitry1 #
11:28
большая. скорее всего тебе понадобится несколько активаторов
Hanapi #
11:29
так как удобнее всего узлы группировать по активаторам, то их чосло будет около 100
zi_rus #
11:29
Hanapi, крупная исталляция нока, а не крупная сеть. если будешь делать несколько серверов, то понятие шард придется изучить, если будет один сервер с ноком, то хоть 100000 свичей
Hanapi #
11:30
понятно
mikevlz #
11:40
zi_rus: это pyrule, которое получает на входе конфиг, удаляет из него ненужное, передает дальше по цепочке
dvolodin #
11:43
3000 -- относительно немного
11:43
без шардов можно обойтись
zi_rus #
11:49
dvolodin, когда NOC 1.0 ?
dvolodin #
11:51
я предлагаю сразу выпустить NOC 7
11:51
:)
mikevlz #
11:54
тогда уж NOC 3.7.T
11:55
chfpe gjkexbncz 21-z dthcbz $)
11:55
сразу получится 21-я версия
dvolodin #
11:56
возвращаемся к политике релизов и политике нумерации
11:56
:)
Hanapi #
11:56
а вот SA --> Tasks --> Topology Discovery там ничего нет, как можно настроить есть дока?
dvolodin #
11:57
Hanapi: это ненужно
11:57
ты какую версию ставишь?
11:57
тут опять вопрос
11:57
что лучше
11:57
rolling release
11:57
частые релизы
11:57
или редкие
ufir #
11:58
а нельзя разделить разве ?
dvolodin #
11:58
по моим наблюдениям все, в основном, сидят на rolling
11:58
пусть и с некоторым запаздыванием
11:58
ufir: как разделить?
ufir #
11:58
одни для экспериментаторов, другие для продакшна
mikevlz #
11:58
Hanapi: http://kb.nocproject.org/pages/viewpage.action?pageId=7766259 почитай
dvolodin #
11:59
для эксперементаторов всегда есть tip
12:01
тут даже в другом вопрос
12:01
как планировать релизы
12:02
rolling не требует планирования вообще
12:02
просто лепишь фичи в произвольном порядке
12:03
короткий цикл обычно сводится к тому, что отбирается фиксированное количество задач (или заранее заданный объем работы), оставляется небольшой резерв для исправления ошибок
ufir #
12:03
ну если эти фичи не разваливают остальные - то почему бы и нет
dvolodin #
12:03
остальные фичи идут где-то в следующих релизах
12:04
так -- понятно, что будет в следющем релизе и примерно понятно, когда он будет
12:05
но разработка будет с сильным заносом
12:05
то есть механизм обговаривается и прорабатывается сейчас
12:05
а в разработку он может пойти через месяц-другой
Hanapi #
12:05
---В Inventory>Setup>Interface Profile надо добавить нужный профиль с заданными параметрами.--- Там только Models Sockets Vendors
dvolodin #
12:06
Hanapi: обновись
12:06
ты старую версию ставишь
Hanapi #
12:06
я запустил виртуальный образ с вашего сайта
dvolodin #
12:07
там последний релиз
12:07
./scripts/about | head -1 что говорит?
Hanapi #
12:07
noc-0.7(4).ova
12:08
|NOC|0.7(4)r6495|
dvolodin #
12:09
|NOC|0.7(4)r7626|
12:09
это последняя версия
12:09
1200 коммитов, там уже половина переписана
Hanapi #
12:10
ок
zi_rus #
12:12
dvolodin,релиз подразумевает некоторую заморозку внедрения новых функций и только их отладка
dvolodin #
12:13
не только
12:13
релиз подразумевает -- затрату времени на планирование
zi_rus #
12:13
а роллинг он стабильно нестабильный
dvolodin #
12:13
реализацию запланированного и исправление ошибок
12:13
тестирование
zi_rus #
12:14
и сбежал чтобы не смогли возразить :)
dvolodin #
12:14
с заморозкой новых фишек
12:14
подготовку всех поддерживаемых дистрибутивов
12:15
включая образы для VM и тестирование результата
12:15
написание release notes, анонсы на сайте, форумах, социальных сетях
zi_rus #
12:15
до 1,0 все равно будет роллинг, потому что тупо еще не реализовано все что нужно даже из основного функционала
12:16
просто для серьезной инсталляции нужна стабильность
dvolodin #
12:16
а стабильность может дать только тестирование
zi_rus #
12:17
тестирование перед релизом
dvolodin #
12:17
и не только
12:17
тестирование инсталляции
zi_rus #
12:17
само собой
dvolodin #
12:18
у буржуев есть такое явление, как PoC
12:18
когда пишется набор требований, методика тестирования и тестовые примеры
12:19
и если система прошла все испытания -- она потом достаточно долго работает именно в такой конфигурации
12:20
второй вариант -- 2-3 инсталляции, одна из которых - продуктивная
12:23
вообще хочется разделить разработку ядра и настроечную часть
12:24
по логике вещей -- правила и классы FM нужно выпихнуть по аналогии с тушенкой и развивать отдельно
12:25
по тому же принципу пойдут и модели для inventory
12:25
там можно более гибкое планирование применять
12:26
те же правила классификации пишутся когда присылают новые события
12:26
их нет смысла заранее отбирать, что пойдет в релиз
Dmitry1 #
12:26
dvolodin: Смотрел презентацию PostgreSQL 9.2 ? Там сделали новое поле, которое заточено чисто под JSON
dvolodin #
12:26
да, смотрел
12:27
это косметика
12:27
там можно проиндексировать по аттриубуту этого поля?
Dmitry1 #
12:27
http://www.postgresql.org/docs/current/static/datatype-json.html
dvolodin #
12:27
это всего лишь валидация
Dmitry1 #
12:28
Это тип поля, такой же, как и INT
dvolodin #
12:28
грубо говоря, в монге я могу проиндексировать и по вложенным атрибутам
Dmitry1 #
12:28
Возможно, в 9.2.5 будет больше возможностей работы с ним
dvolodin #
12:29
грубо говоря
12:29
у меня есть Subinterface
12:29
я могу проиндексировать их по untagged_vlan и по списку tagged_vlans
Dmitry1 #
12:29
я понял.
12:30
но уже только то, что мы можем хранить такие данные не в mongo, а в postgresql - это уже плюс
dvolodin #
12:30
а так -- ты в django можешь определить свой тип поля
12:30
:)
12:30
хранить в тексте, а заворачивать/разворачивать питоновские объекты
12:31
у меня был sa/models/maptask.py
12:31
:)
12:31
для примера
Dmitry1 #
12:31
кстати, ты уже месяца три назад обещал сделать рыбу для объектов инвентори
12:32
хотя бы текстовую, чтобы можно было тупо набивать ее
dvolodin #
12:33
морду наклепаешь?
Dmitry1 #
12:33
без морды пока. тупо CSV или JSON
dvolodin #
12:39
сразу же захотят автообнаружение конфигурации
12:40
потом -- морду для просмотра награбленного
Dmitry1 #
12:40
ага
12:40
я уже думал над автообнаружением
mikevlz #
12:40
ну положим, морду я как-нить склепаю, дальше что?
Dmitry1 #
12:40
будем писать скрипты, копающииеся в о внутренностях оборудования
mikevlz #
12:41
PendingLinkCheck есть в апстриме? Failed Tasks тоже вроде еще маринуется
Dmitry1 #
12:42
А дальшне - анализ, почему какой-то криворукий монтажник соединил два рядомстоящих свича через 100 мегабит, хотя в обеих этих свичах есть свободные гигабитные разъемы?
12:42
Или, почему, при пустующих SFP дырках свичи соеденены через медь с помощью медиаконвертеров.
12:43
Или, почему, если у двух свичей дырки на 1 гигабит, связь между ними поднята на 100 мегабит
12:43
И т.д.
dvolodin #
12:43
для автообнаружения нужно, чтобы скрипт выдавал уникальный идентификатор, по которому можно найти модель модуля
Dmitry1 #
12:44
Это уже задача скрипта.
dvolodin #
12:44
не тольео
12:44
это общая политика
Dmitry1 #
12:45
Мы уже говорили об этом. Шасси, блоки питания, линейные карты, модули, порты.
12:45
у каждого есть версия, серийный номер
12:45
И, соответственно, таблица совместимости
12:46
Можно XML, можно JSON
12:50
Начать с портов. RJ-45, SFP, XFP
Hanapi #
12:55
root@amd64:~# hg clone http://hg.nocproject.org/noc noc
12:55
requesting all changes
12:55
adding changesets
12:55
transaction abort!
12:55
rollback completed
12:55
abort: stream ended unexpectedly (got 49 bytes, expected 154)
12:56
почему так делает?
Dmitry1 #
12:56
у меня нормально
Hanapi #
12:58
несколько дней назад у меня тоже нормально делало, а вот только что так получилось
Dmitry1 #
12:59
фаза луны?
12:59
Вон dvolodin автоматический "апдатер" закоммитил. теперь не нужно будет мучаться с mercurial
Hanapi #
13:01
может они перезаливают релиз?
Dmitry1 #
13:01
кто это загадочные "они" ?
Hanapi #
13:02
авторы проекта
Dmitry1 #
13:02
dvolodin: почини mercurial через http
dvolodin #
13:03
перезапустил его
Hanapi #
13:06
все равно не получается
13:08
Дима попробуй скачать
13:16
что то с репозиторием случилось?
zi_rus #
13:25
народ, а какие у нока возможности по взаимодействию с внешними системами?
13:26
есть ли возможность запрашивать списки интерфейсов например
13:26
нет возможности лезть прямо в монгу
13:26
а потребность есть
dvolodin #
13:26
а сейчас?
13:27
zi_rus: REST/JSON
zi_rus #
13:27
dvolodin, ты лаконичен
13:28
но я понимаю, про это был разговор относительно ИПАМ. другие модули тоже это имеют?
13:28
или я не понимаю сути?
13:28
dvolodin, нет не открывается bt
dvolodin #
13:28
он общий для всех
zi_rus #
13:31
ok, я понял, покурим этот вариант
Hanapi #
13:33
а вот пошло
dvolodin #
13:43
freeseacher у нас кудесник по заговорам нока через http
zi_rus #
13:46
допрошу его когда соберусь с мыслями
13:48
нужен спококойный промежуток времени
Hanapi #
13:53
./scripts/post-update в конце выдало ImportError: No module named manifest
13:53
post-update: : sync-perm failed
13:53
Terminating
13:53
$
13:53
два назад собирал все быо нормально
dvolodin #
13:54
Hanapi: докоммитил его
13:54
обновись
Tweet
Share this page
Share this page: Tweet