13.6. 使用 GitOps ZTP 将 worker 节点添加到单节点 OpenShift 集群
您可以将一个或多个 worker 节点添加到现有的单节点 OpenShift 集群,以增加集群中的可用 CPU 资源。
先决条件
- 在 OpenShift Container Platform 4.11 或更高版本的裸机 hub 集群中安装和配置 RHACM 2.6 或更高版本
- 在 hub 集群中安装 Topology Aware Lifecycle Manager
- 在 hub 集群中安装 Red Hat OpenShift GitOps
-
使用 GitOps ZTP
ztp-site-generate
容器镜像版本 4.12 或更高版本 - 使用 GitOps ZTP 部署受管单节点 OpenShift 集群
- 配置中央基础架构管理,如 RHACM 文档所述
-
配置 DNS 服务集群来解析内部 API 端点
api-int.<cluster_name>.<base_domain>
流程
如果您使用
example-sno.yaml
SiteConfig
清单部署集群,请将新的 worker 节点添加到spec.clusters['example-sno'].nodes
列表中:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为新主机创建一个 BMC 身份验证 secret,如
SiteConfig
文件的spec.nodes
部分中的bmcCredentialsName
字段引用:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 提交 Git 中的更改,然后推送到由 GitOps ZTP ArgoCD 应用程序监控的 Git 存储库。
当 ArgoCD
cluster
应用程序同步时,由 GitOps ZTP 插件生成的 hub 集群中会出现两个新清单:-
BareMetalHost
NMStateConfig
重要不应为 worker 节点配置
cpuset
字段。worker 节点的工作负载分区会在节点安装完成后通过管理策略添加。
-
验证
您可以通过几种方法监控安装过程。
运行以下命令,检查预置备镜像是否已创建:
oc get ppimg -n example-sno
$ oc get ppimg -n example-sno
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAMESPACE NAME READY REASON example-sno example-sno True ImageCreated example-sno example-node2 True ImageCreated
NAMESPACE NAME READY REASON example-sno example-sno True ImageCreated example-sno example-node2 True ImageCreated
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查裸机主机的状态:
oc get bmh -n example-sno
$ oc get bmh -n example-sno
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME STATE CONSUMER ONLINE ERROR AGE example-sno provisioned true 69m example-node2 provisioning true 4m50s
NAME STATE CONSUMER ONLINE ERROR AGE example-sno provisioned true 69m example-node2 provisioning true 4m50s
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
provisioning
状态表示从安装介质引导的节点正在进行中。
持续监控安装过程:
运行以下命令监控代理安装过程:
oc get agent -n example-sno --watch
$ oc get agent -n example-sno --watch
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 当 worker 节点安装完成后,worker 节点证书会被自动批准。此时,worker 会出现在
ManagedClusterInfo
状态中。运行以下命令查看状态:oc get managedclusterinfo/example-sno -n example-sno -o \ jsonpath='{range .status.nodeList[*]}{.name}{"\t"}{.conditions}{"\t"}{.labels}{"\n"}{end}'
$ oc get managedclusterinfo/example-sno -n example-sno -o \ jsonpath='{range .status.nodeList[*]}{.name}{"\t"}{.conditions}{"\t"}{.labels}{"\n"}{end}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
example-sno [{"status":"True","type":"Ready"}] {"node-role.kubernetes.io/master":"","node-role.kubernetes.io/worker":""} example-node2 [{"status":"True","type":"Ready"}] {"node-role.kubernetes.io/worker":""}
example-sno [{"status":"True","type":"Ready"}] {"node-role.kubernetes.io/master":"","node-role.kubernetes.io/worker":""} example-node2 [{"status":"True","type":"Ready"}] {"node-role.kubernetes.io/worker":""}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow