要创建多 Kubernetes 集群 MongoDB 部署,您可以:
使用快速入门,使用GKE (Google Kubernetes Engine)和服务网格跨三个Kubernetes成员集群部署MongoDB副本集。
在每个成员集群上部署 MongoDBMultiCluster 资源。 这允许您为副本集资源进行不同的设置,例如覆盖 statefulSet 配置。
创建多 Kubernetes 集群 MongoDB 部署的两种方法都依赖于以下服务、工具及其文档:
Kubernetes 集群。 该过程使用 GKE (Google Kubernetes Engine) 以预配多个 Kubernetes 集群。每个 Kubernetes 节点集群托管一个 MongoDB 副本集部署,并代表一个为应用程序提供服务的数据中心。
MongoDB Controllers for Kubernetes Operator存储库,其中包含Kubernetes Operator部署Kubernetes集群所需的配置文件。
适用于Kubernetes的MongoDB Helm Charts,其中包含适用于多 Kubernetes集群MongoDB部署的图表。
Istio 服务网格。快速启动过程使用 Istio 来促进不同Kubernetes集群中部署的MongoDB副本集的 DNS 解析。只要确保跨集群服务 FQDN 可解析,就可以使用其他服务网格解决方案。
此外,我们还提供了 install_istio_separate_network 示例脚本 。此脚本基于 Istio 文档,并提供了 在不同网络上使用多主模式 的示例安装 。我们不保证未来的 Istio 版本能够维护该脚本。 如果您选择使用脚本,请查看最新的 Istio 文档,了解如何 安装多 集群 ,并根据需要调整脚本以匹配文档和您的部署。如果您使用其他服务网格解决方案,请创建自己的脚本来配置单独的网络,以便于 DNS 解析。
MongoDB kubectl 插件,用于设置多 Kubernetes 集群 MongoDB 部署,并允许运行自动和手动灾难恢复。 要了解更多信息,请参阅MongoDB 插件参考。