将使用 Oracle MySQL 数据库服务的云原生应用程序部署到云

在云中设置拓扑以部署容器化的云原生应用程序,并利用托管的可扩展服务以及 Oracle Cloud 的内置冗余和弹性功能。

您可以使用以下服务开发和部署云原生应用程序并将旧应用程序迁移到云:

  • Oracle Container Engine for Kubernetes(有时缩写为 OKE)是一种完全托管、可扩展和高可用性的服务,可用于将容器化应用程序部署到云中。当开发团队希望可靠地构建、部署和管理云原生应用程序时,请使用 OKE。

  • 使用 Oracle Cloud Infrastructure Registry,您可以使用专用 Docker 注册表进行内部使用、使用 Docker V2 API 和标准 Docker 命令行界面 (command-line interface, CLI) 将 Docker 映像推送和拉出注册表。

  • Oracle MySQL 数据库服务是一种完全托管的数据库服务,使组织能够使用世界上最受欢迎的开放源数据库部署云原生应用程序。它 100% 由 MySQL 团队开发、管理和支持。

体系结构

此引用体系结构具有 Oracle Container Engine for Kubernetes 群集,也称为 OKE 群集、Oracle MySQL 数据库服务Oracle Cloud Infrastructure Registry,用于容纳开发和可部署的云原生应用程序。

下图说明了此引用体系结构。

后面是 deploy-cloud-native-apps.png 的说明
插图 deploy-cloud-native-apps.png 的说明

体系结构包含以下组件:

  • 底座主机

    堡垒主机是一个计算实例,用作云外部拓扑的安全受控入口点。堡垒主机通常预配在非军事区 (DMZ) 中。它使您可以通过将敏感资源放置在无法直接从云外部访问的专用网络中来保护敏感资源。拓扑有一个已知的单个入口点,您可以定期监视和审计。因此,可以避免公开拓扑的更敏感的组件,而不会影响对这些组件的访问。

    此体系结构中的堡垒主机用于访问 OKE 群集中的节点。

  • Container Engine for Kubernetes

    Oracle Cloud Infrastructure Container Engine for Kubernetes 是一种完全托管、可扩展和高可用性的服务,可用于将容器化应用程序部署到云中。您可以指定应用程序所需的计算资源,Container Engine for Kubernetes 将在现有租户中的 Oracle Cloud Infrastructure 上设置这些资源。Container Engine for Kubernetes 使用 Kubernetes 自动部署、缩放和管理跨主机群集的容器化应用程序。

  • MySQL Database 服务

    在此引用体系结构中,Oracle MySQL 数据库服务存储应用程序数据。

  • 注册表

    Oracle Cloud Infrastructure Registry 是 Oracle 管理的注册表,可用于简化从开发到生产的工作流。注册表使您可以轻松地存储、共享和管理开发对象,如 Docker 映像。Oracle Cloud Infrastructure 的高可用性和可扩展的体系结构可确保您可以可靠地部署和管理应用程序。

  • 区域

    Oracle Cloud Infrastructure 区域是一个本地化地理区域,包含一个或多个数据中心,称为可用性域。区域独立于其他区域,其距离很大(跨越国家或甚至大陆)可以分开。

  • 可用性域

    可用性域是区域内的独立独立数据中心。每个可用性域中的物理资源都与其他可用性域中的资源隔离,这些资源提供故障容差。可用性域不共享基础设施,例如电源、冷却或内部可用性域网络。因此,一个可用性域的故障不可能影响该区域中的其他可用性域。

  • 容错域

    容错域是可用性域中的硬件和基础结构的分组。每个可用性域都有三个具有独立电源和硬件的容错域。在多个容错域之间分配资源时,应用程序可以容许容纳容错域中的物理服务器故障、系统维护和电源故障。

  • 虚拟云网络 (VCN) 和子网

    VCN 是在 Oracle Cloud Infrastructure 区域中设置的可自定义、软件定义的网络。与传统的数据中心网络一样,VCN 为您提供了对网络环境的完全控制。VCN 可以有多个非重叠 CIDR 块,您可以在创建 VCN 后更改这些块。您可以将 VCN 细分为子网,子网可以被限定为区域或可用性域。每个子网包含一系列与 VCN 中的其他子网不重叠的地址。您可以在创建后更改子网的大小。子网可以是公共的或专用的。

  • 安全列表

    对于每个子网,可以创建安全规则,以指定必须允许进出子网的源、目标和流量类型。

  • 动态路由网关 (DRG)

    DRG 是一个虚拟路由器,它为 VCN 与区域之外的网络(例如另一 Oracle Cloud Infrastructure 区域中的 VCN、内部部署网络或其他云提供商中的网络)之间的专用网络通信提供了路径。

  • VPN 连接

    VPN Connect 在您的内部部署网络和 Oracle Cloud Infrastructure 中的 VCN 之间提供站点到站点的 IPSec VPN 连接。IPSec 协议套件在包从源传输到目标之前加密 IP 通信,并在到达时解密通信。

  • FastConnect

    Oracle Cloud Infrastructure FastConnect 提供了一种在数据中心和 Oracle Cloud Infrastructure 之间创建专用专用专用连接的简单方法。与基于 Internet 的连接相比,FastConnect 提供了更高的带宽选项和更可靠的网络体验。

  • 服务网关

    通过服务网关可以从 VCN 访问其他服务,例如 Oracle Cloud Infrastructure Object Storage。从 VCN 到 Oracle 服务的流量通过 Oracle 网络网状结构网络遍历,从不遍历 Internet。

  • Internet 网关

    Internet 网关允许 VCN 中的公共子网与公共 Internet 之间的通信。

