-
Notifications
You must be signed in to change notification settings - Fork 10
Labels
Description
Summary
Create a out-of-band-Management Settings CRD (named BMCSetting) for BMC settings and implement the controller for it.
for each vendor, the settings might be different.
Example for Dell:
redfish/v1/Managers/iDRAC.Embedded.1/Oem/Dell/DellAttributes/System.Embedded.1
will need enhancement to the bmc interface in the repo to be able to get, check and set bmc attributes for a given vendor.
Basic example
- user provides the settings as key value pair for strings.
- Controller gets the current values of the attributes provided by the user through redfish APIs
- note: the APIs are different for each vendor
- might be useful to make a local copy of the setting attributes if vendor does not provide a straightforward list. to avoid calling multiple BMC API calls.
- Controller checks the possible attributes, its type, values allowed, based on best effort basis from the attribute type.
- Controller sets the attributes with redfish APIs.
- note: the APIs are different for each vendor
Example CRD Spec
apiVersion: metal.ironcore.dev/v1alpha1
kind: BMCSettings
metadata:
labels:
app.kubernetes.io/name: metal-operator
app.kubernetes.io/managed-by: kustomize
name: bmcsetting-sample
spec:
serverRef:
name: server-01 # References an existing Server resource
BMCSettingsSpec:
version: 2.10.2
settings:
key1 : value1
key2: value2
BMCRef:
name: BMC-01 # References an existing BMC resource
serverRefList:
- name: server-01
- name: server-02
serverMaintenancePolicyType: # Policy an defined in ServerMaintenance resource
serverMaintenanceRef:
name: server-maintenance-01 # References an existing ServerMaintenance resource
status:
state: "InProgress" # overallStatus. Possible values: Pending, InProgress, Applied, FailedMotivation
Provide Ability to set BMC settings (outOfBandManagers Settings through controller)
Sub-issues
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
In progress
Status
No status