$ oc get events -n hypershift
hypershift-addon
托管集群附加组件启用 HyperShift Operator 中的--enable-uwm-telemetry-remote-write
选项。启用此选项后,您可以确保启用用户工作负载监控,并确保它可以远程写入来自控制平面的遥测指标。
如果您在未连接到互联网的OpenShift Container Platform集群上安装了多集群引擎Operator,则当您尝试通过输入以下命令来运行HyperShift Operator的用户工作负载监控功能时,该功能会因错误而失败。
$ 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
要解决此错误,您必须通过在local-cluster
命名空间中创建配置映射来禁用用户工作负载监控选项。您可以在启用附加组件之前或之后创建配置映射。附加组件代理会重新配置HyperShift Operator。
创建以下配置映射
kind: ConfigMap
apiVersion: v1
metadata:
name: hypershift-operator-install-flags
namespace: local-cluster
data:
installFlagsToAdd: ""
installFlagsToRemove: "--enable-uwm-telemetry-remote-write"
通过运行以下命令应用配置映射
$ oc apply -f <filename>.yaml
托管控制平面功能默认启用。
如果该功能被禁用并且您想启用它,请输入以下命令。将<multiclusterengine>
替换为您多集群引擎Operator实例的名称。
$ oc patch mce <multiclusterengine> --type=merge -p '{"spec":{"overrides":{"components":[{"name":"hypershift","enabled": true}]}}}'
启用此功能后,hypershift-addon
托管集群附加组件将安装在local-cluster
托管集群中,并且附加组件代理将在多集群引擎Operator中心集群上安装HyperShift Operator。
通过输入以下命令确认hypershift-addon
托管集群附加组件已安装。
$ oc get managedclusteraddons -n local-cluster hypershift-addon
NAME AVAILABLE DEGRADED PROGRESSING hypershift-addon True False
为避免在此过程中超时,请输入以下命令
$ 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
完成后,hypershift-addon
托管集群附加组件和HyperShift Operator 将被安装,并且local-cluster
托管集群可用于托管和管理托管集群。
默认情况下,没有为hypershift-addon
托管集群附加组件指定节点放置首选项。建议在基础设施节点上运行附加组件,因为这样做可以避免因订阅计数而产生计费成本,并分离维护和管理任务。
登录到中心集群。
通过输入以下命令打开hypershift-addon-deploy-config
附加组件部署配置规范进行编辑。
$ oc edit addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine
添加nodePlacement
字段到规范中,如下例所示。
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
保存更改。hypershift-addon
托管集群附加组件将部署在新旧托管集群的基础设施节点上。