繁体   English   中英

Kubernetes的Pods的优先事项

[英]Priorities in Pods in Kubernetes

我有一些在集群中运行的burstable pod,我不希望在内存/ CPU压力的情况下被杀死。

有没有办法增加它的优先级或其他东西,这样我们就不必改变它的名称空间(kube-system使它变得至关重要)并且可以保存它?

我发现了一些有关为pod添加优先级的问题 但无法弄清楚解决方案。 应该有一些方法来设置优先级,还是我错过了一些大的东西?

波德优先功能不可用之前Kubernetes v1.7

v1.8+ ,您可以在PodSpec中添加pod的优先级。 您需要使用优先级值创建PriorityClass对象,并在Pod中使用该PriorityClass名称。

但是高达v1.9 ,PriorityClass仍处于alpha阶段。

apiVersion: scheduling.k8s.io/v1alpha1
kind: PriorityClass
metadata:
  name: high-priority
value: 1000000
globalDefault: false

这里,

  • value表示优先级。 值越高,优先级越高
  • globalDefault指示此PriorityClass的值应该用于没有PriorityClassName的globalDefault 系统中只能存在一个globalDefault设置为true的PriorityClass。

现在,让我们创建一个具有此优先级的Pod

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    env: test
spec:
  containers:
  - name: nginx
    image: nginx
  priorityClassName: high-priority

抢占

创建Pod时,如果找不到满足该Pod的所有指定要求的Node,则使用抢占逻辑从节点中删除一个或多个低优先级Pod。 在Pod消失后,Node上会安排具有更高优先级的Pod。

有关pod优先级的详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM