簡體   English   中英

Kubernetes如何知道資源請求和限制?

[英]How Kubernetes knows resource requests and limits?

這是一個已創建要在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

您可以“描述kubectl”您的窗格,並查看分配了哪些實際資源。 借助LimitRange, Kubernetes可以為pod分配默認請求和限制(如果不是其規范的一部分)。

如果沒有分配請求/限制,則您的pod會達到“盡力而為”的服務質量,並且在節點資源緊張的情況下可以被驅逐。

您可以按照以下步驟獲取分配給廣告連播的資源限制。

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}'

如果您未指定資源請求和限制。 Kubernetes將在沒有它們的情況下運行您的工作負載。 這意味着您的Pod可能會使用節點上的所有CPU和RAM。

請注意; 如果您的命名空間的默認值設置為limitRange則默認值將應用於未指定資源規格的工作負載。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM