線上業務對網路品質敏感、對網路延遲指標要求高,而離線業務對網路頻寬佔用大,如果兩種業務在一起運行而不做任何控制,很可能會出現由於爭搶網路資源所導致的服務高延遲和服務不可用。您可自訂Pod的出入方向頻寬及資料包優先順序,以實現對網路資源更細粒度的控制,降低服務互相擠占頻寬的影響。
Pod頻寬節流設定
您可通過Kubernetes標準Pod Annotations對Pod出入方向的頻寬進行限制:
Annotation | 說明 |
| Pod入方向的頻寬節流設定,樣本值為10Mbps。 |
| Pod出方向的頻寬節流設定,樣本值為10Mbps。 |
Terway的配置為共用ENI模式,並啟用了IPvlan+eBPF網路加速模式時,不支援配置
kubernetes.io/ingress-bandwidth註解。Terway配置為獨佔ENI模式時,不支援配置
kubernetes.io/ingress-bandwidth註解。在DataPathV2網路加速模式下,Terway從v1.13.0版本開始支援Ingress頻寬節流設定。且所有頻寬節流設定只對進出節點的流量生效,同節點流量不生效。
在Terway v1.3.0之前的版本建立的叢集需要修改Terway配置以啟用該功能。具體操作,請參見下方的說明。
早於Terway v1.3.0建立的叢集
如果您的叢集在建立時使用了Terway v1.3.0之前的版本,您需要修改Terway配置,以啟用上方的Annotation。
資料包優先順序控制策略
預設情況下,網卡隊列在發送資料包時執行先入先出的規則。Terway支援對Pod的資料包配置優先順序控制策略,在流量高峰時也可以保證部分高優先順序服務的資料包優先收發,從而改善延遲。
此功能預設不開啟,請修改Terway配置以啟用。
此功能不支援開啟了DataPathV2網路加速模式的叢集。
此功能不支援獨佔 ENI 模式的節點。
啟用優先順序控制後,ENI網卡隊列將替換為mq+prio。
Terway支援通過以下Pod Annotations指定Pod資料包的優先順序。
Annotation | 說明 |
k8s.aliyun.com/network-priority: "guaranteed" | 最高優先順序,適用於延遲敏感業務 |
k8s.aliyun.com/network-priority: "best-effort" | 中等優先順序,適用於普通業務 |
k8s.aliyun.com/network-priority: "burstable" | 最低優先順序,適用於需要大頻寬但延遲不敏感的業務 |