以下是为在kubernetes中部署而创建的yaml文件。我想知道既然文件中没有资源请求和限制,kubernetes是如何知道运行它的资源请求和限制的?我如何获取这些信息?
apiVersion: v1
kind: Pod
metadata:
name: rss-site
labels:
app: web
spec:
containers:
- name: front-end
image: nginx
ports:
- containerPort: 80
- name: rss-reader
image: nickchase/rss-php-nginx:v1
ports:
- containerPort: 88发布于 2019-05-07 22:38:29
您可以"kubectl描述“您的pod,并查看实际分配了哪些资源。有了LimitRange,Kubernetes可以将默认请求和限制分配给pod (如果不是其规范的一部分)。
如果没有分配请求/限制-您的pod将变为Best Effort服务质量,并可以在节点资源紧张的情况下被驱逐。
发布于 2019-05-07 22:39:03
您可以使用以下步骤拉取分配给实例的资源限制。
Create the pod
-------------------
kubectl run test-resource-limits --image=busybox --limits "memory=100Mi" \
--command -- /bin/sh -c "while true; do sleep 2; done"
Test the resource limits that are specified
-------------------------------------------
kubectl get pods test-resource-limits-7b8b46c8c7-jdjgs \
-o=jsonpath='{.spec.containers[0].resources}'发布于 2019-05-08 01:31:01
如果您不指定资源请求和限制。Kubernetes将在没有它们的情况下运行您的工作负载。这意味着您的pod可能会使用节点上的所有CPU和RAM。
需要注意的是,如果您的名称空间具有使用limitRange设置的默认值,则这些默认值将应用于未指定资源规范的工作负载。
https://stackoverflow.com/questions/56024647
复制相似问题