NOTE:
Bare Metal Event Relay
was renamed fromHardware Event Proxy
.
The Bare Metal Event Relay Operator, runs in a single namespace, manages bare metal hardware event framework.
It offers HardwareEvent
CRDs and deploys Bare Metal Event Relay container along with Cloud Event Proxy framework.
To start using Bare Metal Event Relay, install the operator and then create the following HardwareEvent CR. You can only create one instance of HardwareEvent in this release. Examples:
apiVersion: "event.redhat-cne.org/v1alpha1"
kind: "HardwareEvent"
metadata:
name: "hardware-event"
spec:
nodeSelector: {}
transportHost: "http://hw-event-publisher-service.openshift-bare-metal-events.svc.cluster.local:9043"
Here the transport is set to hw-event-publisher-service
service in the openshift-bare-metal-events
namespace.
The storageType
is for HTTP transport only. HTTP transport requires persistent storage for storing subscription data. The storageType
when not specified is set to emptyDir
.
The
storageType
is no longer used and is overridden in cloud-event-proxy by configMap.
If transportHost
is missing or empty, the default transportHost "http://hw-event-publisher-service.openshift-bare-metal-events.svc.cluster.local:9043"
is used.
apiVersion: "event.redhat-cne.org/v1alpha1"
kind: "HardwareEvent"
metadata:
name: "hardware-event"
spec:
nodeSelector: {}
transportHost: "amqp://<amq-router-service-name>.<amq-namespace>.svc.cluster.local"
The AMQP service <amq-router-service-name>
should be available in <amq-namespace>
namespace prior to deploying HardwareEvent.
Below is an example of updating nodeSelector
to select a specific node:
apiVersion: "event.redhat-cne.org/v1alpha1"
kind: "HardwareEvent"
metadata:
name: "hardware-event"
spec:
nodeSelector:
node-role.kubernetes.io/worker: ""
transportHost: "http://hw-event-publisher-service.openshift-bare-metal-events.svc.cluster.local:9043"
This operator needs a secret to be created to access Redfish Message Registry.
oc -n openshift-bare-metal-events create secret generic redfish-basic-auth \
--from-literal=username=${BMC_USER} \
--from-literal=password=${BMC_PASSWORD} \
--from-literal=hostaddr=${BMC_HOST}
The secret is created under the same namespace as the operator. For example:
apiVersion: v1
kind: Secret
metadata:
name: redfish-basic-auth
type: Opaque
stringData:
username: <bmc_username>
password: <bmc_password>
# BMC host DNS or IP address
hostaddr: <bmc_host_ip_address>
To install the Bare Metal Event Relay Operator:
export IMG=quay.io/openshift/origin-baremetal-hardware-event-proxy-operator:4.13
$ make deploy
To un-install:
$ make undeploy
Refer to Developer Guide for more details.