我有一些由CronJobs创建的pods处于Error状态,似乎这些pods请求的 CPU/内存 没有被释放,kubelet没有杀死它们。并且阻止了其他的pods被调度。 这是预期的行为吗?我是否应该用手清理它们来找回资源? 谢谢。
是的,错误中的Pods,你应该删除这个Pods以释放分配给它的资源。
但是,处于
Complexed
或Failed
状态的pods
不需要被清理以释放分配给它们的资源。可以通过运行简单的Job来检查节点中分配的内存资源。Allocated resources: (Total limits may be over 100 percent, i.e., overcommitted.) Resource Requests Limits -------- -------- ------ cpu 811m (86%) 1143m (121%) memory 555Mi (19%) 1115Mi (39%)
Job示例:
apiVersion: batch/v1 kind: Job metadata: creationTimestamp: null name: test-job spec: template: metadata: creationTimestamp: null spec: containers: - command: - date image: busybox name: test-job resources: requests: memory: 200Mi restartPolicy: Never
job部署后的内存。
Allocated resources: (Total limits may be over 100 percent, i.e., overcommitted.) Resource Requests Limits -------- -------- ------ cpu 811m (86%) 1143m (121%) memory 555Mi (19%) 1115Mi (39%)
你看,没有增加。
你的答案