混合部署是指应用程序和数据库跨越多个环境的架构。在Atlas中,混合部署涉及两种不同的架构模式:
混合连接:应用程序在一个环境中运行,示例在本地部署或客户管理的VPC中,而数据库在Atlas中运行。这是默认的企业现实,也是最常见的混合部署模式。
混合数据拓扑: MongoDB数据存在于多种环境中,例如Atlas和本地部署。这是一种不太常见但更复杂的模式,通常在迁移过程中或用于特殊使用案例。
混合连接
混合连接部署在一个环境中运行应用程序,而数据库在Atlas中运行。数据完全存储在Atlas中。混合是指应用程序运行的位置,而不是数据库所在的位置。
用例
混合连接是大多数企业部署的默认现实。常见示例包括以下各项的组合:
连接到 AWS、 Azure或GCP中Atlas 的本地部署应用程序服务器。
客户VPC中通过私有端点连接到Atlas 的应用程序或Kubernetes工作负载。
数据中心内通过 VPN 或 Direct Connect 连接到Atlas 的旧版应用程序。
密钥要求
实现混合连接时,请考虑以下要求:
统一网络:使用 VPN、AWS Direct Connect、 Azure ExpressRoute 或其他云服务提供商的类似技术建立安全的网络连接。安全的网络连接有助于确保不会暴露在公共互联网上。
私有连接:使用私有 IP 和私有 DNS 连接到Atlas。配置私有端点,实现不遍历公共互联网的安全连接。
共享身份和访问权限:实施 SSO 和 IAM 集成,在不同环境中保持一致的身份验证和授权。
一致的安全和治理:应用统一的安全策略,包括IP白名单、X.509 证书和网络访问权限控制。
延迟可预测性:设计网络路径以最大限度地减少和稳定应用程序服务器和Atlas集群之间的延迟。
运营所有权边界:明确定义哪些团队管理基础架构的哪些组件。
下图说明了典型的混合连接架构:
混合连接架构显示通过安全网络路径和私有端点连接的本地部署应用程序、客户VPC和Atlas 集群。
配置
要配置混合连接,请执行以下操作:
在本地部署或客户托管环境与托管Atlas 集群的云提供商之间建立网络连接。使用 VPN、Direct Connect、ExpressRoute 或类似技术。
在Atlas中配置私有端点,以启用环境中的私有连接。
配置身份验证和访问权限控制。请参阅Atlas身份验证指南和Atlas授权指南。
测试从应用程序环境到Atlas 的连接和延迟。
混合数据拓扑结构
混合数据拓扑结构部署涉及存在于多个环境中的MongoDB数据,例如Atlas和本地部署。混合数据拓扑结构是高级模式,操作非常复杂。
重要
Atlas不支持拆分单个集群以跨越多种部署类型。每个集群必须完全存在于Atlas中或完全本地部署。
用例
混合数据拓扑不如混合连接部署常见。组织通常将其用于:
迁移:云采用期间的过渡性混合状态,其中数据逐渐从本地部署迁移到Atlas。
专业化要求:要求您在多个环境中维护单独MongoDB部署的高级使用案例。
示例包括:
一个Atlas 集群和一个单独的本地部署MongoDB 集群,应用程序根据要求连接到一个或两个集群。
使用MongoDB工具将数据从本地部署迁移到Atlas。
重要注意事项
混合数据拓扑结构需要进行重大权衡:
操作负担:您管理的单独MongoDB部署会增加操作复杂性,并且需要额外的专业知识。
数据一致性:单独部署之间的一致性很难维护,可能需要自定义解决方案。
临时性:这些模式在迁移中通常是临时性的,而不是长期架构。
请联系 MongoDB 的Professional Services团队,获取有关实施混合数据拓扑结构模式的指导。
配置
要配置混合数据拓扑结构:
云部署选项
Atlas支持以下云部署类型:
配置云部署
要学习如何配置云部署以及可以添加的不同节点类型,请参阅 Atlas 文档中的创建集群。
自管理部署选项
您可以使用以下方法创建自管理部署:
MongoDB Enterprise通常用于对高级安全、操作和集成有额外要求的生产、测试和开发环境。
MongoDB Community通常用于需要额外或定制配置的开发和测试环境。
MongoDB Atlas本地部署使用Atlas CLI驱动,使用Docker部署,通常用于开发场景的简单、完整的本地部署。
为自管理部署安装MongoDB
要学习;了解如何配置本地部署自管理部署,请参阅MongoDB Enterprise或MongoDB Community中的安装MongoDB以进行自管理部署。
创建本地部署
要学习;了解如何使用Atlas CLI配置本地部署以进行开发和测试,请参阅创建本地Atlas部署。