oxidized icon indicating copy to clipboard operation
oxidized copied to clipboard

Contribution: miscellaneous models

Open marmack95 opened this issue 1 year ago • 11 comments

Hello,

to complete the models i already publish here: SonicOS 4.x, Synology Nas, Vmware ESXi.

You will find here some others models that could be usefull to community:

  • eaton: Eaton with Gigabit Network Card 2.x (UPS Device / ssh)
  • eatonold: Eaton with ConnectUPS Web/SNMP Card V4.38 (UPS Device / telnet)
  • dlinkcam: D'link IP Cam DCS-2230 (IP Cam / http)
  • dellme4: Dell EMC PowerVault ME4024 (SAN / ssh) -> it's have stability problems, even with lastest firmware.. i'm still trying to find a solution.

3 samples of extended models:

  • HP Comware switch (comware model)
  • Huawei Switch (vrp model)
  • Sonicwall firewall (sonicos model)

dellme4.txt (ssh) dlinkcam.txt eaton.txt eatonold.txt extended_hp.txt extended_huawei.txt extended_sonicos.txt

marmack95 avatar May 06 '24 16:05 marmack95

Dell advice to script using HTTP API for Dell EMC PowerVault ME4024. Dell give an example in python here: it's a little bit complicated for me.

marmack95 avatar May 07 '24 09:05 marmack95

I was able to wrote a model for Dell EMC PowerVault ME4024 which use the HTTP API.

I'm inspired from:

  • the panos_api.rb model
  • a python-to-ruby online converter to convert Dell sample code documentation.

I choose to use JSON (with indentation) and not XML. I don't notice stability problem.

dellme4.txt (https api)

marmack95 avatar May 13 '24 14:05 marmack95

If you think your models can be integrated in Oxidized, please make a PR: https://github.com/ytti/oxidized/blob/master/CONTRIBUTING.md#how-to-contribute-content Also consider becoming a model maintainer for them: https://github.com/ytti/oxidized/blob/master/CONTRIBUTING.md#model-maintainers

If you just want your contribution to be posted here for users to see them (no integration in Oxidized), I would close the issue.

robertcheramy avatar May 14 '24 04:05 robertcheramy

As explain in other issue, I'm sorry I'm not familiar with Git/Github/Ruby: create models for oxidized was my first experience with ruby. And as I will change of job this year, I will not be able to maintain all my contributions.

If you let this issue open, i will maybe add 2 others models (i'm looking for a way to backup Dell Drac and Canon Printer with Oxidized). And i would like to wrote a FAQ.

marmack95 avatar May 14 '24 09:05 marmack95

I was not able to create models for Canon Printer/Fiery ...

I'm working now on Dell iDrac (7/8/9) model : i'm using RESTful API. https://dl.dell.com/manuals/common/dell-emc-restful-server-config-idrac-api.pdf Dell give sample of code in python (page 10 and next.) But I don't find how to use payload on http request with oxidized.

marmack95 avatar Jun 03 '24 14:06 marmack95

I succeed to wrote a Dell iDrac 7/8/9 model :-) It's use HTTPS Rest Api: you need to enable Redfish on iDrac if you disable it.

Tested on:

  • Dell iDRAC9 / FW 7.00 / Suggested timeout: 30s
  • Dell iDRAC8 / FW 2.85 / Suggested timeout: 120s
  • Dell iDRAC7 / FW 2.65 / Suggested timeout: 120s

This model don't only export iDrac configuration but also : Bios, LifeCycle, Raid, Nic. Passwords are not included: you can modified it if you need. Export format is set on XML. iDrac 5/6 not support this API. iDrac 7/8 need FW 2.40.

dellidrac.txt

marmack95 avatar Jun 11 '24 11:06 marmack95

I was not able to create models for Canon Printer/Fiery ...

I discovered that Oxidized use/include Mechanize library: which permit to simulate HTML4 Web navigator. But the Canon printer login page use a javascript button to crypt password and next login... Mechanize not support Javascript. Someone have a advice ?

marmack95 avatar Jun 17 '24 15:06 marmack95

I discovered that Oxidized use/include Mechanize library: which permit to simulate HTML4 Web navigator. But the Canon printer login page use a javascript button to crypt password and next login... Mechanize not support Javascript. Someone have a advice ?

I succeed to wrote a model for Canon printer iR-ADV in 2 parts:

  • part 1: init export (could take 2-5 min).
  • part 2: download file. I execute part1 on all my printers, and next i execute part2.

I was forced to use Watir: there is a lot of javascript on Canon web interface. Watir is not integrated to oxidized but call by it: so error are not well managed.

But it's works well. Each part take 20-30s: it's more efficient than wait 2-5 min export per device.

I use oxidized docker version, so i install:

  1. watir: 'gem install watir webdrivers'
  2. firefox: install firefox-esr from debian-src (best choice) or firefox-current from mozilla depot
  3. geckodriver:
  • apt install wget
  • wget https://github.com/mozilla/geckodriver/releases/download/v0.34.0/geckodriver-v0.34.0-linux64.tar.gz
  • tar -xvf geckodriver-v0.34.0-linux64.tar.gz
  • mv geckodriver /usr/bin

Tested on 25 devices:

  • Canon iRADV C257 / FW 35.44
  • Canon iRADV C5550 / FW 75.44
  • Canon iRADV C5735 / FW 35.44
  • Canon iRADV C5840 / FW 25.49

canonimp_p1.txt canonimp_p2.txt

marmack95 avatar Jun 20 '24 14:06 marmack95

My canonimp models were creating performance issues because they wouldn't close the browser. They close it now if:

  • the device cannot be reached (a message is displayed on logs)
  • export is in progress (a message is displayed on logs)
  • at the end of processing

Sorry, but it does not close browser in all others cases: you will need to restart oxidized (or killall geckodriver/firefox manually).

Files are now removed at the end from the download folder. Some comments have been added.

I also create model for Fiery P2 (should work with some others linux base models). As interface used a lot of javascript, it used watir (+ firefox + geckodriver) and zlib (export use 2 seperates files). It take beteween 30s to 1min. It was tested on Canon iR-ADV C5700 with Fiery P2 PSv1.1 (web interface v3.2.94).

canonimp_p1.txt canonimp_p2.txt fiery.txt

marmack95 avatar Jun 27 '24 14:06 marmack95

Based on Linux model, i wrote a specific model for Quest QoreStor 7.x (installed on CentOS 8.x). questqorestor.txt

marmack95 avatar Jun 28 '24 14:06 marmack95

This issue is stale because it has been open 90 days with no activity.

github-actions[bot] avatar Sep 27 '24 02:09 github-actions[bot]