设置 Kubernetes API 优先级和公平性

您的 Red Hat OpenShift on IBM Cloud 集群已配置默认设置,用于处理发往API服务器的并发请求,并防止流量过载。 您可以为向集群的 API 服务器发出的请求配置自己的流模式和优先级。 如需了解更多信息,请参阅《 Kubernetes 》文档中的 “API 优先级与公平性”部分。

例如,您可能具有在生产中运行关键应用程序的用户或名称空间。 您可以创建流模式和优先级,以便关键应用程序比集群中的其他应用程序具有更高的优先级,以供 API 服务器实现其请求。

复审缺省流模式和优先级

Red Hat OpenShift on IBM Cloud 除了 Kubernetes 中的默认设置外,还设置了某些默认流程模式和优先级级别。

缺省流模式和优先级
流模式 请求来自的资源 优先级别
apiserver-health Kubernetes API 服务器运行状况资源 这些资源的 定制优先级
calico-apiserver-service-accounts calico-apiserver 名称空间中使用名称空间中的服务帐户的资源 kube-system 名称空间服务帐户的优先级相同。 此模式适用于 Red Hat OpenShift on IBM Cloud 的 4.16 及更高版本。
calico-system-service-accounts calico-system 名称空间中使用名称空间中的服务帐户的资源 kube-system 名称空间服务帐户的优先级相同。
ibm-admin 来自 IBM 集群管理员的资源 使集群管理员的请求不受优先级限制。
ibm-system-service-accounts ibm-system 名称空间中使用名称空间中的服务帐户的资源 kube-system 名称空间服务帐户的优先级相同
tigera-operator-service-accounts tigera-operator 名称空间中使用名称空间中的服务帐户的资源 kube-system 名称空间服务帐户的优先级相同。

您可以创建自己的流模式和优先级,但不修改缺省设置。 修改 API 请求优先级时,集群中可能会出现意外结果。

执行以下步骤以查看由 Red Hat OpenShift on IBM Cloud设置的流模式和优先级。

  1. 列出集群中的所有流模式(包括由 Red Hat OpenShift on IBM Cloud 设置的)及其对应的优先级。
    oc get flowschemas
    
  2. 查看特定流模式的详细信息,包括哪些资源可以发出优先的 API 请求,可以发出何种类型的 API 请求以及这些请求可以修改哪些对象。
    oc describe flowschema <flow-schema-name>
    

查看 Red Hat OpenShift on IBM Cloud 已创建优先级配置

Red Hat OpenShift on IBM Cloud 为 apiserver-health 资源设置自定义优先级配置。

使用以下命令可查看有关配置的详细信息。

oc get prioritylevelconfiguration apiserver-health
oc describe prioritylevelconfiguration apiserver-health