如何用istioctl指定Envoy代理sidecar priorityClass

时间:2020-02-16 10:50:29

标签: istio

我正在使用istioctl通过下面的CRD部署Istio。

apiVersion: install.istio.io/v1alpha2
kind: IstioControlPlane
spec:
  profile: default
  values:
    global:
      priorityClassName: cluster-critical

但是,这也为所有注入的Envoy边车指定了cluster-critical优先级,因此网格中的每个工作负载都是cluster-critical,这几乎使优先级无法实现。如何在不为每个组件手动指定该值的情况下为所有Istio控制平面组件指定此优先级类?

换句话说,有一种方法可以只为边车指定priorityClass吗? (似乎该值仅取自全局设置。)

Istio版本:1.4.4

1 个答案:

答案 0 :(得分:0)

priorityClass仅应用于Pod level,因此无法针对每个容器(或仅在边车上)设置它。

OP在评论中要求

我想将priorityClass应用于所有Istio控制平面组件,而不是应用于sidecar容器,因为正如您所说,这会影响整个Pod

就我而言,这是不可能的,除非您想手动进行。

如果您使用priorityClassName


使用yaml

apiVersion: install.istio.io/v1alpha2
kind: IstioControlPlane
spec:
  profile: default
  values:
    global:
      priorityClassName: cluster-critical


使用istioctl

istioctl manifest apply --set values.global.priorityClassName 

适用于由Istio安装创建的部署,其中包含不带sidecar(城堡,sidecar注入器)和sidecar(厨房,飞行员,政策,遥测)的吊舱。就像我们在评论中都提到的那样,它将对整个podcar产生影响。

此外,如果您想将priorityClass限制为某些命名空间,则此doc可能会有所帮助。