nocproject.org
03:42
кстати да, насчёт выбора managed object из списка в инвентори - прямо какое-то глючное оно... отображается только первые n объектов, дальше прокрутки нету... есть поиск, но он тоже странноват - не даёт набирать некоторые символы, например, "-" и "."
05:30
lexus-omsk, меня скорее смутило то что он по любому поводу очищает это поле, хотел букву исправить, а он раз и вообще все стер
05:32
Последние коммиты для inv.interface посмотрели?
05:33
вроде неплохо вышло
05:34
dvolodin, видел замечания по поводу выбора МО в inv.int?
05:37
dvolodin: честно говоря, только сейчас, перепроверив то, что было в коммитах, смог найти эти кнопки.. особенно show mac (она и должна быть "галочкой"?)
05:37
нет, для нее иконку надо подобрать :)
05:38
яблоко ставь, типа МАС
05:38
:)
05:39
dvolodin: при добавлении mac-адреса к хосту в Address space management вылезает "can't adapt type 'MAC'"
05:39
я увидел Link/Unlink и подумал это новая угребищная кнопка edit, а потом подумал зачем она тут :)
05:40
хотя может тут надо будет сделать как в managed objects - scripts - чтобы можно было быбрать конкретное действие - не только get_mac
05:40
а что еще можно для Л2 порта посмотреть?
05:41
как минимум можно сбросить маки и дернуть порт
05:41
потом в плагины это вынесем
05:43
в общем самое главное - теперь в базе можно хранить топологию и ее редактировать
05:43
topo discovery работает?
05:44
теоретически его результат можно влить в базу
05:45
можно попробовать и посмотреть качество определения линков
05:45
надо подумать еще над интеграцией с другими системами
05:46
на предмет выдирания данных из того же NNM
05:47
если на время добавить поле с координатами для объектов - можно наложить на карту и прорисовать линки
05:47
а в inv.interface сортировку пофиксили?
05:47
а там там fa0/1, fa0/10 - fa0/19, fa0/2
05:48
ладно, это лирика
05:49
почему железка, которая лежит у меня на столе выключенная, ноком видится как ping ok? :)
05:49
это не лирика, это неудобно, но оно везде так, я уже говорил про это
05:49
надо issue создать чтобы не забывали
05:51
с патчем
05:51
:)
05:52
вот вам задачка
05:52
ё
05:52
пока только с проблемой, так источник патча может быть любым
05:52
решение которой позволит сделать и сортировку интерфейсов
05:52
есть строка в которой идут буквы и цифры
05:52
надо разбить ее на список
05:53
в котором буквы и цифры лежат по порядку
05:53
"fa 0/1" -> ['fa ', '0', '/', '1']
05:54
"ge-1/0/1.13" -> ['ge-', '1', '/', '0', '/', '1', '.', '13']
05:54
после этого в два шага делается нормальная сортировка любых интерфейсов
06:04
>>> print seq("Fa 0/1")
06:04
['Fa ', 0, '/', 1]
06:04
>>> print seq("Fa 0/1.15")
06:04
['Fa ', 0, '/', 1, '.', 15]
06:04
>>> print seq("ge-1/0/1")
06:04
['ge-', 1, '/', 0, '/', 1]
06:04
>>> print seq("ge-1/0/1.15")
06:04
['ge-', 1, '/', 0, '/', 1, '.', 15]
06:04
получилось :-/
06:16
теперь нормально вроде сортирует
06:52
объясните мне, пожалуйста, откуда берётся инфа в managed objects для выставления зелёного крыжика и как связано поле адрес в managed objects с адресами из ipam
06:53
если внутри префикса я нажимаю старт пинг, то в логи сыпется инфа про то что некоторые адреса не существуют
06:54
адреc в managed object с ipam не связан
06:54
но попадет в него при discovery
06:55
у меня вообще всё отображается активным, хотя некоторые железки точно не на связи
06:55
куда копать?
06:56
путь к fping проверь
06:56
Unbeerable, а у тебя вообще пинговалка включена?
06:56
каждые пять минут запускается fm.ping_check
06:56
проверил, был неправильный, исправил на /usr/sbin/fping
06:57
нок перезапустил
06:58
trap source установлен?
06:58
для объектов
06:59
потому и не проверяет
07:00
я был уверен что trap source нужен только для корректной обработки входящих снмп-трапов
07:00
у него презумпция невиновности
07:00
а пинговалка отдельно
07:00
пинги тоже по нему
07:00
по крайней мере - пока
07:00
давно же переименовать хотели в event source :)
07:01
так, я правильно понимаю, что если trap source не установлен вообще, то он его не будет пытаться пинговать?
07:02
хорошо
07:02
но вчера у меня ещё была другая проблема
07:03
я видел евенты пинг ок
07:03
до узла который точно недоступен
07:03
это надо уже fping проверять
07:04
руками я его запускал до этого хоста
07:04
он говорил что хост не на связи
07:06
и сейчас прописал трап сурс до другой железки, появился евент пинг ок :(
07:06
это вживую надо смотреть
07:06
путь к fping прописывается в noc-probe.conf?
07:08
нет
07:08
у activator
07:08
пробы я переделывать буду
07:10
от блин
07:10
ладно, посмотрим теперь :)
07:11
ура! пинг фэйлд
07:11
смс как проще всего прикрутить?
07:12
и noc-probe, получается, можно пока вообще отключить
07:17
dvolodin, зачем путь к fping прописывается в трех разных местах?
07:17
активаторы и пробы могут быть на разных хостах
07:17
и даже на разных платформах
07:18
Unbeerable: sms via e-mail - что-то вроде того 8913xxxxxxx@mtslife.ru
07:23
dvolodin, я понимаю что ты хотел этим сделать, но может стоит упростить?
07:26
это пока не самое страшное
07:27
но я уже думал на тему вынесения etc/noc-paths.conf
07:31
нам еще придется вычищать всякие рудименты из IPAM
07:31
типа свойства "gw" и привязки к managed object
07:50
если у меня есть 100 объектов, у части из которых не установлен этот самый trap source, разумно будет выгрузить в csv и загрузить обратно?
07:51
перед загрузкой обратно при этом надо будет всё грохнуть, потому что он только импортирует, а не обновляет?
07:53
Unbeerable, sql рулит
07:56
ох
07:56
зачем постгрес и мускул такие разные
07:57
это еще чего. вот монго там да.
07:58
и то верно
07:58
понапридумывали разных бд
07:59
монго зачет. sql отстой :)
08:05
не надо ничего грохать
08:17
Unbeerable: обновляет, если попросить
08:18
ключик -r
08:18
в csv-export
08:26
что-то как-то хуавеи по-новому начали глючить
08:26
2012-05-25 12:34:01,459 Script Huawei.VRP.get_ip_discovery(10.200.210.10). Timeout set to 120
08:26
2012-05-25 12:34:01,459 1 script threads (50 max)
08:26
2012-05-25 12:34:02,480 [script-10.200.210.10-Generic.get_ip_discovery] Unhandled exception
08:26
2012-05-25 12:34:02,529 Script Generic.get_ip_discovery(10.200.210.10) is completed
08:28
руками прогони по этой железке и посмотри traceback
08:39
08:39
странное что-то там
08:41
вывод не попал под регулярное выражение
08:42
вот козлы-то
08:42
r\n VRP (R) Softwa
08:43
добавили безобидный пробельчик :)
08:43
кинь тушенку на beef@nocproject.org
09:11
ufir: пофиксил
09:14
на фоне возни с JIRA пришла в голову хорошая идея
09:14
насчет доработки механизма селекторов
09:15
может быть, нам сделать по аналогии SQL-подобный язык для селекторов
09:15
типа
09:16
name ~ '^pe-' AND (administrative_domain IN ('city1', 'city2', 'city3')) AND @BORDER
09:17
или
09:17
@CITY1 OR @CITY2 OR @CITY3
09:19
блин, почему в опенофисе нет функции gethostbyname() :)
09:20
почему с нуля?
09:20
существующие селекторы отлично на него ложатся
09:22
и в SQL он транслируется один к одному
09:32
и туда же подцепить версии софта и модели
09:45
а на какие действия/бездействия влияет галочка is managed?
09:47
dvolodin, это тебе и еще определенному кругу лиц будет понятен этот бредоподобный язык и как с ним работать. почему тебе не нравятся простые решения?
09:47
из селекторов должно автоматом исключаться
09:48
zi_rus: тем не менее такой же язык есть в JIRA и используется для генерации отчетов
09:48
никто не заставляет его использовать
09:48
кстати про is_managed
09:49
я думаю его надо окончательно искоретить в пользу ResourceState
09:49
у состояний есть галочка is_provisioned
09:49
тогда, в частности, появится возможность заносить железки в базу заранее
10:06
Я уже год жду, когда можно будет заносить железки в базу вручную.
10:07
Тогда бы во многих скриптах можно было бы отталкиваться от конкретной железки, а не от абстрактного профиля
10:08
топологии дождались, лиха беда начало
10:08
:)
10:08
dvolodin: Сделай, чтобы в inventory можно было заносить модели железок. У того же d-link'а их около сотни.
10:10
А потом уже будем привязывать "виртуальные" порты, которые нашел discovery к физическим портам, которые жестко забиты в inventory
10:11
а вот ещё вопрос, как правильно использовать инфу из unclassified trap oids?
10:12
у меня там разные модификации каталистов 2950
10:12
их события линк ап/даун никак не распознаются
10:12
Серийники, версию hardware, версию шасси и т.п.
10:13
Unbeerable: Создай issue и понакидай туда raw-values
10:13
Dmitry1, и набивка серийников списком на одну железку per-line-card
10:13
Можно сделать скрипт, который будет пытаться "вытянуть" серийники и подобную инфу с железяк
10:14
аналог "show inventory" для Cisco
10:15
Там, например, можно вытянуть даже тип SFP модуля.
10:17
Заодно, вытягивать "capabilities" с интерфейса. Например, для FreeBSD
10:17
раз уж за инвентори схватились, надо сделать набивку базы не только списком портов, но и другой полезной информацией
10:17
supported media:
10:17
media autoselect mediaopt flowcontrol
10:17
media autoselect
10:17
media 100baseTX mediaopt full-duplex
10:18
media 100baseTX
10:18
media 10baseT/UTP mediaopt full-duplex
10:18
media 10baseT/UTP
10:19
Или у D-Link
10:19
а то несколько раз теряли свичи, по серийнику надо было найти, а тут пфф-ф
10:19
Port : 22
10:19
--------------------
10:19
Auto Negotiation : Enabled
10:19
Capability Bits : 1000M_Full
10:19
Capbility Advertised Bits : 1000M_Full
10:19
Capbility Received Bits : 1000M_Full
10:19
Port : 23
10:19
--------------------
10:19
Auto Negotiation : Enabled
10:19
Capability Bits : 10M_Half,10M_Full,100M_Half,100M_Full,1000M_Full
10:19
Capbility Advertised Bits : 10M_Half,10M_Full,100M_Half,100M_Full,1000M_Full
10:19
Capbility Received Bits : 10M_Half,10M_Full,100M_Half,100M_Full,1000M_Full
10:20
Кроме серийника очень важна hw-revision, дата изготовления, bootprom и т.п.
10:20
Dmitry1, а у циски это зависит от вставленной SFP
10:21
пока модуль не всунешь это будет не определено
10:21
В частности, в зависимости от hw-revision есть возможность устанавливать разные версии прошивок
10:21
Согласен
10:21
Но!
10:22
Если всунуть SFP модуль с одной стороны, то человеку за сотню километров можно сказать, какой парный модуль выбрать
10:22
коллеги, вы не забывайте, что inventory, это не сколько программные средства, сколько методология их использования
10:23
Не-не. Я как раз хочу аппаратные средства.
10:23
Версию шасси, серийник и т.п.
10:23
я имею в виду, что inventory - это не только софт
10:23
Ну очень надо это иногда.
10:23
который хранит описание элементов сети
10:23
dvolodin, методология это иметь серийники в базе, знал бы ты какое это подспорье в геморойных вопросах бухгалтерии
10:24
zi_rus: я главным инженером работал, не надо мне про бухгалтерию
10:24
а кто с какой частотой ping_any запускает?
10:24
Как пример, иногда фирмы отзывают некоторые серии оборудования. Например, у меня это было и с Cisco, и с D-Link
10:24
я вот поставил 5 минут, думаю насколько это разумно мало или много
10:24
10-сантиметровые пачки актов на подпись - это нормальное явление
10:25
Unbeerable: я раз в минуту ставлю
10:26
А вот если бы эти пачки генерились автоматом из inventory - у нас бы NOC с руками оторвали
10:26
dvolodin, да я не про это, или про это :) когда вот из такой пачки они что-то протеряют, а тебе искать что и где
10:26
что и делали регулярно
10:27
Зачастую списки VLAN, IP, VRF и т.п. админы сами знают. Но вот то, что их постоянно напрягают писать бумажки с серийниками, датой ввода в эксплуатацию и т.п. - это очень напрягает.
10:28
ufir: классный хлам в syslog
10:29
Дим, мы на E600 по RMA поменяли 8 линейных карт из 6 :)
10:29
точнее, после того, как мы 2 купленные линейные карты поменяли 8 раз, у нас их стало 6
10:30
40 десяток и 190 гигов в итоге
10:30
3 хардварные ревизии
10:30
Т.е. к объекту SA привязать еще и историю изменения его "потрохов"
10:31
у каждого потроха должна быть его история жизни
10:31
Как минимум - версий прошивок
10:31
типа стояло там - то, сняли, оттащили на скгад, взяли и поставили туда-то
10:32
ufir,
NOC-348 - не тоже самое? давай проголосуй, если оно, ты даже не вторым будешь с этим
10:32
dvolodin, так может это замутить, сложных алгоритмов тут нет
10:33
zi_rus: я не могу мутить все одновременно и сразу
10:33
т.е. кроме "общих" объектов SA еще заводить кучу мелких объектов, таких как "сетевая карта", "линейная карта", "модуль". И это как раз хранить в inventory
10:33
только собрать нужную информацию, и интерфейс для взаимодействия с ней
10:33
кстати, кому нужны серийники
10:33
сделайте в конце концов custom field для managed object'а
10:34
zi_rus да, оно самое
10:34
и кладите их туда
10:34
я для таких вещей pyrule на scheduler вешаю
10:34
Не хочу "custom field". Хочу стандартное поле
10:35
dvolodin, ты же сам говорил, у МО может быть несколько серийников, а еще они просто не собираются с железа, как их туда положить
10:35
zi_rus только похоже я уже голосовал за него ;)
10:36
ufir, о как. может в комментах приложишь более читаемый трейс, а то мой просто никакой
10:36
Надо, тогда, как минимум сделать объект "chassis". Куда привязывать серийники
10:36
Т.е. "забить" пока на модули, линейные карты и т.п.
10:37
И привязать к объекту SA абстрактный объект "chassis",торого будет серийник, hw-revision и дата выпуска
10:38
это велосипедство уже
10:38
Dmitry1, надо еще дальше идти, у циско сейчас новая технология, называется nv, несколько шасси объединяются в кластер
10:39
dvolodin, а что не велосипедство? может иерархическая структура?
10:39
сейчас и такого велосипеда нет. Выкручиваемся тем, что добавляем произвольные поля в скрипт "get_version"
10:40
граф
10:40
точнее - мультиграф
10:42
ну да примерно это имел ввиду
10:44
попраил csv export/import для адресов и префиксов
10:51
dvolodin, в хроме не отображается кнопка edit
10:51
HI
10:52
I just try to download the 0.7.3 OVA image.
10:52
But the link seems not to work
10:54
dvolodin: 99,9% свичей обычные одноюнитовые железки без всяких модулей. Хоть с них то серийник и hw-revision выдирать можно?
10:54
hwinkel: seeder is active
10:54
Dmitry1, у меня таких железок в ноке 17 штук.
10:54
все остальные модульные
10:54
У меня на 1 многоюнитовую железку приходится сотня одноюнитовых
10:54
Dmitry1: вот я и говорю - для своих применений можно сделать custom field и заполнять его либо руками, либо автоматом
10:55
и не ждать, пока в NOC это появится
10:55
а сейчас сделать "абатрактный" объект chassis можно? И к нему привязывать серийники и т.п. Для 90% задач этого хватит.
10:55
dvolodin, а давай дропнем psql :) ?
10:56
даешь много кастом филд
10:56
хороших и разных
10:57
Так жизнь заставляет. Нам нафиг не нужна база IP, VLAN и т.п.
10:57
я почитав про монгу вообще теперь не знаю нах psql нужен. он плохой и не интересный
10:57
например для IPAM наделали их с десяток, плюс несколько отчетов кастомных, плюс заполнение несколькими pyrule
10:57
а 13:35 < dvolodin> я для таких вещей pyrule на scheduler вешаю
10:57
а можно поподробнее
10:57
Из всего многообразия модулей NOC я использую только FM и CM
10:58
можно сделать pyRule с интерфейсом IPeriodicTask и повесить его в Main > Setup > Schedules
10:58
Understood, need to install torrent client
10:58
и заодно расскажите как поклирить все алармы по обжекту
10:58
May I go to install from source then
10:58
def my_rule(timeout):
10:58
дальше -- все, на что фантазии хватает
10:59
например, в одном случае мы запускали MRT которая выдирала таблицы маршрутизации во всех VRF, кроме глобального и клала в IPAM
10:59
Но вот в том же FM мне абсолютно бесполнзны сообщения вида "MAC 00:17:0E:82:08:50 Flap detected on vlan 254: Gi 0/25 -> Gi 0/26"
11:00
ну почему бесполезны
11:00
Потому как я совершенно без понятия, что такое 00:17:0E:82:08:50, vlan 254, Gi 0/25 и Gi 0/26
11:00
колечко щелкнулось
11:01
в принципе можно выдрать description'ы для интерфейсов
11:01
по аналогии с link down
11:01
и название железки, у которой есть такой MAC адрес
11:01
Т.е. движение в сторону inventory
11:02
хотя бы
11:02
можно и интерфейс по MAC'у дернуть
11:03
название железки тут важнее
11:03
hwinkel: you can download OVA and upgrade it to last revision by single command
11:04
Т.е. нужно дорабатывать и еще раз дорабатывать inv/datasources.py
11:04
чем больше информации можно будет оттуда выдрать - тем лучше
11:04
много - тоже нехорошо
11:04
отвлекает
11:05
Вплоть до того, что в web-морду скрипта SA (например) get_ifindex вставить выпадающий список с именами и описанием интерфейсов
11:06
Вот скажи мне. В чем универсальность SA, если я имя интерфейса должен ручками вбивать?
11:07
Опять же. в web-морде get_arp VRF пишется вручную.
11:07
Такое впечатление, что SA совершенно не привязан в IPAM, VC, Inventory и т.п.
11:11
dvolodin, а нок кроме заполнения ipam при дискавери, будет потом изменять что-то? привязка к МО например
11:12
я вот от Володина никак не могу добиться заполнения базы peers автоматом
11:18
хотя та же команда Cisco "show ip bgp summary" выдает мне список всех пиров и AS, приаязанных к ним.
11:22
потому что не у всех циско
11:22
Dmitry1, циска выдает, а остальные нет
11:22
и это только в ios оно так
11:22
в ios xr нужно говорить show bgp sum
11:23
в D-Link набери "show bgp summary". Выдает информацию, аналогичную цисо
11:24
Плюс, у нас есть профиль Zebra.Zebra. Где выдаваемая информация аналогична.
11:26
Плюс, подозреваю, что у Huawei есть такой же аналог
11:32
ну и juniper есть
11:32
нужен интерфейс для выдирания данных
11:34
а чего там думать? Правтически один в один повторить PM->Peers
11:35
{"Local AS", "Remote AS", "Local IP", "Remote IP"}
11:35
А. Еще "Peering Pont" оттуда взять
11:36
Остальное можно вручную "набить" пока
11:36
Фильтры и т.п.
11:36
потом можно будет прикрутить
11:37
Соответственно нормально заработает FM с сообщениями о проблемах BGP
11:40
Только в том случае, если "забита" база Peers
11:41
пиры не клиенты, их не так много, можно и раками поработать
11:45
:)
11:45
*руками
11:46
у меня последнее время подозрительно высокое число опечаток
11:50
подсознательное рвется на волю
11:52
hiddenman: UTF8, please
11:55
dvolodin: не хочу руками.
11:55
Хочу автоматом.
11:56
Тем более, что такую возможность легко реализовать.
11:56
коллеги, задам, наверное, популярный вопрос: в NOC не собираетесь делать поддержку "кабельного журнала"? мы сейчас внедряем netdot только из-за того, что там всю СКС можно расписать и это очень и очень нужно и полезно. но тянет на NOC из-за его функциона
11:56
ла :)
11:56
Представь себе установку NOC "с нуля". Админу прийдется вручную вбивать всех пиров
11:57
hiddenman_: Планируется в inventory
11:57
Dmitry1, ну ты можешь же налабать пару скриптов, под разные профили, а прикрутить их к базе дело второе
11:57
Dmitry1: а это только планируется или уже есть в транке наработки какие-то?
11:58
hiddenman_: планируется
11:58
уже с полгода планируется, емнип
11:58
zi_rus: До скриптов нужен интерфейс в sa/interfaces
11:58
hiddenman_, уже есть в мечтах, тут столько всего планируется, что не дождешься
11:58
[evyscr]: о, дядя, привет :)
11:58
ну топологию ведь сделали :)
11:58
dvolodin: а что за топология? как реализована?
11:59
hiddenman_: линки между интерфейсами
11:59
netdot просто сильно умный, сам всё умеет строить, дай ему только волю. сканит все железки, вытягивает все данные, всё прописывает
11:59
dvolodin, где сделали? ФМ уже может root cause искать?
11:59
Блин, жил бы я поближе к Москве, уже приехал бы к Володину с пивом, и этот интерфейс был бы уже.
12:00
hiddenman_: о, привези соседа.
12:00
Dmitry1: я живу в Москве, куда ехать? :)
12:00
evyscr: ээ. какого соседа и куда привезти? :)
12:00
Дим, ну набросай его, а
12:01
набросаю
12:01
только скорее всего на следующей неделе
12:01
только там ведь дофига информации
12:01
neighbor, address, AS это еще цветочки
12:02
Нам минимум нужен. "Рыбу" забить.
12:02
ну как сказать
12:03
address-family тоже интересны
12:03
hiddenman_: каким образом netdot кабельный журнал заполнит?
12:04
или это все-таки линки между портами?
12:04
dvolodin: не, это он, конечно, не умеет. я про топологию, которую он умеет сам строить на основе данных таблиц форвардинга, arp там, интерфейсов и т.п.
12:04
NOC тоже умеет
12:04
+ lldp/cdp/fdp +ыез
12:04
+stp
12:07
о как. это хорошо. вижу, что все умеет и развивается. сильно бы его продвинуло в глазах общественности наличие СКС :)
12:07
прямо хоть садись и помогай написать, благо питон люблю, django умею
12:07
общественность готова помочь?
12:10
работы прорва :)
12:11
от помощи здесь не отказываются, только помошников мало
12:12
ну вот опять, *помощников
12:13
hiddenman_: с ExtJS знаком?
12:14
ох, вот это нет, но можно почитать, на js-е чистом писал всякие плюшки
12:14
но опять же, это сложный модуль , СКС эта
12:19
можно начать с простого :)
12:50
простое - это взять железку, поддержки которой нет в NOC и попробовать сделать для нее профиль
12:52
можно с морды начать
12:52
нам сейчас на морду нужнее люди
Share this page
Share this page: