0

在 GKE 中找到了 2 种安装 istio 的方法,不确定哪种是推荐的方法,有什么区别。 1. Installing via lots of commands shown in the Istio document 2. I have an existing GKE cluster, their is an option to edit the cluster and add-on as Istio enabled

虽然尝试了 2 种方式,但我在 GKE 集群工作负载 UI 控制台中看不到任何与 istio 相关的服务,如 citadel、galley、遥测,但如果我运行kubectl get pods -n istio-system 它们,我可以看到它在终端中运行它们在安装中是否有任何差异,这是推荐的安装方式?

4

1 回答 1

1

回答问题:

在 GKE 中找到了 2 种安装 istio 的方法,不确定哪种是推荐的方法,有什么区别。

两种方法都是正确的(在 GKE 插件上启用 Istio 和/或使用istioctl/运算符)。主要区别在于它们之间存在一些差异(使用的版本、附加配置选项、自动更新等)。

引用官方文档:

我应该在 GKE 上使用 Istio 吗?

虽然 GKE 上的 Istio 确实管理安装和升级,但它使用适合大多数需求的控制平面的默认安装选项。但是,您应该注意以下限制:

  • 安装的 Istio 版本与 GKE 版本绑定,您将无法独立更新它们。
  • 控制平面的配置有很大的限制。在生产环境中使用 Istio on GKE 插件之前,您应该查看这些限制。

如果您需要使用更新的 Istio 开源版本,或者想要更好地控制您的 Istio 控制平面配置(这可能会在某些生产用例中发生),我们建议您使用 Istio 的开源版本而不是 Istio在 GKE 插件上。

-- Cloud.google.com:Istio:GKE 上的 Istio:概述:我应该在 GKE 上使用 Istio

另外值得一提的是:

请注意,Istio on GKE 插件会自动在集群的节点池中为Cloud MonitoringLoggingTrace设置访问范围

-- Cloud.google.com:Istio:GKE 上的 Istio:概述:支持

这意味着从Istio.io安装可能需要额外的配置/步骤才能将日志发送到 Stackdriver。


还值得一提的是,在启用了 GKE 插件上的 Istio 的版本或更新版本的GKE集群方面,存在一些重大变化。1.17.9-gke.6300

从 1.6 版开始,Istio on Google Kubernetes Engine 插件使用 Istio Operator 进行安装和配置。Istio Operator 遵循 Kubernetes Operator 模式。Operator 允许您通过为 Istio 安装定义 Kubernetes自定义资源定义(CRD) 来配置 Istio。然后,操作员使用控制器对安装进行更改以匹配自定义资源。

当您将集群升级到 1.17.9-gke.6300 或更高版本时,Istio 1.6 Operator 和控制平面与现有的 1.4.x Istio 控制平面一起安装。升级需要用户操作并遵循双控制平面升级过程(在 Istio 文档中称为金丝雀升级)。

-- Cloud.google.com:Istio:GKE 上的 Istion:使用 Operator 升级


继:

虽然尝试了 2 种方式,但我在 GKE Cluster 工作负载 UI 控制台中看不到任何与 istio 相关的服务,例如 citadel、galley、遥测,但如果我运行为,我可以看到它在终端中运行kubectl get pods -n istio-system

您是否在kubectl报告资源istio-system和签入Cloud Console-> Kubernetes Engine->之间等待过任何时间Workloads

您还可以检查下图中的框是否设置正确。

盒子

于 2020-10-26T08:35:13.127 回答