42.3. 将集群容量作为 Pod 的作业运行
若以 pod 中作业的方式运行集群容量工具,其优点是可以在无需用户干预的前提下多次运行。以作业方式运行集群容量工具需要使用 ConfigMap
。
创建集群角色:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建服务帐户:
oc create sa cluster-capacity-sa
$ oc create sa cluster-capacity-sa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将角色添加到服务帐户:
oc adm policy add-cluster-role-to-user cluster-capacity-role \ system:serviceaccount:default:cluster-capacity-sa
$ oc adm policy add-cluster-role-to-user cluster-capacity-role \ system:serviceaccount:default:cluster-capacity-sa
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 如果服务帐户不在
default
项目中,请将default
替换为项目名称。
定义并创建 pod 规格:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 集群容量分析使用名为
cluster-capacity-configmap
的ConfigMap
挂载到卷中,从而将输入 pod 规格文件pod.yaml
挂载到卷test-volume
的路径/test-pod
上。如果还没有创建
ConfigMap
,请在创建作业前创建:oc create configmap cluster-capacity-configmap \ --from-file=pod.yaml
$ oc create configmap cluster-capacity-configmap \ --from-file=pod.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下作业规格文件示例创建作业:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 必要的环境变量,使集群容量工具知道它将作为一个 pod 在集群中运行。
ConfigMap
的pod.yaml
键与 pod 规格文件相同,但这不是强制要求。如果这样做,输入 pod 规格文件可作为/test-pod/pod.yaml
在 pod 中被访问。
以 pod 中作业的方式运行集群容量镜像:
oc create -f cluster-capacity-job.yaml
$ oc create -f cluster-capacity-job.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查作业日志,以查找在集群中可调度的 pod 数量:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow