IstioOperator 和 sidecar 自动注入
IstioOperator and sidecar autoinjection
如何使用 IstioOperator 启用 sidecar 注入?这是我的配置,还不够。
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
name: control-plane-1-9-4
namespace: istio-system
spec:
components:
base:
enabled: true
pilot:
enabled: true
profile: default
revision: 1-9-4
values:
global:
proxy:
autoInject: enabled
默认启用自动注入。
$ kubectl get configmap istio-sidecar-injector -n istio-system -o yaml | head -6
apiVersion: v1
data:
config: |-
# defaultTemplates defines the default template to use for pods that do not explicitly specify a template
defaultTemplates: [sidecar]
policy: enabled
您可以通过将值设置为 disabled
来禁用此功能。
values:
global:
proxy:
autoInject: disabled
现在命名空间上的 istio-injection=enabled
标签将被忽略。
您必须在应用程序清单中手动设置 sidecar 注释:
annotations:
sidecar.istio.io/inject: "true"
中有关该主题的更多信息
我猜你想做的是默认在任何命名空间上启用自动注入。这不可能。
此问题与 revision
安装期间的参数使用有关 istioctl operator init --revision 1-9-4
如果使用 --revision
那么 NS 应该是这样的:
apiVersion: v1
kind: Namespace
metadata:
labels:
istio.io/rev: 1-9-4
name: default
如何使用 IstioOperator 启用 sidecar 注入?这是我的配置,还不够。
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
name: control-plane-1-9-4
namespace: istio-system
spec:
components:
base:
enabled: true
pilot:
enabled: true
profile: default
revision: 1-9-4
values:
global:
proxy:
autoInject: enabled
默认启用自动注入。
$ kubectl get configmap istio-sidecar-injector -n istio-system -o yaml | head -6
apiVersion: v1
data:
config: |-
# defaultTemplates defines the default template to use for pods that do not explicitly specify a template
defaultTemplates: [sidecar]
policy: enabled
您可以通过将值设置为 disabled
来禁用此功能。
values:
global:
proxy:
autoInject: disabled
现在命名空间上的 istio-injection=enabled
标签将被忽略。
您必须在应用程序清单中手动设置 sidecar 注释:
annotations:
sidecar.istio.io/inject: "true"
中有关该主题的更多信息
我猜你想做的是默认在任何命名空间上启用自动注入。这不可能。
此问题与 revision
安装期间的参数使用有关 istioctl operator init --revision 1-9-4
如果使用 --revision
那么 NS 应该是这样的:
apiVersion: v1
kind: Namespace
metadata:
labels:
istio.io/rev: 1-9-4
name: default