--> 甲骨文云-部署高可用MySQL数据库系统:在Kubernetes集群的容器引擎中实现高效运行
欢迎访问深圳敏捷云计算科技有限公司!

甲骨文云-部署高可用MySQL数据库系统:在Kubernetes集群的容器引擎中实现高效运行

2024-03-07 原创文章

Oracle MySQL数据库服务是一种完全托管的数据库服务,部署在Oracle Cloud Infrastructure(OCI)中,支持寻求快速部署安全、云原生应用程序的运营商和开发人员。您可以使用OCI服务操作员为Kubernetes(OSOK)来配置和管理为部署在Kubernetes容器引擎(OKE)集群中的应用程序的MySQL数据库系统。


使用OSOK简化了OKE管理员对MySQL数据库系统的管理,并允许MySQL数据库系统实例使用Kubernetes包管理工具Helm与应用程序一起部署。


架构

这个参考架构展示了一个部署在OKE集群中的应用程序,该应用程序使用高可用的MySQL数据库系统作为其数据库。MySQL数据库系统完全在OKE集群内部通过OSOK部署和管理。


OSOK允许像管理任何其他Kubernetes资源一样管理MySQL数据库系统,使用标准的Kubernetes命令行界面 - kubectl,通过将MySQL数据库系统建模为自定义资源定义(CRD)并将这些定义应用到OKE集群。


MySQL数据库系统可以作为独立系统部署,也可以具有高可用性(HA)。启用HA的MySQL数据库系统包含部署在不同可用性域或故障域的三个实例。应用程序连接到单个端点以读取和写入数据库。在出现故障时,数据库系统将自动故障转移到第二个实例,而无需重新配置应用程序。


以下图表展示了这个参考架构。

架构包含以下组件:

区域

  • Oracle Cloud Infrastructure区域是一个地理定位区域,包含一个或多个数据中心,称为可用性域。区域相互独立,彼此之间可能相隔很远(跨越国家甚至大洲)。


可用性域

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


故障域

  • 故障域是可用性域内的硬件和基础设施分组。每个可用性域有三个故障域,具有独立的电力和硬件。当您在多个故障域中分布资源时,您的应用程序可以容忍物理服务器故障、系统维护和故障域内的电力故障。


虚拟云网络(VCN)和子网

  • VCN是您在Oracle Cloud Infrastructure区域内设置的可自定义、软件定义的网络。像传统数据中心网络一样,VCN让您完全控制您的网络环境。VCN可以有多个不重叠的CIDR块,您可以在创建VCN后更改它们。您可以将VCN分割成子网,这些子网可以特定于一个区域或一个可用性域。每个子网由不与VCN中其他子网重叠的连续地址范围组成。您可以在创建后更改子网的大小。子网可以是公共的或私有的。


Kubernetes容器引擎

  • Oracle Cloud Infrastructure Kubernetes容器引擎是一种完全托管的、可扩展的、高可用性服务,您可以使用它将容器化应用程序部署到云中。您指定应用程序所需的计算资源,Kubernetes容器引擎会在现有租户的Oracle Cloud Infrastructure中为其配置资源。Kubernetes容器引擎使用Kubernetes自动化部署、扩展和管理跨主机集群的容器化应用程序。


Oracle MySQL数据库服务

  • Oracle MySQL数据库服务是一种完全托管的Oracle Cloud Infrastructure(OCI)数据库服务,让开发人员可以快速开发和部署安全的云原生应用程序。专为OCI优化并仅在OCI中可用,Oracle MySQL数据库服务由OCI和MySQL工程团队100%构建、管理和支持。
  • Oracle MySQL数据库服务拥有一个集成的、高性能的分析引擎(HeatWave),可直接对运行中的MySQL数据库进行复杂的实时分析。


网络地址转换(NAT)网关

  • NAT网关使VCN中的私有资源能够访问互联网上的主机,而无需将这些资源暴露给传入的互联网连接。


服务网关

  • 服务网关提供从VCN到其他服务(如Oracle Cloud Infrastructure对象存储)的访问。从VCN到Oracle服务的流量通过Oracle网络织物传输,不经过互联网。


