创建Pod并指定资源组
当需要将某个Pod加入到某个资源组中时,需要在创建Pod时指定资源组。
- 修改Pod的配置文件(.yaml格式),以example-pod.yaml为例。
- 进入samples目录,打开example-pod.yaml文件。
cd samples vi example-pod.yaml
- 按“i”进入编辑模式,在配置文件中分别添加如下信息:
labels: rcgroup: group2
nodeSelector: MPAM: enabled
- 在labels字段中通过rcgroup字段指定对应的资源组,例如将Pod加到group2中。
- 在nodeSelector字段中增加MPAM:enabled,用于调度器将该Pod调度到支持MPAM特性的节点上去。
修改后的example-pod.yaml文件如下所示。
apiVersion: v1 kind: Pod metadata: name: nginx labels: rcgroup: group2 spec: containers: - name: nginx image: nginx:1.16.1 ports: - containerPort: 80 hostPort: 8088 nodeSelector: MPAM: enabled
- 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
- 进入samples目录,打开example-pod.yaml文件。
- 创建Pod。
kubectl apply -f example-pod.yaml
- 在Node节点上,进入“/sys/fs/resctrl”目录,再进入Pod所属的资源组中(例如Pod属于资源组group1),可以在资源组中查看对应的配置以及监控数据,还可以查看当前资源组下被限制应用的pid。
cd /sys/fs/resctrl/group1
- 通过以下命令查看资源组的配置。
cat schemata
- 通过以下命令查看该资源组下的pid。
cat tasks
- 通过以下命令查看资源组下的监控数据。
grep . mon_data/*
- 通过以下命令查看资源组的配置。
父主题: 虚拟化MPAM插件 用户指南