
Maksim
20.06.2017
08:55:31
Угу
удобно

Ilya
20.06.2017
08:55:46
по сравнению с циской - да)

fx00f
20.06.2017
08:55:56

Google

Ilya
20.06.2017
08:56:10

Maksim
20.06.2017
08:56:14
ну внутри оно от части на циску похоже

Ilya
20.06.2017
08:56:42
trio - самый гибкий NP

Maksim
20.06.2017
08:56:45
отчет по метрикам переделывать буду
Селекторы в поиск добавляю и ЗО
но насчет ЗО пока в раздумии )

fx00f
20.06.2017
09:19:10
Какая неожиданность линки между lldp и cdp не клеются ((( Ща lldp к микроту прикручу )

E_zombie
20.06.2017
09:19:40
лол. ты бы ещё по макам линки строил

fx00f
20.06.2017
09:20:28
Это ты умный и опытный! А я незнайка пока что.

E_zombie
20.06.2017
09:22:01
а ещё хуавеи можно по NDP вязать
ебаниська
кстати у нас есть статус CAPS ?

fx00f
20.06.2017
09:23:44
Я вот тоже годик поябесь с этим вашим НОКом и тоже буду умный. Или заеду в дурку... Тут как повезёт

Google

Ilya
20.06.2017
09:36:03

fx00f
20.06.2017
09:46:07
!
А как линки поубивать автоматически простроенные?


E_zombie
20.06.2017
09:47:06
hexrfvb
ручками
или дать мне 100 рублей и я дам скрипт чистки
from noc.sa.models import *
from noc.inv.models.interface import Interface
from noc.sa.models.managedobject import ManagedObject
mo = ManagedObject.objects.filter()
for m in mo:
print m
for i in Interface.objects.filter(managed_object=m):
if i is not None and i.link is not None:
print i, i.link
print "unlink", i, i.link
i.link.delete()
только фильтр поставь. а то все линки ухерачит.
import datetime
from noc.sa.models import *
from noc.inv.models.interface import Interface
from noc.sa.models.managedobject import ManagedObject
mo = ManagedObject.objects.filter()
print ( datetime.datetime.now() - datetime.timedelta(days=1) )
for m in mo:
for i in Interface.objects.filter(managed_object=m):
if i is not None and i.link is not None:
if i.link.discovery_method is None:
print "BUG", m
i.link.delete()
else:
#print m, i, i.link, i.link.discovery_method
if i.link.discovery_method == 'lldp' and i.link.last_seen is None:
print "unlink None", m, i, i.link , i.link.discovery_method
i.link.delete()
if i.link is not None and i.link.discovery_method == 'lldp' and (datetime.datetime.now() - i.link.last_seen ) > datetime.timedelta(days=2) :
print "unlink Old", m, i, i.link, i.link.discovery_method
i.link.delete()
ну или так.
тут удаляются те что не видно 2 дня.


fx00f
20.06.2017
09:50:56
Спасибки!
#fx00f

E_zombie
20.06.2017
09:58:59
./noc shell
либо копируешь в ./command и потом ./noc <имя файла без .py>

fx00f
20.06.2017
09:59:50
спасибо
А чё питон переводит вдруг sfp1 в HEX
ёбаный в рот
'remote_port': '73.66.70.31'} а должно быть 'remote_port': 'sfp1'}

Google

Alexey
20.06.2017
10:23:36
а есть какой нибудь гайд - с чего начать после установки?

fx00f
20.06.2017
10:24:05

Alexey
20.06.2017
10:24:20
это уже сделал

E_zombie
20.06.2017
10:24:36
уууууу гайда нету. я собирался писать ... но не дошёл до этого.
начни с простого - добавление хостов.

fx00f
20.06.2017
10:26:09
КАК? Почему, при добавлении в массив слова sfp1 на выходе я имею 73.66.70.31"

N
20.06.2017
10:26:15

E_zombie
20.06.2017
10:26:16
https://kb.nocproject.org/pages/viewpage.action?pageId=25886747 Alexey
https://kb.nocproject.org/pages/viewpage.action?pageId=19169430 gjnjv djn nfrjt/
потом вот такое.
как это осилишь - приходи за остальным.

fx00f
20.06.2017
10:30:11
а что выше обрабатывает скрипт get_lldp_neighbors ?

E_zombie
20.06.2017
10:30:30
эээээ ?

Alexey
20.06.2017
10:31:18
address обязательно ip указывать или dns можно?

