Kubernetes的资源限制一般是以Namespace为单位进行限制
为Namespace限额的方式有两种:ResourceQuota和LimitRange
ResourceQuota 用来限制 namespace 中所有的 Pod 占用的总的资源 request 和 limit
LimitRange 用来限制 namespace 中 单个Pod 默认资源 request 和 limit
下面看具体案例
1,首先创建namespace
1)LimitRange限制方式:
相应的yaml文件
apiVersion: v1
kind: LimitRange
metadata:
name: cpu-limit-range
namespace: myns
spec:
limits:
– default: #默认上限
cpu: 1000m
defaultRequest:
cpu: 1000m
min:
cpu: 500m
max:
cpu: 2000m
maxLimitRequestRatio: #定义最大值是最小值的几倍,当前为4倍
cpu: 4
type: Container
用kubectl apply -f 进行创建
用kubectl get Limit Range cpu-limit-range -n myns进行查看
2)ResourceQuota限制方式
相应的yaml文件
apiVersion: v1
kind: ResourceQuota
metadata:
name: quota-example
namespace: myns
spec:
hard:
pods: “5”
requests.cpu: “1”
requests.memory: 1Gi
limits.cpu: “2”
limits.memory: 2Gi
count/deployments.apps: “2”
count/deployments.extensions: “2”
persistentvolumeclaims: “2”
应用后可以用下面语句进行查看
kubectl get ResourceQuota -n myns
kubectl describe ResourceQuotae -n myns
内容出处:,
声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.com/tech/29051.html