使用 IstioRevisionTag 资源启用 sidecar 注入
如果您的 revision 名称不是 default,仍然可以使用 istio-injection=enabled 标签。为此,您必须先创建名为 default 的 IstioRevisionTag 资源,并使其指向您的 Istio 资源。
参考
- IstioRevisionTag 资源(Sail Operator 文档)
前提条件
- 已安装 Alauda Service Mesh v2 Operator,已创建
Istio资源,并且 Istio 已由 Operator 部署。 - 已创建
IstioCNI资源,并且所需的IstioCNIpod 已由 Operator 部署。 - 计划加入网格的 namespace 已存在,并且可被 Istio 控制平面发现。
- 可选:网格所需的工作负载已部署。在这些示例中,Bookinfo 原生应用存在于
bookinfonamespace 中,但 sidecar 注入尚未配置(如步骤 2 所述)。如需了解更多信息,请参阅“部署 Bookinfo 原生应用”。
操作步骤
-
要查找
Istio资源的名称,请执行以下命令:示例输出
在此示例中,
Istio资源名为default,但其底层 revision 为default-v1-30-4。 -
在 YAML 文件中定义
IstioRevisionTag资源:示例
IstioRevisionTag资源 YAML -
使用以下命令应用
IstioRevisionTag资源: -
使用以下命令确认
IstioRevisionTag资源已成功创建:示例输出
如示例所示,新标签现在引用您的活动 revision
default-v1-30-4。现在,您可以使用istio-injection=enabled标签,就像您的 revision 名为default一样。 -
执行以下命令,检查 pod 是否在没有 sidecar 的情况下运行。目标 namespace 中的所有现有工作负载都应在
READY容器列中显示1/1。示例输出
-
使用以下命令将注入标签添加到
bookinfonamespace:示例输出
-
要激活 sidecar 注入,请运行以下命令,触发
bookinfonamespace 中工作负载的重新部署:
验证
-
运行以下命令检查 rollout 是否成功,并确认新创建的 pod 在
READY列中显示2/2容器:示例输出