是否可以使用本地 Kubernetes 来管理部署在混合云中的集群?

Can one use on-premises Kubernetes to manage clusters deployed in a hybrid cloud?

如果 运行 Docker 企业在本地私有云中使用 Kubernetes,是否可以在像 Azure 这样的 public 云中添加集群?

这就是 Azure Arc 可以帮助您实现此要求的地方。不过目前还处于预览阶段,我希望它很快就会普遍可用。

来自DOCS,

You can attach and configure Kubernetes clusters inside or outside of Azure by using Azure Arc-enabled Kubernetes Preview. When a Kubernetes cluster is attached to Azure Arc, it will appear in the Azure portal. It will have an Azure Resource Manager ID and a managed identity. Clusters are attached to standard Azure subscriptions, are located in a resource group, and can receive tags just like any other Azure resource.

在 GCP 上,Anthos 是候选者。
您可以查看他们的 architecture,看看它是否符合您的需求。
Anthos 在大多数 GCP 架构课程中都有宣传,并提供 GKE 与 on-prem(on-prem 集群必须满足一些先决条件,或者您可以使用 Google 提供的版本)和 AWS 之间的集成Kubernetes 集群。

Istio 是一个服务网格,如果我正确理解了您的要求,可以使用 the multiple clusters and multiple networks 模型。

kubernetes SIG 下的

cluster API 是一个开源项目,它提供声明式 APIs 和工具来简化配置、升级和操作多个 Kubernetes 集群。

集群 API 可以扩展以支持您需要的任何基础架构提供商(AWS、Azure、vSphere 等)或 bootstrap 提供商(默认为 kubeadm)。可用的 supported providers 列表越来越多。

如果供应商提供的软件不适合您,您可以使用集群 API 并基于集群构建您自己的自定义管理平面 API。

如果您正在寻找供应商提供的管理平面,它可以托管在本地,并且可以管理本地 kubernetes 集群以及任何 public 云提供商(如 AWS)上的集群的生命周期, GCP、Azure 然后来自 VMware 的 Tanzu Mission Control 是一个选项。在内部它使用集群 API.

就我个人而言,我不会使用 Anthos 或 Arc,因为它们似乎是一种锁定特定供应商的方式

为什么不为此使用 rancher,您可以管理 on-premise 和 GKE AKS EKS 或安装在 ec2 中的集群。

这是一个很好的工具