E_zombie
20.06.2017
10:31:20
Alexey давай меня на пол ставки найми. я тебе базу запулю а дальше ты уже сам будешь пилить под себя
айпи.

fx00f
20.06.2017
10:31:27
эээээ ?
interface = {
"local_interface": r["interface"],
"neighbors": [{
"remote_chassis_id_subtype": chassis_id_subtype,
"remote_chassis_id": chassis_id,
"remote_port_subtype": port_subtype,
"remote_port": 'sfp1',
"remote_capabilities": caps,
}]
}

E_zombie
20.06.2017
10:32:11
ну он дёргает инфу по нейборам с железки. а дальше это попадает на механизм построения линков.

fx00f
20.06.2017
10:32:20
на выходе имеем
{'neighbors': [{'remote_port_subtype': 5, 'remote_capabilities': 0, 'remote_chassis_id_subtype': 4, 'remote_chassis_id': 'D4:CA:6D:AC:ED:A8', 'remote_port': '73.66.70.31'}]

E_zombie
20.06.2017
10:32:36
в зависимости от пор субтайп значение ремоте порт может меняться.

Google

fx00f
20.06.2017
10:32:39
то есть sfp1 превращается в 73.66.70.31, я пытаюсь понять где?
ага! так и задумано типа

Alexey
20.06.2017
10:32:59

E_zombie
20.06.2017
10:33:30
Fx?f см HP/ProCurve/get_lldp_neighbors.py
это клёвое желание но порог вхождения экстремально высок и ты потратишь на это дело не одну неделю.
документации нет и каждый наступает на грабли

fx00f
20.06.2017
10:34:31

E_zombie
20.06.2017
10:34:43
там есть описание типов переменных.

fx00f
20.06.2017
10:34:48
ибо
{'neighbors': [{'remote_port_subtype': 5, 'remote_capabilities': 0, 'remote_chassis_id_subtype': 4, 'remote_chassis_id': 'D4:CA:6D:0E:F2:74', 'remote_port': 'sfp-sfpplus1'}], 'local_interface': 'sfp-sfpplus5'}]

E_zombie
20.06.2017
10:35:07
если у тебя субтайп 7 то там будет мак и тд

Admin
ERROR: S client not available

fx00f
20.06.2017
10:36:01

E_zombie
20.06.2017
10:36:20
значит бага в скрипте
он выдаёт не то что должно быть.

fx00f
20.06.2017
10:37:39
он выдаёт не то что должно быть.
print "PORT: " + port
interface = {
"local_interface": r["interface"],
"neighbors": [{
"remote_chassis_id_subtype": chassis_id_subtype,
"remote_chassis_id": chassis_id,
"remote_port_subtype": port_subtype,
"remote_port": port,
"remote_capabilities": caps,
}]
}
if "system-description" in r:
interface["neighbors"][0]["remote_system_description"] = \
r["system-description"]
res += [interface]
return res
print port - всё правильно! return res уже с косяком. Где вот тут можно налажать?

E_zombie
20.06.2017
10:38:57
я хз что ты вообще имеешь в оригинале.

fx00f
20.06.2017
10:40:23
В оригинале всё нормально я имею. Я сказал, в чём херня
Пойду выше разбираться )

Ilya
20.06.2017
10:45:33

Google

E_zombie
20.06.2017
10:45:54
а бабосики будут капать
клёва жеж
:(

fx00f
20.06.2017
10:51:49
нормально всё скрипт отдаёт, ломается выше.
стопудово дело выше!
прям на любом профиле открывай get_lldp_interface и впиши в remote_port 'sfp1' и выполни!
И внезависимости от remote_porp_suptype получим хуету!

E_zombie
20.06.2017
11:08:46
данунахуй

fx00f
20.06.2017
11:09:05
Нок же перезагружать не будешь, ничё не сломаеца

E_zombie
20.06.2017
11:09:13
какую то пидорскую эсефпишку линковать. с неуникальным именем.
уж лучше туда мак ебануть

Ilya
20.06.2017
11:09:34

fx00f
20.06.2017
11:09:38
я выше уже писал. Что проблема толкьо с именем sfp[1-9]
ибо нок пытается его в HEX перевести походу

Ilya
20.06.2017
11:10:30
@E_zombie

fx00f
20.06.2017
11:11:13
вот и запроси get_lldp_neighbors
и вместо sfp1 в remote_port - получишь 'remote_port': '73.66.70.31'

Maksim
20.06.2017
11:12:18
проблема то в чем ?

Ivan
20.06.2017
11:13:37
в cpe_ ?

fx00f
20.06.2017
11:13:59
@maksmile13