istio.io/content/zh/docs/setup/additional-setup/config-profiles/index.md

7.2 KiB
Raw Blame History

title description weight aliases keywords owner test
安装配置文件 描述 Istio 内置的安装配置文件。 35
/zh/docs/setup/kubernetes/additional-setup/config-profiles/
profiles
install
helm
istio/wg-environments-maintainers n/a

本页面描述了在安装 Istio 时所能够使用的内置配置文件。

这些配置文件是内置于 Helm Chart 中的一组带有名称的覆盖集合,在通过 helmistioctl 安装 Istio 时可以使用这些配置文件。

这些配置文件为常见的部署拓扑结构和目标平台提供了对 Istio 控制面和数据面的高级定制能力。

{{< tip >}} 配置文件可以与其他值覆盖或参数组合使用, 因此配置文件中设置的任何单独值都可以通过在命令中添加 --set 参数手动覆盖。 {{< /tip >}}

配置文件分为两类:部署配置文件和平台配置文件,建议同时使用这两类配置文件。

  • 部署配置文件用于为特定部署拓扑(如 defaultremoteambient 等)提供合理的默认设置。
  • 平台配置文件用于为特定目标平台(如 eksgkeopenshift 等)提供必要的平台特定默认设置。

例如,如果您希望在 GKE 上安装 default Sidecar 数据面,建议使用如下部署和平台配置文件作为起点:

{{< tabset category-name="install-method" >}}

{{< tab name="Helm" category-value="helm" >}}

对于 Helm请为您安装的每个 Chart 指定相同的 profileplatform,例如安装 istiod

{{< text syntax=bash snip_id=install_istiod_helm_platform >}} $ helm install istiod istio/istiod -n istio-system --set profile=default --set global.platform=gke --wait {{< /text >}}

{{< /tab >}}

{{< tab name="istioctl" category-value="istioctl" >}}

对于 istioctl,以参数形式传入相同的 profileplatform

{{< text syntax=bash snip_id=install_istiod_istioctl_platform >}} $ istioctl install --set profile=default --set values.global.platform=gke {{< /text >}}

{{< /tab >}}

{{< /tabset >}}

{{< warning >}} 请注意,helmistioctl 安装方式之间的一个关键区别是: istioctl 的配置文件中还包含了将由 istioctl 自动安装的 Istio 组件列表。

helm 并不会这样做,用户需要单独使用 helm install 安装每一个所需的 Istio 组件,并为每个组件单独提供所需的配置文件参数。

您可以将 istioctlhelm 理解为共享相同名称、相同内容的配置文件,但 istioctl 会基于所选配置文件自动决定安装哪些组件,因此只需一条命令就能实现完整的安装效果。 {{< /warning >}}

部署配置文件

以下是当前可用于 istioctlhelm 安装方式的内置于部署配置文件。 请注意,这些配置文件本质上只是 Helm 值的预设集合,并不是安装 Istio 的强制要求, 但它们为新用户提供了便捷的基础配置,推荐使用。此外, 您还可以根据具体需求自定义配置 超出配置文件所提供的范围。当前提供以下几种内置配置文件:

  1. default:根据 IstioOperator API 的默认设置来启用组件。 建议用于生产部署和多集群网格 中的{{< gloss "primary cluster" >}}主集群{{< /gloss >}}。

  2. demo:这一配置具有适度的资源需求,旨在展示 Istio 的功能。 它适合运行 Bookinfo 应用程序和相关任务。 这是通过快速开始指导安装的配置。

    {{< warning >}} 此配置文件启用了高级别的追踪和访问日志,因此不适合进行性能测试。 {{< /warning >}}

  3. minimal:与默认配置文件相同,但只安装了控制平面组件。 它允许您使用单独的配置文件 配置控制平面和数据平面组件(例如 Gateway

  4. remote:用于配置一个{{< gloss "remote cluster" >}}从集群{{< /gloss >}} 这个从集群由{{< gloss "external control plane" >}}外部控制平面{{< /gloss >}}管理, 或者由多集群网格的 {{< gloss "primary cluster" >}}主集群{{< /gloss >}}中的控制平面管理。

  5. ambientAmbient 配置文件旨在帮助您开始使用 Ambient 模式

  6. empty:不部署任何内容。可以作为自定义配置的基本配置文件。

  7. preview:预览文件包含的功能都属于实验性阶段。该配置文件是为了探索 Istio 的新功能。 确保稳定性、安全性和性能(使用风险需自负)。

Istio 的[部署配置文件值集合在此定义]({{< github_tree >}}/manifests/helm-profiles),适用于 istioctlhelm

仅在使用 istioctl 时,指定配置文件还会自动选择某些 Istio 组件进行安装,这些组件在下表中以 ✔ 标记:

default demo minimal remote empty preview ambient
核心组件Core components
      istio-egressgateway
      istio-ingressgateway
      istiod
      CNI
      Ztunnel

{{< tip >}} 如需进一步自定义 Istio还可以安装多个附加组件。 详情请参阅集成文档。 {{< /tip >}}

平台配置文件

以下是目前可用于 istioctlhelm 安装方式的内置于平台配置文件。请注意, 这些配置文件本质上只是 Helm 值的预设集合,虽然在这些环境中安装 Istio 并不强制使用它们,但它们提供了方便的基础设置,推荐新用户使用:

  1. gke:为在 Google Kubernetes EngineGKE环境中安装 Istio 设置了必要或推荐的 Chart 选项。

  2. eks:为在 Amazon Elastic Kubernetes ServiceEKS环境中安装 Istio 设置了必要或推荐的 Chart 选项。

  3. openshift:为在 OpenShift 环境中安装 Istio 设置了必要或推荐的 Chart 选项。

  4. k3d:为在 k3d 环境中安装 Istio 设置了必要或推荐的 Chart 选项。

  5. k3s:为在 K3s 环境中安装 Istio 设置了必要或推荐的 Chart 选项。

  6. microk8s:为在 MicroK8s 环境中安装 Istio 设置了必要或推荐的 Chart 选项。

  7. minikube:为在 minikube 环境中安装 Istio 设置了必要或推荐的 Chart 选项。

Istio 的[平台配置文件在此定义]({{< github_tree >}}/manifests/helm-profiles),适用于 istioctlhelm