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: 01.09.2014
TSergey #
03:23
всем привет
03:23
кто может поговорить о noc / sa / interfaces / igetinterfaces.py?
freeseacher #
03:35
хай
03:35
а чего онем говорить ?
TSergey #
03:39
о вот там в L2 portchannel есть тип type = "aggregate"
freeseacher #
03:39
ну
TSergey #
03:40
а в типах интерфейсов такого нет
03:40
"type": StringParameter(choices=["physical", "SVI", "aggregated","loopback", "management","null", "tunnel", "other", "unknown"]),
03:41
в принципе, видит что он входит в портчэнал если и "physical" сделать
03:42
но если бы был тип "aggregate", то порты с таким типом не отражалиль бы во вкладке "Phisical" в интрефейсах
03:42
что наверное неправильно?
03:43
этот бы момент прояснить и можно начать собирать патч для портчэналов в профиле DGS.3100
03:47
freeseacher: и вот еще NOC-1427, циска может отдавать во вланах парамтр 'more'? или что это, что-то вроде пейджера?
03:49
*['не отражались', 'параметр']
04:06
freeseacher: ау?
freeseacher #
04:13
занят пока
_4ePTeHok #
05:24
TSergey, что за параметр такой?
TSergey #
05:24
_4ePTeHok: ты про что?
05:36
dvolodin: привет
05:37
в noc / sa / interfaces / igetinterfaces.py в L2 portchannel есть тип type = "aggregate"
05:37
а в типах интерфейсов такого нет
05:37
"type": StringParameter(choices=["physical", "SVI", "aggregated","loopback", "management","null", "tunnel", "other", "unknown"]),
05:37
в принципе, видит что он входит в портчэнал если и "physical" сделать
05:37
но если бы был тип "aggregate", то порты с таким типом не отражалиль бы во вкладке "Phisical" в интрефейсах, что наверное неправильно?
05:46
аааа, "доктор, меня все игнорируют" :)
dvolodin #
05:48
portchannel - логический интерфейс
05:49
в физике должны быть физические порты
05:49
portchannel попадет в LAG
TSergey #
05:55
значит в noc / sa / interfaces / igetinterfaces.py в блоке L2 portchannel ошибка в описании портов
05:55
https://bitbucket.org/nocproject/noc/src/8eb5c785c6a0f104f2989736d5f77a91c53d8283/sa/interfaces/igetinterfaces.py?at=develop
05:55
в описании типа порта
05:57
а еще, как обратиться к функции, которая находится в __init__.py ?
05:57
например из get_portchannel? неужели нужен import?
_4ePTeHok #
06:05
по примеру цископрофиля, функция преобразования имени порта
06:05
оно автоматом заимпортится
TSergey #
06:06
что-то у меня так не получилось
06:06
расскажи, функция конвертирования в инит, а вызывается из гет_интерфейс, правильно понимаю?
_4ePTeHok #
06:07
c_iface = self.profile.convert_interface_name(iface)
06:07
в скрипте
06:08
в ините оно def convert_interface_name(self, interface):
TSergey #
06:08
да, она через указание класса вызвается
06:08
self.profile.
06:09
ща свою функцию раскрытиея скобок для DGS.3100 перемещу в инит
06:09
*раскрытия
06:21
_4ePTeHok: да, так сработало
_4ePTeHok #
06:21
еще бы)
TSergey #
06:22
а если self.функция --- то взяло бы из инит вне класса профиль?
06:22
что-то так не зацепило
_4ePTeHok #
06:25
у тебя класса нет
06:25
профиль - это класс
TSergey #
06:28
смотри, в noc / sa / profiles / DLink / DGS3100 / __init__.py есть фунция def DGS3100(v), вне класса
06:28
как она будет вызываться из скриптов профиля DGS.3100 ?
06:29
self.DGS3100(что-то там)?
06:30
функция раскрытия скобок, нужно ли ее пихать в класс Profile
Night_Snake #
06:37
Dmitry1, а ты get_LLDP _neighbors на DxS_Dlink_Cisco_CLI не смотрел?
TSergey #
06:37
так нет его вроде
Night_Snake #
06:38
ну вроде в списке светится) придет прочитает
06:38
камрады, доброе утро. А подскажите пожалуйста, поиск линков по MAC-discovery должен работать? Или тлоько по lldp/cdp?
06:38
а то у меня линки почему-то строятся только по lldp
TSergey #
06:39
Night_Snake: маки только по L3
Night_Snake #
06:39
TSergey это как?
TSergey #
06:40
L3 интерфейс маршрутизатора --- сетевая карта
Night_Snake #
06:41
Не, не понимать) mac-discovery же fib собирает, при чем тут роутер? или меня глючит?
evyscr #
06:42
глючит
TSergey #
06:43
Night_Snake: только в такой связки достоверный линк
06:43
*связке
Night_Snake #
06:43
т.е. если lldp/cdp нету. то тока ручками? :(
TSergey #
06:44
на цисках еще по stp умеет
06:45
(но, имхо, с ошибкой)
Night_Snake #
06:45
не, stp там кусочками, так что тоже не вариант. Эх... придется ручками, да
TSergey #
06:46
заряжай все, может кандидатов найдет, закоммитишь
Night_Snake #
06:47
не, пробовал уже) он по lldp тока кандидатов нашел
06:47
а у меня des-3028 не хочет чего-то дружиться с более новыми. Т.е. он соседей видят, а соседи его нет - это с самих свичей если. Длинк... :(
06:47
А на цисках все влет по cdp встало
evyscr #
06:47
хехе
TSergey #
06:48
evyscr: мы догадываемся в чем дело, да?
evyscr #
06:48
дык
Night_Snake #
06:48
Длинк - говно?)))
TSergey #
06:48
ну это не секрет
06:48
просто evyscr делел патч
06:48
у меня работает
Night_Snake #
06:48
Это-то да)
06:48
А патч закоммитили?
TSergey #
06:48
но на 3028 я не замечал проблем
evyscr #
06:48
нет
Night_Snake #
06:49
Ну я сегодня детально гляну что с чем вяжется, а что нет. На выходных влом было туда лезтьь
TSergey #
06:50
Night_Snake: NOC-1412
06:50
тут есть патч, в последнем комментарии
evyscr #
06:51
там скорее опять хаки вылезли
TSergey #
06:51
в 1425 и 1422 я описывал то, как проблема выглядит у меня
06:51
Night_Snake: какие параметры ты включаешь на длинке в ллдп?
Night_Snake #
06:55
http://pastebin.com/h0KHLbYq
06:56
TSergey http://pastebin.com/h0KHLbYq
TSergey #
06:57
ага, спасиб
06:58
отлучусь
evyscr #
07:31
Night_Snake: ну покажи ещё sh lldp remote_ports с обеих сторон
Night_Snake #
07:35
http://pastebin.com/pt0iLYnj
07:36
Вот такая загогулина. Причем может быть наоборот - в remote_ports на агрегаторе нет нифига, а 3028 видит
evyscr #
07:42
ну и с 3028 sh lldp local_ports 25
Night_Snake #
07:46
evyscr http://pastebin.com/cr0xudng
xetle #
08:00
Кажись в pm/models/probeconfig.py 70 строку надо закоментить (future/graphite)
08:02
Смотрю уже РМ - Ыуегз - storages появились...
08:02
*Setup
08:03
freeseacher графики уже увидеть реально или ещё ждать?
08:05
dvolodin графики уже увидеть реально в future/graphite или ещё ждать?
freeseacher #
08:38
xetle, ждать :)
dvolodin #
08:48
данные уже снимаются, сейчас учу его отсылать на pmwriter
yeti #
08:57
чистый нок, поставили с нуля. активатор запускаться не хочет, в логах http://dpaste.com/1WAFHFG
freeseacher #
08:57
ага
08:57
все правильно говорит
08:58
sa> setup > activators
08:58
и etc/noc-actovator.conf
yeti #
09:04
ага, все проверил и сравнил с рабочим старым ноком, все один в один, тока в старом запускается без проблем, а тут нет(
09:35
any body home?^)
freeseacher #
09:38
yeti, плохо проверил :)
zi_rus #
09:38
нет-нет, никого нет
freeseacher #
09:38
проверяй еще
zi_rus #
09:38
yeti, noc-activator.conf
Night_Snake #
09:49
кстати а ни у кого коммутаторов зухелевских нету?
09:50
А то у мен noc с них не снимает толком ничерта, вываливает unhundled exception или что-то вроде того
zi_rus #
09:54
ну вот потому что ни у кого их и нет
09:54
первым будешь
freeseacher #
09:59
Night_Snake, думаю тебе надо поступить как TSergey. использовать эти коммуты как подставку под цветы. или как мангал.
evyscr #
10:00
freeseacher: это всё-таки не повод для вываливания в трейсбек
10:02
и вообще, закоммитьте патч из последнего коммента NOC-1412
freeseacher #
10:02
дык пропусти через тущенку
10:03
да и посылай пул реквест
TSergey #
10:03
freeseacher: не-не, рано, у меня в продакшене их с десяток еще
freeseacher #
10:03
у меня тоже.
10:03
тока с пяток таки
TSergey #
10:03
да и я почти добил три патча для них
freeseacher #
10:09
и я активно превращаю их в шашлычницы.
TSergey #
10:10
чудная штука, не умеет отдавать тип портчэнала, забираю так
10:10
"show config running include link_aggregation"
10:10
я вот думаю, пошто в
10:10
https://bitbucket.org/nocproject/noc/src/8eb5c785c6a0f104f2989736d5f77a91c53d8283/sa/interfaces/igetinterfaces.py?at=develop
10:10
так распиан пример по L2 portchannel
10:10
*расписан
10:10
L2 portchannel, tagged (if1 is aggregated interface of if2(LACP) and if3(static))
10:10
и
10:10
name = if2
10:10
type = "aggregate"
10:10
enabled_protocols = ["LACP"]
10:10
aggregated_interface = "if1"
10:10
name = if3
10:10
type = "aggregate"
10:10
enabled_protocols = ["LACP"]
10:10
aggregated_interface = "if1"
10:10
почему такой тип на if2-if3, его нет такого и вроде должен быть "physical"
10:10
почему для if3 протокол пишем LACP, хотя во вводной части это статик
evyscr #
10:10
если на клетке со львом прочтёшь "буйвол" - не верь глазам своим.
TSergey #
10:10
так нужно поправить доку
10:11
в igetportchannel.py "type": StringParameter() # choices=["S","L"]. S - for static, L for LACP
10:12
а в Cisco.IOS.get_interface type
10:12
if ifname in portchannel_members:
10:12
ai, is_lacp = portchannel_members[ifname]
10:12
iface["aggregated_interface"] = ai
10:12
iface["enabled_protocols"] += ["LACP"]
10:13
т.е. есть портчэнал, ну значит LACP
10:14
да и выше:
10:14
# Get portchannels
10:14
portchannel_members = {}
10:14
for pc in self.scripts.get_portchannel():
10:14
i = pc["interface"]
10:14
t = pc["type"] == "L"
10:14
аааа
10:14
что такое?
10:14
t = pc["type"] == "L"
xetle #
10:17
Починил отображение страниц ы FM - Events fm/apps/event/js/Application.js http://pastie.org/9518760#
10:18
templates/SummaryPanel.html скопировать с Alarm
TSergey #
10:18
xetle: расскажи, плс, чего делает такая конструкция
10:18
t = pc["type"] == "L"
freeseacher #
10:18
xetle, а зачем пейджинг вернул :) ?
TSergey #
10:18
почму в циске гвоздями прибит тип портчэнала LACP?
mikevlz #
10:19
TSergey: ghbcdfbdftn kjubxtcrjt pyfxtybt
xetle #
10:19
А его что специально убрали?
mikevlz #
10:19
присваивает логическое значение
freeseacher #
10:19
xetle, да.
10:19
в этом был смысл ветки pagerless
TSergey #
10:20
mikevlz: true если L ?
mikevlz #
10:20
да
xetle #
10:20
А почиму в алярмах тогда оставили?
mikevlz #
10:20
xetle: this is проебал
TSergey #
10:20
mikevlz: спасиб преогромное
xetle #
10:23
mikevlz: попутал фичу с багом..
10:26
Тогда вот эта бага сильно заметна: NOC-1424
dvolodin #
10:56
http://i65.fastpic.ru/big/2014/0901/16/2f2fe4275b1d9919beaf86be1b8b7016.png
10:56
:)
10:56
PM в работе
10:57
проба запускается, получает конфиг, навешенный через профиль интерфейса
10:57
запускает пробы, одна выдает 1, другая - 2
10:57
все честро приезжает в noc-pmwriter
10:57
и пишется в базу
10:57
графики показывает
freeseacher #
10:57
dvolodin, ты толькочто устроил инфаркт zi_rus-у
dvolodin #
10:58
это его кардиограмма?
freeseacher #
10:58
:)
10:58
ну близка
xetle #
11:00
В feature/graphite уже график увидеть можно?
freeseacher #
11:01
xetle, нет
11:01
только если тебя интересуюет график константы
xetle #
11:01
:D
11:02
Надо присобачить переодическое дёргание OID
freeseacher #
11:02
вот именно сейчас это и делает дима :)
dvolodin #
11:02
не
11:02
я сейчас делаю шардинг
11:03
потому интеграцию solution'ов в автоконфигурирование
11:03
а уж потому -- snmp
freeseacher #
11:03
xetle, не слушай dvolodin. он сейчас делает snmp :)
11:03
просто там есть промежуточные этапы
xetle #
11:06
dvolodin: дёргание кучи OID или по cli,а потом парсить регэксп сильно нагрузит проц... Незнаю будет ли питон здесь оптимален.
11:07
Может демон дёргающий значения и пышущий в базу на C написать?
dvolodin #
11:09
xetle: в питоне очень быстрые regexp'ы
freeseacher #
11:09
xetle, давай дождемся стабильного апи для полученя данных
dvolodin #
11:09
а еще есть pypy
freeseacher #
11:09
а потом попробуем сделать пару оптимизаций на сях
dvolodin #
11:09
я добавил к графиту API для автоконфигурирования
xetle #
11:10
Хорошо, пишем на питоне. Потом, когда нибудь можно будет только этот демон на С переписать.
freeseacher #
11:10
xetle, в питоне обычно не принято все переписывать на си
11:10
а только делать подгружаемый модуль который делает не большую работу на си
evyscr #
11:38
реквестирую замену в SubInterface типа поля untagged_vlan со скаляра на вектор
11:39
да, жопа имеет место быть.
xetle #
11:42
Поддерживаю!!!
11:43
untagged_vlan должен быть вектором. Многие провы клиенту дают инеты и IPTV по двум нетегированым вланам на клиентском порту.
11:46
evyscr: если патч примут могу зделать.
11:48
Также можно репорт для SA написать, список портов сети на которых с вланами жопа.
evyscr #
11:52
надо доку написать по написанию репортов
11:52
а про патч - там миграцию надо будет делать же.
xetle #
11:53
Дока: http://kb.nocproject.org/pages/viewpage.action?pageId=2687537
11:55
в VC и INV возможно надо внести изменения в базу. Для SA только интерфейсы подправить и скрипты.
evyscr #
12:05
в доке всё ещё джанга. хреф его знает, какова нонче политика партии.
xetle #
12:07
пока ниодного репорта на JS нет, и надеюсь не будет.
freeseacher #
12:07
пока нету да.
12:07
не буди лихо.
12:08
а то дима прикрутит кристал репортс и будет все норм :)
xetle #
12:08
Всё равно приложение veiw.py надо писать, а раскрасят его JS или нет другой вопрос.
zi_rus #
12:21
dvolodin, а тестить когда будем результат?
dvolodin #
12:22
zi_rus: движемся в сторону тестов
zi_rus #
12:22
я понимаю что движемся
12:22
и два года назад двигались
dvolodin #
12:22
в репо влетела здоровая пачка изменений
zi_rus #
12:23
dvolodin, вижу что-то про метрики, ты про ервую производную думал?
12:23
по dt
dvolodin #
12:23
там оно есть
zi_rus #
12:24
ок
dvolodin #
12:25
http://pastebin.com/kZQ6C0A4
12:25
вот образец конфига, который получает проба
12:25
"convert": "none",
12:25
для производных оно выдаст "convert": "counter"
zi_rus #
12:26
странная логика
dvolodin #
12:26
нормальная
zi_rus #
12:27
почему конверт?
dvolodin #
12:27
там в самой пробе определяется необходимость считать производную
zi_rus #
12:27
почему каунтер?
dvolodin #
12:27
ты этого вообще не увидишь
zi_rus #
12:27
да будет так
dvolodin #
12:27
на самом деле, что я сделал -- metric set с Interface | Load
12:27
и навесил его на профиль интерфейса
12:27
все
zi_rus #
12:29
dvolodin, "все" в твоем понимании. ты покажи нам, а мы посмотрим как это юзать. пока только на словах как все красиво, нам нужно дело
dvolodin #
12:33
zi_rus: $$ -> нямням
zi_rus #
12:34
дак что ж ты думаешь, мне жалко что ли
12:34
никто не дает
12:34
и денег тоже
dvolodin #
12:35
ну тогда "нужно дело" -- за вами
evyscr #
12:40
dvolodin: вообще я два (или уже три) года назад спрашивал про расценки реализации - молчание было ответом.
dvolodin #
12:41
evyscr: не помню такого
evyscr #
12:41
ну да, конечно.
dvolodin #
12:41
ладно, делайте пока code review
12:46
кто поймет, как конфигурируется проба, получит конфиету
12:46
:)
12:47
проба сама вот такая
12:47
http://pastebin.com/XTLvmKwV
12:50
самое интересное - в ProbeConfig
12:50
там раскладка конфига
mikevlz #
12:54
evyscr: http://kb.nocproject.org/pages/viewpage.action?pageId=13336714 мм?
paleshuk #
13:16
Добрый день!
13:16
Скажите где можно оставить сообщение о обнаруженной ошибке?
zi_rus #
13:19
руками ;0
13:19
:)
13:19
тут много ошибок
13:19
может эта уже известная
Night_Snake #
13:25
dvolodin а в NOC из AD уже можно авторизовываться? И права раздавать?
dvolodin #
13:26
да, прикручивали в AD
13:26
а права все равно из NOС развадать, откуда им в AD быть
Night_Snake #
13:26
не, я про раздать права AD-шным учеткам
paleshuk #
13:29
noc/ip/apps/routeimport/views.py
13:29
for subiface in iface["subinterfaces"]:
13:29
if not iface["admin_status"]:
13:29
думаю надо
13:29
for subiface in iface["subinterfaces"]:
13:29
if not subiface["admin_status"]:
zi_rus #
13:34
думаю да
dvolodin #
13:36
Night_Snake: как ты себе это видишь?
evyscr #
13:38
набор AD'шных групп, видимо. В которые должен входить участник для какого-либо пермишна.
13:39
подобным образом делаются права в pam_ldap, емнип
13:46
альзо, когда будут добавляться/правиться модели из INV-\d+?
Night_Snake #
13:51
dvolodin ну либо подсасывать AD-шные группы как-то (т.е. хотя бы по имени), либо после первого входа в noc создается учетка, и на нее уже вешаются права нужные
dvolodin #
20:49
http://i65.fastpic.ru/big/2014/0902/eb/0df8903779cbf083cba5d6863902a0eb.png
Tweet
Share this page
Share this page: Tweet