Giter Site home page Giter Site logo

iq-scm / redfish_exporter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jenningsloy318/redfish_exporter

0.0 0.0 0.0 1.29 MB

exporter to get metrics from redfish based hardware such as lenovo/dell/superc servers

License: Apache License 2.0

Shell 0.73% Go 93.18% Makefile 2.98% Smarty 2.18% Dockerfile 0.93%

redfish_exporter's Introduction

redfish_exporter

A prometheus exporter to get metrics from redfish based servers such as lenovo/dell/Supermicro servers.

Configuration

An example configure given as an example:

hosts:
  10.36.48.24:
    username: admin
    password: pass
  default:
    username: admin
    password: pass
groups:
  group1:
    username: group1_user
    password: group1_pass

Note that the default entry is useful as it avoids an error condition that is discussed in this issue.

Building

To build the redfish_exporter executable run the command:

make build

or build in centos 7 docker image

make docker-build-centos7

or build in centos 8 docker image

make docker-build-centos8

or we can also build a docker image using Dockerfile

Running

  • running directly on linux

    redfish_exporter --config.file=redfish_exporter.yml

    and run redfish_exporter -h for more options.

  • running in container

    Also if you build it as a docker image, you can also run in container, just remember to replace your config /etc/prometheus/redfish_exporter.yml in container

Scraping

We can get the metrics via

curl http://<redfish_exporter host>:9610/redfish?target=10.36.48.24

or by pointing your favourite browser at this URL.

Reloading Configuration

PUT /-/reload
POST /-/reload

The /-/reload endpoint triggers a reload of the redfish_exporter configuration. 500 will be returned when the reload fails.

Alternatively, a configuration reload can be triggered by sending SIGHUP to the redfish_exporter process as well.

Prometheus Configuration

You can then setup Prometheus to scrape the target using something like this in your Prometheus configuration files:

  - job_name: 'redfish-exporter'

    # metrics_path defaults to '/metrics'
    metrics_path: /redfish

    # scheme defaults to 'http'.

    static_configs:
    - targets:
       - 10.36.48.24 ## here is the list of the redfish targets which will be monitored
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: localhost:9610  ### the address of the redfish-exporter address, hence relpace localhost with the server IP address that redfish-export is running on
      # (optional) when using group config add this to have group=my_group_name
      - target_label: __param_group
        replacement: my_group_name

Note that port 9610 has been reserved for the redfish_exporter.

Supported Devices (tested)

  • Enginetech EG520R-G20 (Supermicro Firmware Revision 1.76.39)
  • Enginetech EG920A-G20 (Huawei iBMC 6.22)
  • Lenovo ThinkSystem SR850 (BMC 2.1/2.42)
  • Lenovo ThinkSystem SR650 (BMC 2.50)
  • Dell PowerEdge R440, R640, R650, R6515, C6420
  • GIGABYTE G292-Z20, G292-Z40, G482-Z54

Acknowledgement

  • gofish provides the underlying library to interact servers

redfish_exporter's People

Contributors

dalembert avatar dependabot[bot] avatar dylngg avatar florath avatar fschlich avatar iceman91176 avatar jenningsloy318 avatar mahuihuang avatar mjavier2k avatar sbates130272 avatar smiche avatar xflipped avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.