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: 16.12.2013
mikevlz #
06:32
dvolodin: NOC-88
06:32
как тебе мой грязный хак?
06:32
пливет, кцтате
dvolodin #
06:34
да, я видел
06:34
это только для этого профиля?
mikevlz #
06:34
ну я правил вообще глобально
06:34
в профиле проверить, запущен кли или нет - не додумался как
dvolodin #
06:34
может вообще shutdown не пускать, если cli не вызывался?
mikevlz #
06:35
вот я именно так и делал
06:35
там под куском кода я указал, что исправлял sa/script/script.py
dvolodin #
06:53
посмотрю вечерком
mikevlz #
06:54
окай
06:56
кстати, у меня тут кошки трейситься стали на get_inventory. В частности 3750-24TS в стеке
06:57
началось после того как кто-то научил скрипт PID_ы лучше опознавать
dvolodin #
07:01
ага
07:01
и теперь трейсится на то, что у None методов не хватает?
mikevlz #
07:03
отож
dvolodin #
07:05
закоммитил фикс для NOC-88
07:05
давай трейсы, смотреть будем
_4ePTeHok #
07:05
dvolodin, Дим, поправь плиз
07:05
diff -r f250c5fb7b00 inv/discovery/reports/asset.py
07:05
--- a/inv/discovery/reports/asset.py Fri Dec 13 20:29:15 2013 +0400
07:05
+++ b/inv/discovery/reports/asset.py Mon Dec 16 09:03:50 2013 +0200
07:05
@@ -98,7 +98,7 @@
07:05
if scope:
07:05
self.set_context(scope, number)
07:05
#
07:05
- if not serial:
07:05
+ if not serial or serial == "None":
07:05
в скриптах вроде None отдаем, не пустое значение
dvolodin #
07:06
тут проще поправить, чтобы None не становился "None"
_4ePTeHok #
07:06
это и в циске тае
07:06
так
mikevlz #
07:06
я себе в брокейде поправил
_4ePTeHok #
07:06
не только у меня в скрипте
07:07
проще править 10 скриптов, чем в одном добавить 10 символов?)
07:08
и, кстати NONAME | Noname у меня так и не вставляется - игнорируется на этапе когда ассет принимает инфу от дискавери
07:08
говорит что : Unknown model: vendor=NoName, part_no=8GiB DIMM DDR3 Synchronous 1333 MHz (0.8 ns) (['NoName']). Skipping
07:09
но модель есть - NoName | RAM | DIMM | DDR3 | 1333 Mhz | 8Gb
07:10
"vendor__code": "NONAME", пробовал с part_no = NoName, и без asset вообще
07:10
ни так ни так
dvolodin #
07:10
ну такое не отработает точно
_4ePTeHok #
07:10
ну блин, оно же отдается в дискавери
07:10
скорреллировать модельки по типу и разъему нельзя?
dvolodin #
07:11
посмотри как трансиверы сделаны
_4ePTeHok #
07:11
намбер есть, раъем подходит, тип тоже - вставим
mikevlz #
07:11
dvolodin: https://dpaste.de/AJCu
_4ePTeHok #
07:11
ну трансиверы в моделях ничем не отличаются
mikevlz #
07:11
_4ePTeHok: ты в part_no должен отдать или part_no0 или имя модели
_4ePTeHok #
07:11
без ассета
07:12
только коннекторы
dvolodin #
07:12
part_no0
_4ePTeHok #
07:12
{
07:12
"name": "NoName | Transceiver | 10G | XFP SR",
07:12
"uuid": "070deca5-5589-4343-866c-512472c79f5b",
07:12
"vendor__code": "NONAME",
07:12
"description": "NoName XFP LR transceiver",
07:12
"connections": [
07:12
"data": {}
07:12
невижу
dvolodin #
07:12
mikevlz: это я фиксил уже
07:13
changeset: 8940:2cf1d39dd791
07:13
branch: feature/inventory
07:13
user: Dmitry Volodin <dv@nocproject.org>
07:13
date: Fri Dec 13 16:55:00 2013 +0400
07:13
summary: Cisco.IOS.get_inventory: Fix
07:13
где-то тут правил
_4ePTeHok #
07:13
какой еще трансивер для примера глянуть?
mikevlz #
07:13
_4ePTeHok: если отдать name модели в качестве partno - оно примет
07:13
dvolodin: окай, обновлюсь...
dvolodin #
07:13
оно там хитро дырку и скорость вычисляет
_4ePTeHok #
07:14
т е сделать NoName | RAM | DIMM DDR3 1333 Mhz 8Gb? и отдавать в дискавери "DIMM DDR3 1333 Mhz 8Gb" как part_no?
mikevlz #
07:15
нет
07:15
надо полное имя отдавать, если ты в модель не пишешь asset part_noX
07:15
скрипт должен в поле part_no пихать NoName | RAM | DIMM | DDR3 | 1333 Mhz | 8Gb
dvolodin #
07:16
тебе там тип нужен и размер
_4ePTeHok #
07:16
хм. ну дискавери пухнуть будет от if бла бла
07:16
частота неважна?
07:17
сча попробую.
dvolodin #
07:17
нужны какие-то правила именования
07:17
как для трансиверов
_4ePTeHok #
07:18
ну я предложил -RAM | form_factor | Type | Size если без частоты
07:18
сервачное все равно только я делаю
dvolodin #
07:18
RAM | DDR3 | 8Gb 1333Mhz
07:18
может так?
_4ePTeHok #
07:19
а как различать Dimm\Rimm?
dvolodin #
07:22
по дырке на плате
07:22
как трансиверы
_4ePTeHok #
07:28
так чего, договорились не отдавать серийника если его нет?
07:28
или таки None
07:29
а, вижу Дима закоммиттил
08:02
mikevlz, а в чем отличие part_no от part_no0?
mikevlz #
08:02
_4ePTeHok: в asset?
_4ePTeHok #
08:02
угу
mikevlz #
08:02
без номера - код для заказа, с номером - код из скрипта
08:02
иногда они отличаются
_4ePTeHok #
08:03
у е, я думал наеборот
mikevlz #
08:03
дискавери сравнивает только с номером
_4ePTeHok #
08:06
блин, не жрет
08:06
скрипт отдает так -
08:06
{'builtin': False,
08:06
'description': 'Noname 8GiB DIMM DDR3 Synchronous 1333 MHz (0.8 ns)',
08:06
'number': '1:2C',
08:06
'part_no': ['NoName | RAM | DDR3 | 8GiB 1333 Mhz'],
08:06
'serial': 'None',
08:06
'type': 'RAM',
08:06
'vendor': 'NONAME'},
08:07
у модели - "name": "NoName | RAM | DDR3 | 8Gb 1333Mhz",
08:07
а бля
08:07
пробел
08:07
и Gib еще
mikevlz #
08:07
угу
_4ePTeHok #
08:13
уря. воткнулось.
mikevlz #
09:08
DxS.get_vlans на snmp довел...
09:30
никто со встроенным TFTP-сервером в ноке не баловался?
zi_rus #
09:32
а он у него есть?
09:32
ни хрена себе
09:32
а я системный поднимал
09:32
а зачем он в ноке если системный тоже самое делает
mikevlz #
09:33
я так подозреваю, что если на него выгрузить конфиг - то нок его употребить должен
09:33
потому что единственная настройка - listen_tftp в конфиге активатора
09:35
не, нихрена
09:35
посмотрел ща код - там только чтение файлов сделано
lexus-omsk #
09:49
где-то даже задачка висит "сделать полноценную поддержку tftp"... года с 2010, наверное :)
mikevlz #
09:50
просто у нас тут эстет требует, чтоб на свичи доступа нок консолью не лазил, а собирал по максимуму через snmp
09:51
возможно, придется переделать скрипт get_config так, чтобы выгружал на tftp, читать оттуда файл, дальше отдавать ноку =)
09:51
пиздец, конечно... Но этому человекупостоянные логин/логаут мешают проблемы решать абонентские
_4ePTeHok #
10:04
mikevlz, там нельзя отключить логирование ввхода выхода?
mikevlz #
10:04
неа
_4ePTeHok #
10:05
напишите блинкам, пусть зопилят)
lexus-omsk #
10:16
начал ковырять zyxel на предмет get_inventory - они серийиники не отдают.. а данные по трансиверам нормлаьно вытащить можно только начиная с прошивки 3.90
10:18
на более старых как бы можно, но из zynos mode, а у него промпт совпадает с непривилегированным логином
_4ePTeHok #
10:20
Vendor OUI : 76-2E-0A
10:20
Vendor Name :
10:20
Vendor PN : +MS
10:20
Vendor Rev : эУ
10:20
Vendor SN : TMST+г
10:20
Date Code : 29-88-245
10:20
ыы
10:20
ежики как всегда.
zi_rus #
10:21
mikevlz, ну вот и ты понял радость снмп, меня логин логаут не беспокоят, а вот снмп быстрее работает и скорость это важно
_4ePTeHok #
10:21
погоди погоди
10:21
вот как начнет у него ложится махом
10:21
от снмп)
10:21
пачками
10:26
Vendor SN : ЮЗvЛй·
10:27
это просто параллельная вселенная)
lexus-omsk #
10:33
_4ePTeHok: ты для 65й серии цисок скрипт допиливал?
_4ePTeHok #
10:33
да, но володин не комиттил
10:33
и с того времени скрипт переделывали
10:34
короче надо обновляться и заного правки вносить
10:34
кстати sh eeprom там не добавили?
lexus-omsk #
10:35
ну вот у меня примерно также, только после очередных переделок я свой патч потерял
10:35
там же платы по-другому отдаются и текущим скриптом не выцепляются
_4ePTeHok #
10:39
есть еще sh idprom
10:39
там почти то же самое
10:40
блин, забыл где ж в 6500 данные по трансиверам
10:40
а ну да
10:40
sh idprom interface g 2/2
10:40
только интерфейсы надо явно указывать..
10:41
ну будет время - попилю
e_zombie #
13:41
специалисты по монго есть?
13:41
> db.noc.log.sa.failed_scripts.drop();
13:41
Mon Dec 16 17:39:00.957 drop failed: {
13:41
"ns" : "noc.noc.log.sa.failed_scripts",
13:41
"errmsg" : "exception: assertion src/mongo/db/pdfile.h:392",
13:41
"code" : 0,
13:41
"ok" : 0
13:41
} at src/mongo/shell/collection.js:383
13:41
репеир валится на ней и всё
mikevlz #
13:41
беда-пиздец...
dvolodin #
13:44
мда
13:51
а ты ее переименуй
13:57
коллекцию
_4ePTeHok #
13:57
Дима, а как быть с коннекшенами, которые через промежуточный кабель?
dvolodin #
13:57
_4ePTeHok: какими именно?
13:57
twinax работате
_4ePTeHok #
13:57
вот скажем Sata - на мамке оно male и на диске male
13:58
можно конечно упростить
13:58
как лучше?
dvolodin #
13:58
ну нормально
13:59
и кабель с двумя female на концах
_4ePTeHok #
13:59
сделаешь интерфейс?
dvolodin #
14:00
зачем?
14:00
там есть все
mikevlz #
14:00
_4ePTeHok: а сетевые шнурки тебя уже не смущают?
_4ePTeHok #
14:00
а мы их делали в инвентори?)
mikevlz #
14:00
ведь то же самое
_4ePTeHok #
14:00
тоже самое да
mikevlz #
14:00
ну так солнцеподобный обещал...
_4ePTeHok #
14:00
dvolodin, ткни носом в пример модели
14:00
чтобы воткнуть диск
14:01
в модели делаю male/male
14:01
коннекшен есть Electrical | SATA
dvolodin #
14:01
тебе модель шнурка?
_4ePTeHok #
14:01
как кабель прикрутить?
dvolodin #
14:01
там два connection'а
14:01
и crossing
14:02
http://kb.nocproject.org/display/DEV/ObjectModel
14:03
там два разъема и заполненное поле cross
_4ePTeHok #
14:03
это отдельно создается модель кабеля, а как его втыкать в модель мамки?
dvolodin #
14:04
точно так же, как и все остальное
_4ePTeHok #
14:04
мм..ну оно ведь не отдается asset_inventory
mikevlz #
14:05
ээээ
14:05
если ты винт видишь - он же как-то подключен?
14:05
вот и отдавай какой-то "средний" кабель
dvolodin #
14:05
отдавай кабель, да
_4ePTeHok #
14:05
,kby
14:05
блин
14:06
а если там мать > SATA > HDD bay > HDD slot > HDD?)
mikevlz #
14:09
если в шасси этом только так и никак иначе - или отдавай, или абстрагируйся =)
dvolodin #
14:09
ну а как еще?
14:09
если только connection rules дорабатывать как-то
mikevlz #
14:09
считай всю эту скорлупу "жестким диском"
dvolodin #
14:09
для создания кабеля автоматом
_4ePTeHok #
14:10
а там по любому придется чото делать, ибо межобектовые связи тащить из inv.interfaces когда то придется.
14:11
как и привязку интерфейсов к физю дыркам inv.interfaces - inv.inv
dvolodin #
14:13
там ли?
_4ePTeHok #
14:17
я в принципе, без привязки к рулам
14:17
но у нас же есть в инвентори тип дырки
14:17
выбирать автоматом тип кабеля отталкиваясь от него
14:17
принцип тот же
14:17
сьыковка двух объектов кабелем
Tweet
Share this page
Share this page: Tweet