$ oc get events -n hypershift
The hypershift-addon
managed cluster add-on enables the --enable-uwm-telemetry-remote-write
option in the HyperShift Operator. By enabling that option, you ensure that user workload monitoring is enabled and that it can remotely write telemetry metrics from control planes.
If you installed multicluster engine Operator on OKD clusters that are not connected to the internet, when you try to run the user workload monitoring feature of the HyperShift Operator by entering the following command, the feature fails with an error:
$ oc get events -n hypershift
LAST SEEN TYPE REASON OBJECT MESSAGE
4m46s Warning ReconcileError deployment/operator Failed to ensure UWM telemetry remote write: cannot get telemeter client secret: Secret "telemeter-client" not found
To resolve the error, you must disable the user workload monitoring option by creating a config map in the local-cluster
namespace. You can create the config map either before or after you enable the add-on. The add-on agent reconfigures the HyperShift Operator.
Create the following config map:
kind: configmap
apiVersion: v1
metadata:
name: hypershift-operator-install-flags
namespace: local-cluster
data:
installFlagsToAdd: ""
installFlagsToRemove: "--enable-uwm-telemetry-remote-write"
Apply the config map by running the following command:
$ oc apply -f <filename>.yaml
The hosted control plane feature is enabled by default.
If the feature is disabled and you want to enable it, enter the following command. Replace <multiclusterengine>
with the name of your multicluster engine Operator instance:
$ oc patch mce <multiclusterengine> --type=merge -p '{"spec":{"overrides":{"components":[{"name":"hypershift","enabled": true}]}}}'
When you enable the feature, the hypershift-addon
managed cluster add-on is installed in the local-cluster
managed cluster, and the add-on agent installs the HyperShift Operator on the multicluster engine Operator hub cluster.
Confirm that the hypershift-addon
managed cluster add-on is installed by entering the following command:
$ oc get managedclusteraddons -n local-cluster hypershift-addon
NAME AVAILABLE DEGRADED PROGRESSING hypershift-addon True False
To avoid a timeout during this process, enter the following commands:
$ oc wait --for=condition=Degraded=True managedclusteraddons/hypershift-addon -n local-cluster --timeout=5m
$ oc wait --for=condition=Available=True managedclusteraddons/hypershift-addon -n local-cluster --timeout=5m
When the process is complete, the hypershift-addon
managed cluster add-on and the HyperShift Operator are installed, and the local-cluster
managed cluster is available to host and manage hosted clusters.
By default, no node placement preference is specified for the hypershift-addon
managed cluster add-on. Consider running the add-ons on the infrastructure nodes, because by doing so, you can prevent incurring billing costs against subscription counts and separate maintenance and management tasks.
Log in to the hub cluster.
Open the hypershift-addon-deploy-config
add-on deployment configuration specification for editing by entering the following command:
$ oc edit addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine
Add the nodePlacement
field to the specification, as shown in the following example:
apiVersion: addon.open-cluster-management.io/v1alpha1
kind: AddOnDeploymentConfig
metadata:
name: hypershift-addon-deploy-config
namespace: multicluster-engine
spec:
nodePlacement:
nodeSelector:
node-role.kubernetes.io/infra: ""
tolerations:
- effect: NoSchedule
key: node-role.kubernetes.io/infra
operator: Exists
Save the changes. The hypershift-addon
managed cluster add-on is deployed on an infrastructure node for new and existing managed clusters.