使用 Istioctl 安装

跟随本指南安装、配置 Istio 网格,用于深入评估及生产发布。 如果您是 Istio 新手,只想简单尝试,请参考快速入门指南

本安装指南使用命令行工具 istioctl, 它提供丰富的定制功能,用于定制 Istio 控制平面以及数据平面 Sidecar。 它还提供用户输入验证功能,这有助于防止安装错误;提供定制选项,可以覆盖配置的任何方面。

使用这些说明,您可以选取任意一个 Istio 内置的配置档, 为您的特定需求进一步定制配置。

istioctl 命令通过命令行的选项支持完整的 IstioOperator API, 这些选项用于单独设置、以及接收包含 IstioOperator 定制资源(CR)的 yaml 文件。

先决条件

开始之前,检查下列先决条件:

  1. 下载 Istio 发行版
  2. 执行必要的平台安装
  3. 检查 Pod 和 Service 的要求

使用默认配置档安装 Istio

最简单的选择是用下面命令安装 Istio 默认配置档

$ istioctl install

此命令在 Kubernetes 集群上安装 default 配置档。 default 配置档是建立生产环境的一个良好起点, 这和较大的 demo 配置档不同,后者常用于评估一组广泛的 Istio 特性。

可以配置各种设置来修改安装。比如,要启动访问日志:

$ istioctl install --set meshConfig.accessLogFile=/dev/stdout

从外部 chart 安装

默认情况下,istioctl 使用内置 chart 生成安装清单。 这些 chart 随同 istioctl 一起发布,用以满足审计和定制,您可以在发行包的 manifests 目录下找到它们。 istioctl 除了使用内置 chart 外,还可以使用外部 chart。 为了选择外部 chart,可以设置参数 manifests 指向本地文件系统路径:

$ istioctl install --manifests=manifests/

如果使用 istioctl 1.25.0 版本的二进制文件,此命令将得到和独立运行 istioctl install 相同的结果, 这是因为它指向了和内置 chart 相同的 chart。 除非要实验或测试新特性,我们建议使用内置的 chart,而不是外部 chart,以保障 istioctl 与 chart 的兼容性。

安装一个不同的配置档

其他的 Istio 配置档,可以通过在命令行传递配置档名称的方式,安装到集群。 例如,下面命令可以用来安装 demo 配置档。

$ istioctl install --set profile=demo

安装前生成清单文件

在安装 Istio 之前,可以用 manifest generate 子命令生成清单文件。例如,使用以下命令为可以使用 kubectl 安装的 default 配置文件生成清单:

$ istioctl manifest generate > $HOME/generated-manifest.yaml

生成的清单可用于检查具体安装了什么以及跟踪清单随时间的变化。 虽然 IstioOperator CR 代表完整的用户配置并且足以跟踪它, 但 manifest generate 的输出还捕获了底层图表中可能的变化, 因此可用于跟踪实际安装的资源。

有关定制安装的更多信息,请参阅定制安装配置

卸载 Istio

要从集群中完整卸载 Istio,运行下面命令:

$ istioctl uninstall --purge

或者,只移除指定的 Istio 控制平面,运行以下命令:

$ istioctl uninstall <your original installation options>

$ istioctl manifest generate <your original installation options> | kubectl delete --ignore-not-found=true -f -

控制平面的命名空间(例如:istio-system)默认不会被移除。 如果确认不再需要,用下面命令移除该命名空间:

$ kubectl delete namespace istio-system
这些信息有用吗?
您是否有更多建议和改进意见?

感谢您的反馈!