在托管式控制平面上启用可选功能
本页面介绍了如何在托管式 Cloud Service Mesh 上启用可选功能。如需了解集群内控制平面,请参阅在集群内控制平面上启用可选功能。
配置托管式 Cloud Service Mesh 时,支持的功能因控制平面实现而异,某些功能只能通过许可名单使用。如需了解详情,请参阅支持的功能。如果您当前正在使用基于 IstioOperator 的配置,从 IstioOperator 迁移工具可帮助转换为代管式控制平面支持的配置。
Distroless 代理映像
如果您使用托管式
TRAFFIC_DIRECTOR控制平面实现直接加入 Cloud Service Mesh,则仅支持 distroless 映像类型。您无法更改它。如果您的舰队最初使用的是
ISTIOD控制平面实现,且已迁移到TRAFFIC_DIRECTOR实现,则在迁移期间,您的映像类型保持不变,您可以自行将映像类型更改为 distroless。
最佳做法是将容器运行时的内容限制为仅包含必要的软件包。此方法可提高常见漏洞和披露 (CVE) 扫描程序的安全性和信噪比。Istio 提供基于 Distroless 基础映像的代理映像。
Distroless 映像不包含代理以外的任何二进制文件。
因此,无法使用 exec shell 或使用容器中的 curl、ping 或其他调试实用程序。不过,您可以使用临时容器附加到正在运行的工作负载 Pod,以便检查 Pod 并运行自定义命令。例如,请参阅收集 Cloud Service Mesh 日志。
以下配置可为整个 Cloud Service Mesh 启用 Distroless 映像。映像类型更改要求每个 pod 重启并重新注入才能生效。
apiVersion: v1
kind: ConfigMap
metadata:
name: istio-release-channel
namespace: istio-system
data:
mesh: |-
defaultConfig:
image:
imageType: distroless
您可以使用以下 Pod 注解替换 imageType。
sidecar.istio.io/proxyImageType: debug
使用注解更改部署的映像类型后,应重启部署。
kubectl rollout restart deployment -n NAMESPACE DEPLOYMENT_NAME
由于它不需要调试基础映像,因此大多数代理调试类型应使用 gcloud beta container fleet mesh debug proxy-status / proxy-config (详细信息)。