Pages - Menu

2022年4月11日 星期一

[istio] sidecar 注入規則

前言

因為drone 的 kubernetes Runner的關係,
導致我有一個ns要預設取消istio inject,
但某些特定的pod要注入就失敗了。


正文

先來看一張官方做的表(1),
其實就很好解釋為什麼不會注入了。

namespaceSelector match default policy Pod override annotation sidecar.istio.io/inject Sidecar injected?
yes enabled true (default) yes
yes enabled false no
yes disabled true yes
yes disabled false (default) no
no enabled true (default) no
no enabled false no
no disabled true no
no disabled false (default) no

各欄位解釋,

  • namespaceSelector match:各namespace的 istio-inject是 enable或 disable
  • default policy: 這個預設都是enable,要查看使用command或到configmap查看 istio-sidecar-injector
kubectl -n istio-system get configmap istio-sidecar-injector -o jsonpath='{.data.config}' | grep policy:

  • Pod override annotation : 直接指定pod會不會注入的 annotation
  • Sidecar injected :結果

結論,
namespace只要是 disabled的,通通不會inject sidecar

ref.
1. Automatic Sidecar Injection
2. Sidecar 自動注入問題
3. 關於Istio Automatic Sidecar Injection那檔事

沒有留言:

張貼留言