建议

使用以下建议案作为部署使用 Oracle MySQL 数据库服务的云原生应用程序的起点。您的要求可能与此处描述的体系结构不同。
  • 底座主机

    将 VM.Standard1.1 配置与最新的 Oracle Linux 操作系统使用。

  • OKE 群集

    使用控制台中的定制创建选项可以指定要部署的 VCN 和子网。创建一个三节点群集,然后选择 VM.Standard2.2 作为要以其开头的形状。对于较大的部署,您可以使用较大的集群大小以及较高的计算形状。

  • 集装箱注册表

    Oracle 管理注册表,因此您不必选择大小或任何其他选项。我们建议为安全最佳做法创建一个专用注册表。

  • VCN

    创建 VCN 时,根据计划附加到 VCN 中子网的资源数确定所需的 CIDR 块数和每个块的大小。使用标准专用 IP 地址空间内的 CIDR 块。

    选择不与您要设置专用连接的任何其他网络(在 Oracle Cloud Infrastructure、内部部署数据中心或其他云提供商中)重叠的 CIDR 块。

    创建 VCN 后,可以更改、添加和删除其 CIDR 块。

    设计子网时,请考虑流量和安全要求。将特定层或角色中的所有资源附加到可用作安全边界的同一子网。

  • 安全列表

    使用安全列表定义适用于整个子网的入站和出站规则。

    将 TCP 端口 3306(MySQL 端口)和 33060(MySQL X 协议端口)的入站规则添加到附加到 Oracle MySQL 数据库服务子网的安全列表中。通过将入站规则添加到附加到 OKE 群集的安全列表中,打开 OKE 群集上部署的应用程序的相关端口。作为两个安全列表的出站规则,以允许出站通信。

考虑事项

使用 Oracle MySQL 数据库服务部署云原生应用程序时,请考虑成本。

根据 Oracle MySQL 数据库服务所需的核心、内存和网络带宽选择 VM 配置。您可以从一个核心形状开始。如果需要为数据库服务提供更多的性能、内存或网络带宽,则可以创建具有较大配置的 MySQL Database 服务器并从备份还原数据库。

还可以通过将 OKE 群集中的 VM 节点的核心更改为更大的 VM 配置来扩展这些节点的核心。

了解更多信息

了解有关将使用 Oracle MySQL 数据库服务的云原生应用程序部署到云的更多信息。

复查以下附加资源: