Jump to content

Recommended Posts

Posted
Вообще, круто. Но хотелось бы, чтобы подобный софт запускался из сбора репозитория с минимальными подточками напильником.

 

Ребята, я лично, честно потратил три с половиной часа своего сободного времени на попытку хотя бы увидеть то, на что этот софт способен.

На самом деле то, что софт можно поставить самостоятельно и с ним разобраться - это уже очень хороший результат. Многие системы такого рода, включая коммерческие,

вообще ставится и, зачастую, работают только в присутсвии авторов.

 

Над упрощением инсталляции работать будем, сейчас не хватает ресурсов. Если кто хочет помочь в этом направлении, будем рады :)

 

Почему у меня не получилось - см. предыдущие посты. После долгой телепатии получилось, что модуль интепретации xml-rpc запросов получает невернй тип данных при попытке обработки запроса, читай добавления железки в конфиг.
XML-RPC для работы с конфигами не нужен вообще. Он нужен для взаимодействия сторонних систем с provisioning'ом и используется web-интерфейсом как рабочая демонстрация.

 

Потом надоело, лучше это время девушке уделить)) В рабочее время попробую еще раз, потому что очень рад подобному проекту наших разработчиков :)
На то они и рабочее время, чтобы тратить его на автоматизацию своих же рабочих процессов :)
  • Replies 808
  • Created
  • Last Reply

Top Posters In This Topic

Posted

Вышла версия 0.1.5. Основное нововведение данной версии - экспериментальный коррелятор событий и поддержка статусов событий (неклассифицировано/активно/закрыто).

 

Доводим fault management до ума, в принципе, им уже можно пользоваться.

Posted
когда .deb тестовый появится?
На тему packaging'а под основные системы начали думать. Сейчас приоритеты смещены в другую сторону и будет хорошо,

если кто-нибудь возьмет на себя сбор пакетов под наиболее распространенные системы.

Posted

Интересная какая штука. Я сейчас попробую все собрать под фряхой, если получится выложу мануал :-)

Posted

Интересная какая штука. Я сейчас попробую все собрать под фряхой, если получится выложу мануал :-)

Под фрей была инсталляция, особых проблем быть не должно

Posted

Тем временем вышла версия 0.1.6.

Среди новвоведений:

  1. Новая более удобная система навигации (Скриншот)
  2. Используется стандартный distutils python'а
  3. Появился новый экспериментальный демон SLA Monitor, обеспечивающий мониторинг ключевых параметров производительности

 

Новое меню навигации более логично и интуитивно понятно.

 

С началом использования distutils проект начинает переходить на стандартную python'овскую схему распространения и установки пакетов.

Появился экспериментальный RPM build (download), который надо потестировать и

поправить зависимости. Пакет для Solaris появится чуть позже.

 

Для SLA Monitor есть HTTP проба, которая замеряет время установления соединения с сервером и время обработки запросов. Проверяли на ферме из 50 http-серверов, систему грузит минимально.

 

 

Posted

Получаю ошибку:

 

[noc@statbackup ~]$ python manage.py syncdb

Traceback (most recent call last):

File "manage.py", line 11, in <module>

execute_manager(settings)

File "/usr/local/lib/python2.5/site-packages/django/core/management/__init__.py", line 340, in execute_manager

utility.execute()

File "/usr/local/lib/python2.5/site-packages/django/core/management/__init__.py", line 295, in execute

self.fetch_command(subcommand).run_from_argv(self.argv)

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 192, in run_from_argv

self.execute(*args, **options.__dict__)

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 218, in execute

self.validate()

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 246, in validate

num_errors = get_validation_errors(s, app)

File "/usr/local/lib/python2.5/site-packages/django/core/management/validation.py", line 28, in get_validation_errors

for (app_name, error) in get_app_errors().items():

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 128, in get_app_errors

self._populate()

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 57, in _populate

self.load_app(app_name, True)

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 72, in load_app

mod = __import__(app_name, {}, {}, ['models'])

File "/usr/local/noc/../noc/main/models.py", line 28, in <module>

report_registry.register_all()

File "/usr/local/noc/../noc/lib/registry.py", line 51, in register_all

__import__(mb+f[:-3],{},{},self.classname)

ValueError: Empty module name

 

Откатываюсь обратно на версию 0.1.5 - и все нормально:

 

python manage.py migrate

Running migrations for main:

- Nothing to migrate.

Running migrations for sa:

- Nothing to migrate.

Running migrations for fm:

- Nothing to migrate.

Running migrations for cm:

- Nothing to migrate.

Running migrations for ip:

- Nothing to migrate.

Running migrations for vc:

- Nothing to migrate.

Running migrations for dns:

- Nothing to migrate.

Running migrations for peer:

- Nothing to migrate.

 

python manage.py runserver 0.0.0.0:8080

Validating models...

0 errors found

 

Django version 1.0.2 final, using settings 'noc.settings'

Development server is running at http://0.0.0.0:8080/

Quit the server with CONTROL-C.

 

Posted

NOC должен быть распакован в каталог noc, а не noc-0.1.6.

Начиная с версии 0.1.6 порядок установки немного поменялся и стал ближе к стандартному,

сейчас вносятся изменения в документацию.

 

Получаю ошибку:

 

[noc@statbackup ~]$ python manage.py syncdb

Traceback (most recent call last):

File "manage.py", line 11, in <module>

execute_manager(settings)

File "/usr/local/lib/python2.5/site-packages/django/core/management/__init__.py", line 340, in execute_manager

utility.execute()

File "/usr/local/lib/python2.5/site-packages/django/core/management/__init__.py", line 295, in execute

self.fetch_command(subcommand).run_from_argv(self.argv)

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 192, in run_from_argv

self.execute(*args, **options.__dict__)

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 218, in execute

self.validate()

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 246, in validate

num_errors = get_validation_errors(s, app)

File "/usr/local/lib/python2.5/site-packages/django/core/management/validation.py", line 28, in get_validation_errors

for (app_name, error) in get_app_errors().items():

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 128, in get_app_errors

self._populate()

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 57, in _populate

self.load_app(app_name, True)

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 72, in load_app

mod = __import__(app_name, {}, {}, ['models'])

File "/usr/local/noc/../noc/main/models.py", line 28, in <module>

report_registry.register_all()

File "/usr/local/noc/../noc/lib/registry.py", line 51, in register_all

__import__(mb+f[:-3],{},{},self.classname)

ValueError: Empty module name

 

Откатываюсь обратно на версию 0.1.5 - и все нормально:

 

python manage.py migrate

Running migrations for main:

- Nothing to migrate.

Running migrations for sa:

- Nothing to migrate.

Running migrations for fm:

- Nothing to migrate.

Running migrations for cm:

- Nothing to migrate.

Running migrations for ip:

- Nothing to migrate.

Running migrations for vc:

- Nothing to migrate.

Running migrations for dns:

- Nothing to migrate.

Running migrations for peer:

- Nothing to migrate.

 

python manage.py runserver 0.0.0.0:8080

Validating models...

0 errors found

 

Django version 1.0.2 final, using settings 'noc.settings'

Development server is running at http://0.0.0.0:8080/

Quit the server with CONTROL-C.

Posted

Он и установлен в /usr/local/noc, а не noc-0.1.6. Почитал Changelog, там есть упоминание о каталоге установки /opt/noc - перенес всю эту красоту туда:

 

[noc@statbackup /opt/noc]$ python manage.py migrate

Traceback (most recent call last):

File "manage.py", line 11, in <module>

execute_manager(settings)

File "/usr/local/lib/python2.5/site-packages/django/core/management/__init__.py", line 340, in execute_manager

utility.execute()

File "/usr/local/lib/python2.5/site-packages/django/core/management/__init__.py", line 295, in execute

self.fetch_command(subcommand).run_from_argv(self.argv)

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 192, in run_from_argv

self.execute(*args, **options.__dict__)

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 218, in execute

self.validate()

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 246, in validate

num_errors = get_validation_errors(s, app)

File "/usr/local/lib/python2.5/site-packages/django/core/management/validation.py", line 28, in get_validation_errors

for (app_name, error) in get_app_errors().items():

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 128, in get_app_errors

self._populate()

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 57, in _populate

self.load_app(app_name, True)

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 72, in load_app

mod = __import__(app_name, {}, {}, ['models'])

File "/opt/noc/../noc/main/models.py", line 28, in <module>

report_registry.register_all()

File "/opt/noc/../noc/lib/registry.py", line 51, in register_all

__import__(mb+f[:-3],{},{},self.classname)

ValueError: Empty module name

 

Posted

Завел тикет #139 по этой проблеме. Будем разбираться.

Он и установлен в /usr/local/noc, а не noc-0.1.6. Почитал Changelog, там есть упоминание о каталоге установки /opt/noc - перенес всю эту красоту туда:

 

[noc@statbackup /opt/noc]$ python manage.py migrate

Traceback (most recent call last):

File "manage.py", line 11, in <module>

execute_manager(settings)

File "/usr/local/lib/python2.5/site-packages/django/core/management/__init__.py", line 340, in execute_manager

utility.execute()

File "/usr/local/lib/python2.5/site-packages/django/core/management/__init__.py", line 295, in execute

self.fetch_command(subcommand).run_from_argv(self.argv)

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 192, in run_from_argv

self.execute(*args, **options.__dict__)

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 218, in execute

self.validate()

File "/usr/local/lib/python2.5/site-packages/django/core/management/base.py", line 246, in validate

num_errors = get_validation_errors(s, app)

File "/usr/local/lib/python2.5/site-packages/django/core/management/validation.py", line 28, in get_validation_errors

for (app_name, error) in get_app_errors().items():

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 128, in get_app_errors

self._populate()

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 57, in _populate

self.load_app(app_name, True)

File "/usr/local/lib/python2.5/site-packages/django/db/models/loading.py", line 72, in load_app

mod = __import__(app_name, {}, {}, ['models'])

File "/opt/noc/../noc/main/models.py", line 28, in <module>

report_registry.register_all()

File "/opt/noc/../noc/lib/registry.py", line 51, in register_all

__import__(mb+f[:-3],{},{},self.classname)

ValueError: Empty module name

Posted
Да, конечно, все как написано в wiki
Забавно. Пробовал воспроизвести ситуацию на нескольких платформах, чисто проходило все.

 

Можно поподробнее:

1. Какая ОС, версия?

2. Какая версия python?

3. Из какого архива ставится NOC?

4. Если можно, по шагам: скачал это, сделал это, сделал это, приехал.

 

В качестве reference можно использовать Solaris Installation HOWTO.

На других системах будут отличаться только процедура установки зависимых пакетов и некоторые системные мелочи.

Posted

Добрый день!

 

с версией noc-0.1.6 та же проблема. что и у Irish, ставлю на debian testing согласно мануалке

откат на 0.1.5 помог установить, но после толком ничего так и не смог сходу завести, т.е. например исправляю в sa default activator (он стоит на той же машине, что и noc), после запуска активатора под пользователем noc ругается на невозможность открытия порта для принятия snmp traps, но это нормально, перезапускаю активатор под рутом, авторизация на sae проходит, запускаем встроенный веб-сервер заводим пользователя, заводим в sa managed object (для теста под руками есть cisco 7206) со всеми реквизитами, в cm->configs появляется запись, типа должно бы опрашиваться и сливаться конфиг (временные интервалы крутить пытался), но ничего не происходит, в логах никакой ругани, если активатор завести с ключом -f, то что-то вроде попыток опроса железки есть, но если честно моск с трудом воспринимает вывод и непонятно, что ему не нравится

да, если например в cm->configs в строке записи о конфиге нажать ссылку view, то jungo выдает ошибку

может я просто что-то не так делаю, не подскажете?

Posted
Добрый день!

 

с версией noc-0.1.6 та же проблема. что и у Irish, ставлю на debian testing согласно мануалке

откат на 0.1.5 помог установить,

Документация по установке от версии 0.1.5 разъехалась с 0.1.6. Сейчас внесли все необходимые изменения. Новая версия по ссылке. Рекомендую ставить напрямую из репозитория, так легче обновляться. Packaging сейчас все еще экспериментальный и python'овские distutils могут подкинуть еще сюрпризов.

 

но после толком ничего так и не смог сходу завести, т.е. например исправляю в sa default activator (он стоит на той же машине, что и noc), после запуска активатора под пользователем noc ругается на невозможность открытия порта для принятия snmp traps, но это нормально, перезапускаю активатор под рутом, авторизация на sae проходит,
Можно покрутить capabilities и разрешить процессу слушать на привелегированных портах без root'а.

 

запускаем встроенный веб-сервер заводим пользователя, заводим в sa managed object (для теста под руками есть cisco 7206) со всеми реквизитами, в cm->configs появляется запись, типа должно бы опрашиваться и сливаться конфиг (временные интервалы крутить пытался), но ничего не происходит, в логах никакой ругани, если активатор завести с ключом -f, то что-то вроде попыток опроса железки есть, но если честно моск с трудом воспринимает вывод и непонятно, что ему не нравится

да, если например в cm->configs в строке записи о конфиге нажать ссылку view, то jungo выдает ошибку

может я просто что-то не так делаю, не подскажете?

Enable Password для железки задан в Managed Objects? На cisco юзеру нужен privelege 15 для просмотра конфига.
Posted
Документация по установке от версии 0.1.5 разъехалась с 0.1.6. Сейчас внесли все необходимые изменения. Новая версия по ссылке. Рекомендую ставить напрямую из репозитория, так легче обновляться. Packaging сейчас все еще экспериментальный и python'овские distutils могут подкинуть еще сюрпризов.

с deb-пакаджей поставлены только питон и все к нему

 

Можно покрутить capabilities и разрешить процессу слушать на привелегированных портах без root'а.

ок, попробую спасибо

 

Enable Password для железки задан в Managed Objects? На cisco юзеру нужен privelege 15 для просмотра конфига.

да, все это сделано, к то му же кошка не боевая, поэтому проблем с развлечениями нет, но вот не взлетело, буду дальше воевать

Posted

# python manage.py install

Unknown command: 'install'

Type 'manage.py help' for usage.

 

а старым методом инсталляция версии 0.1.6 кстати прошла нормально (исходники взяты из репозитория)

Posted
# python manage.py install

Unknown command: 'install'

Type 'manage.py help' for usage.

 

а старым методом инсталляция версии 0.1.6 кстати прошла нормально (исходники взяты из репозитория)

python setup.py install

 

Поправил ошибку в доке.

Posted

Request Method: POST

Request URL: http://127.0.0.1:8000/sa/2/scripts/Cisco.IOS.ping/

Exception Type: ProtocolError

Exception Value:

 

<ProtocolError for 127.0.0.1:19702/RPC2: -1 >

 

Exception Location: /usr/lib/python2.5/xmlrpclib.py in request, line 1191

Python Executable: /usr/bin/python

Python Version: 2.5.4

 

и дальше долгий тоскливый traceback - это я опять создал для теста объект типа cisco.ios и пытался сделать ему ping с веб-интерфейса

падает на RPC запросах, что может быть недокручено? я понимаю, что фигню спрашиваю, но чет логики понять не могу, вроде все сделано как в мануалах, а толком не взлетает

Posted
Enable Password для железки задан в Managed Objects? На cisco юзеру нужен privelege 15 для просмотра конфига.

да, все это сделано, к то му же кошка не боевая, поэтому проблем с развлечениями нет, но вот не взлетело, буду дальше воевать

Можно проверить на чем оно заткнулось вот так

# su - noc
$ cd /opt/noc
$ python manage.py debug-script Cisco.IOS.get_version <telnet|ssh>://<user>:<password>/<enable password>@<ip>/

 

Проверить, как оно выгружает конфиг можно вот так

$ python manage.py debug-script Cisco.IOS.get_config <telnet|ssh>://<user>:<password>/<enable password>@<ip>/

 

Request Method: POST

Request URL: http://127.0.0.1:8000/sa/2/scripts/Cisco.IOS.ping/

Exception Type: ProtocolError

Exception Value:

 

<ProtocolError for 127.0.0.1:19702/RPC2: -1 >

 

Exception Location: /usr/lib/python2.5/xmlrpclib.py in request, line 1191

Python Executable: /usr/bin/python

Python Version: 2.5.4

 

и дальше долгий тоскливый traceback - это я опять создал для теста объект типа cisco.ios и пытался сделать ему ping с веб-интерфейса

падает на RPC запросах, что может быть недокручено? я понимаю, что фигню спрашиваю, но чет логики понять не могу, вроде все сделано как в мануалах, а толком не взлетает

Cisco.IOS.ping пофиксен как раз в 0.1.6

 

Posted
Можно проверить на чем оно заткнулось вот так

# su - noc
$ cd /opt/noc
$ python manage.py debug-script Cisco.IOS.get_version <telnet|ssh>://<user>:<password>/<enable password>@<ip>/

 

Проверить, как оно выгружает конфиг можно вот так

$ python manage.py debug-script Cisco.IOS.get_config <telnet|ssh>://<user>:<password>/<enable password>@<ip>/

с консоли все прекрасно отрабатывает

 

Cisco.IOS.ping пофиксен как раз в 0.1.6

она и стоит, уже снуля переделал базу, заново завел тестовый объект, нажал на ссылку scripts и попытался сделать get_config, получил:

 

ProtocolError at /sa/2/scripts/Cisco.IOS.get_config/

 

<ProtocolError for 127.0.0.1:19702/RPC2: -1 >

 

Request Method: GET

Request URL: http://127.0.0.1:8000/sa/2/scripts/Cisco.IOS.get_config/

Exception Type: ProtocolError

Exception Value:

 

<ProtocolError for 127.0.0.1:19702/RPC2: -1 >

 

Exception Location: /usr/lib/python2.5/xmlrpclib.py in request, line 1191

Python Executable: /usr/bin/python

Python Version: 2.5.4

 

ниче не понимаю, вижу что обламывается на RPC, но как вычислить чего ему не хватает....

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.