在具有 Pod 安全策略的情况下启用 Istio
如果你启用了限制性 Pod 安全策略(Pod Security Policy),由于 Istio 需要某些权限才能自行安装和管理 pod 基础设施,因此 Istio 可能无法正常运行。在本文中,我们将配置一个为 Istio 启用了 PSP 的集群,并设置 Istio CNI 插件。
Istio CNI 插件不再要求每个应用 pod 具有特权 NET_ADMIN
容器。如需更多信息,请参阅 Istio CNI 插件文档。请注意,https://istio.io/about/feature-stages/[Istio CNI 插件处于 alpha 阶段]。
先决条件:
要在使用 Rancher UI 创建 Kubernetes 集群时启用 Pod 安全策略支持,请转到高级选项。在 Pod 安全策略支持中,单击启用,然后选择一个默认的 pod 安全策略。 |
1. 将 PodSecurityPolicy 设置为不受限制
不受限制的 PSP 支持安装 Istio。
在安装 Istio 的项目或计划安装 Istio 的项目中,将 PSP 设置为 unrestricted
。
-
点击 ☰ > 集群管理。
-
选择你创建的集群,并点击 Explore。
-
单击
。 -
找到项目: System,然后选择 ⋮ > 编辑配置。
-
将 Pod 安全策略选项更改为不受限制,然后单击保存。
2. 启用 CNI
通过 Apps 安装或升级 Istio 时:
-
单击组件。
-
选中启用 CNI旁边的框。
-
完成 Istio 的安装或升级。
你也可以通过编辑 values.yaml
来启用 CNI:
istio_cni.enabled: true
在集群中启用 CNI 后,Istio 应该能成功安装。
3. 验证 CNI 是否正常工作
通过部署示例应用或部署你自己的应用,来验证 CNI 是否正常工作。