注册中心

  • Oracle Cloud Infrastructure注册中心是一个Oracle管理的注册中心,它可以简化您的从开发到生产的工作流。注册中心使您轻松存储、共享和管理开发工件,如Docker镜像。Oracle Cloud Infrastructure的高可用性和可扩展架构确保您可以可靠地部署和管理应用程序。


负载均衡器

  • Oracle Cloud Infrastructure负载均衡服务提供了从单个入口点到后端多个服务器的自动化流量分发。


路由表

  • 虚拟路由表包含将流量从子网路由到VCN外部目的地的规则,通常是通过网关。


安全列表

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



建议

  • 以下建议仅作为起点。您的需求可能与此处描述的架构不同。

虚拟云网络(VCN)

  • 创建VCN时,根据计划连接到VCN子网中的资源数量,确定所需的CIDR块数量及各块大小。使用标准私有IP地址空间内的CIDR块。
  • 选择不与任何您计划建立私有连接的其他网络(Oracle Cloud Infrastructure、本地数据中心或其他云提供商)重叠的CIDR块。
  • 创建VCN后,您可以更改、添加或移除其CIDR块。
  • 设计子网时,考虑您的流量和安全需求。将特定层或角色内的所有资源连接至同一子网,以此作为安全边界。


负载均衡器带宽

  • 创建负载均衡器时,您可以选择预定义形状,提供固定带宽,或指定自定义(灵活)形状,在其中设置带宽范围,让服务根据流量模式自动调整带宽。无论采取哪种方式,在创建负载均衡器后,您随时都可以更改其形状。


安全列表

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


Oracle MySQL数据库服务

  • 在此架构中,应用程序将关系数据存储在Oracle MySQL数据库服务中。我们建议使用最新版本。


此文采用简洁直接的风格,快速捕捉目标受众的注意力,同时使用自然口语化的文字表达,符合AIDA模型和“4U”原则,关注于云服务平台、云服务器和企业上云等关键词。



考虑因素

在Oracle Cloud中部署应用程序时,请考虑以下可用性选项。

  • 应用程序可用性
  • 应用程序通过部署中的多个容器实现高可用性。
  • MySQL数据库服务的可用性和可扩展性
  • 展示在高可用架构中的MySQL数据库服务,利用内置的MySQL高可用选项,创建三个实例并将它们放置在不同的故障域中。
  • 安全性
  • 使用策略限制谁可以访问可用的OCI资源。OKE与OCI身份和访问管理(IAM)集成。IAM通过本地OCI身份功能提供便捷的认证。


部署

  • 这个参考架构可以从OKE集群部署和管理,无需使用OCI控制台或CLI,并且可以通过Helm图表自动化。此参考架构的样例Helm图表便于从部署在OCI中的Kubernetes集群创建和管理MySQL数据库系统。您可以从GitHub下载代码,并根据具体需求进行定制。
  1. 访问GitHub。
  2. 克隆或下载仓库到您的本地计算机。
  3. 按照README文档中的说明操作。



开启您的Oracle云之旅:Agilewing - 您的智能云服务伙伴

作为Oracle的高级合作伙伴,Agilewing正重新定义企业体验Oracle云服务的方式。借助于其简化的开户流程和一流的技术支持,Agilewing将复杂的开户和操作流程转化为一种轻松、直观的体验。通过我们的一站式服务,您可以迅速开启并享受Oracle云的全方位服务,从而无缝融入云端世界。


Agilewing的AgileCDN服务,结合了OCI的云基础服务,提供了一流的全球内容加速解决方案。超过2800个全球POP节点和7000个直连点的强大网络,确保了无论您的业务扩展到全球哪个角落,都能保持高效稳定的运行。


利用Oracle云的先进技术,Agilewing致力于简化云服务搭建、云迁移和业务出海的过程。我们的合作模式为客户带来经济高效的解决方案,使他们能够更加专注于核心业务,同时享受Oracle云的高性能和安全保障。


Oracle云服务,作为一个充满潜力的领域,以其高性能、安全性和全球统一的服务标准,为各类企业开启了新的机遇之门。通过Agilewing的专业服务,无论是个人用户还是企业,都能轻松步入这个充满技术革新和高效能的新时代。现在,就让Agilewing引领您开始探索Oracle云服务,打开一个全新的世界大门。