Skip to content

Commit 33e7bb8

Browse files
Promote redfish-exporter to production (not present → 0.4.2)
1 parent aadab25 commit 33e7bb8

2 files changed

Lines changed: 156 additions & 0 deletions

File tree

redfish-exporter/README.md

Whitespace-only changes.
Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
# SPDX-FileCopyrightText: 2026 cobaltcore-dev contributors
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
apiVersion: greenhouse.sap/v1alpha1
5+
kind: PluginDefinition
6+
metadata:
7+
name: redfish-exporter
8+
spec:
9+
version: 0.4.2
10+
displayName: Redfish Exporter
11+
description: Prometheus exporter for Redfish/BMC hardware monitoring. Collects power state, health, temperature, fans, PSU, memory ECC, NVMe SMART, BIOS settings, and firmware versions from Dell iDRAC and HPE iLO.
12+
docMarkDownUrl: https://raw.githubusercontent.com/cobaltcore-dev/redfish-exporter/main/README.md
13+
icon: https://raw.githubusercontent.com/cobaltcore-dev/redfish-exporter/main/logo.png
14+
helmChart:
15+
name: redfish-exporter
16+
repository: oci://ghcr.io/cobaltcore-dev/redfish-exporter/charts
17+
version: 0.4.2
18+
options:
19+
# --- Prometheus integration ---
20+
- name: serviceMonitorLabels
21+
displayName: Extra Service Monitor Labels
22+
description: Extra labels to add to the ServiceMonitor/ScrapeConfig resources for Prometheus operator discovery.
23+
type: map
24+
required: true
25+
- name: prometheusRules.create
26+
description: Create Prometheus alert rules
27+
required: false
28+
default: true
29+
type: bool
30+
- name: prometheusRules.ruleSelectors
31+
description: Selector for Prometheus rules to be picked up by the Prometheus operator. List of key-value pairs.
32+
required: false
33+
type: list
34+
- name: prometheusRules.additionalRuleLabels
35+
description: Additional labels added to every Prometheus alert rule (e.g. support_group, service).
36+
required: false
37+
type: map
38+
- name: dashboards.create
39+
description: Create Perses dashboards
40+
required: false
41+
default: true
42+
type: bool
43+
44+
# --- Image ---
45+
- name: controllerManager.manager.image.repository
46+
description: Container image repository
47+
required: false
48+
default: ghcr.io/cobaltcore-dev/redfish-exporter
49+
type: string
50+
- name: controllerManager.manager.image.tag
51+
description: Container image tag
52+
required: false
53+
default: "0.2.0"
54+
type: string
55+
56+
# --- BMC credentials ---
57+
- name: kvmRedfishExporter.redfish.secretName
58+
displayName: Redfish Credentials Secret
59+
description: Name of the K8s Secret containing Redfish/BMC username and password.
60+
required: false
61+
default: redfish-credentials
62+
type: string
63+
- name: kvmRedfishExporter.redfish.username
64+
displayName: Redfish Username
65+
description: BMC username. Supports vault+kvv2:// references via secrets-injector. If set, the chart creates the String automatically.
66+
required: false
67+
type: string
68+
- name: kvmRedfishExporter.redfish.password
69+
displayName: Redfish Password
70+
description: BMC password. Supports vault+kvv2:// references via secrets-injector. If set, the chart creates the Secret automatically.
71+
required: false
72+
type: secret
73+
74+
# --- Target discovery ---
75+
- name: kvmRedfishExporter.discovery.mode
76+
displayName: Discovery Mode
77+
description: "Target discovery mode: 'kubernetes' (auto-discover from node labels) or 'static' (comma-separated BMC hostnames)."
78+
required: false
79+
default: kubernetes
80+
type: string
81+
- name: kvmRedfishExporter.discovery.nodeLabelSelector
82+
displayName: Node Label Selector
83+
description: K8s label selector to discover compute nodes (used when discovery.mode=kubernetes).
84+
required: false
85+
type: string
86+
- name: kvmRedfishExporter.discovery.bmcHostSuffix
87+
displayName: BMC Host Suffix
88+
description: Domain suffix appended to derived BMC hostname (e.g. "bmc.example.com").
89+
required: false
90+
type: string
91+
- name: kvmRedfishExporter.discovery.bmcHostPattern
92+
displayName: BMC Host Pattern
93+
description: "Pattern to derive BMC hostname from node name. 'r-suffix' inserts 'r' after node number, 'direct' uses node name as-is."
94+
required: false
95+
default: r-suffix
96+
type: string
97+
- name: kvmRedfishExporter.discovery.staticTargets
98+
description: Comma-separated BMC hostnames for static discovery mode.
99+
required: false
100+
type: string
101+
102+
# --- Scrape settings ---
103+
- name: kvmRedfishExporter.scrapeTimeout
104+
displayName: Scrape Timeout
105+
description: Timeout in seconds for each BMC scrape request.
106+
required: false
107+
default: 30
108+
type: int
109+
- name: kvmRedfishExporter.allowedTargetSuffix
110+
displayName: Allowed Target Suffix
111+
description: Restrict targets to hostnames matching this suffix (SSRF prevention). Leave empty to allow all.
112+
required: false
113+
type: string
114+
115+
# --- Collectors ---
116+
- name: kvmRedfishExporter.disabledCollectors.powerState
117+
description: Disable power state collection
118+
required: false
119+
default: false
120+
type: bool
121+
- name: kvmRedfishExporter.disabledCollectors.health
122+
description: Disable component health collection (processors, storage, drives)
123+
required: false
124+
default: false
125+
type: bool
126+
- name: kvmRedfishExporter.disabledCollectors.thermal
127+
description: Disable temperature collection
128+
required: false
129+
default: false
130+
type: bool
131+
- name: kvmRedfishExporter.disabledCollectors.fans
132+
description: Disable fan health and speed collection
133+
required: false
134+
default: false
135+
type: bool
136+
- name: kvmRedfishExporter.disabledCollectors.psu
137+
description: Disable PSU health and power consumption collection
138+
required: false
139+
default: false
140+
type: bool
141+
- name: kvmRedfishExporter.disabledCollectors.memory
142+
description: Disable DIMM health and ECC error collection
143+
required: false
144+
default: false
145+
type: bool
146+
- name: kvmRedfishExporter.disabledCollectors.firmware
147+
description: Disable firmware version collection
148+
required: false
149+
default: false
150+
type: bool
151+
152+
# --- Scheduling ---
153+
- name: tolerations
154+
description: Tolerations for the exporter Deployment pods.
155+
required: false
156+
type: list

0 commit comments

Comments
 (0)