--> 甲骨文云-轻松部署Magento电商平台:Oracle Linux结合MySQL数据库服务的高效解决方案
欢迎访问深圳敏捷云计算科技有限公司!

甲骨文云-轻松部署Magento电商平台:Oracle Linux结合MySQL数据库服务的高效解决方案

2024-03-07 原创文章

您可以在Oracle Linux上部署Magento电子商务平台,并结合MySQL数据库服务,为用户和企业提供一个可扩展且稳健的架构,实现低实施和维护工作量,同时享受庞大的社区驱动的知识库。


Magento是一个用PHP编写的开源电子商务平台,可以使用其他PHP框架,如Laminas和Symfony。其源代码在开放软件许可证(OSL)v3.0下分发。Magento采用MySQL关系数据库管理系统、PHP编程语言和Zend框架的元素。它应用了面向对象编程的约定和模型-视图-控制器架构。


架构

您可以将Magento部署为单节点配置,或作为多节点、高可用配置的一部分。这个参考架构包括与这两种配置兼容的Terraform自动化。


对于生产级别、高可用架构,请参考以下图表,它展示了一个多节点场景。


前述图表展示了一个在OCI上的简化的高可用性应用环境,重点关注位于负载均衡器后的两个虚拟机实例。这些实例存在于一个可用性域内的两个不同的故障域中。该架构利用了OCI文件存储服务;Magento安装在共享的网络文件系统(NFS)中。文件系统存在于一个拥有网络安全组(NSG)的专用私有子网中,该NSG允许所有实例访问挂载目标。


下图展示了一个简单的单节点架构。它由轻量级部署组成,适合用于学习目的或作为概念验证。

多节点架构包含以下OCI组件:

政策

  • Oracle云基础设施身份和访问管理政策指定谁可以访问哪些资源以及如何访问。授权是在组和分区级别进行的,这意味着您可以编写一个政策,给予一个组在特定分区内或对整个租户的特定类型的访问权限。


分区

  • 分区是Oracle云基础设施租户内跨地区的逻辑分区。使用分区来组织Oracle云中的资源,控制对资源的访问,并设置使用配额。要控制对特定分区中资源的访问,您需要定义政策,指定谁可以访问资源以及他们可以执行哪些操作。


虚拟云网络(VCN)

  • 在OCI中,您的首要步骤之一是为您的云资源设置虚拟云网络(VCN)。VCN是您在OCI地区中设置的软件定义网络。VCN可以细分为子网,子网可以特定于一个地区或一个可用性域。地区特定和可用性域特定的子网可以在同一个VCN中共存。子网可以是公共的或私有的。


可用性域

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


负载均衡器

  • Oracle云基础设施负载均衡服务提供了从单个入口点到后端多个服务器的自动流量分配。


计算实例

  • Oracle云基础设施计算允许您配置和管理计算主机。您可以启动满足您资源需求(CPU、内存、网络带宽和存储)的计算实例。创建计算实例后,您可以安全地访问它,重新启动它,连接和断开卷,并在不再需要时终止它。


互联网网关

  • 互联网网关允许在VCN中的公共子网和公共互联网之间的流量。


动态路由网关(DRG)

  • DRG是一种虚拟路由器,为本地网络和VCN之间的私有网络流量提供路径,也可用于在同一地区或跨地区的VCN之间路由流量。


文件存储

  • Oracle云基础设施文件存储服务提供了持久、可扩展、安全的企业级网络文件系统。您可以从VCN中的任何裸金属、虚拟机或容器实例连接到文件存储服务文件系统。您还可以通过使用Oracle云基础设施FastConnect和IPSec VPN从VCN外部访问文件系统。


网络安全组(NSG)

  • NSG充当您云资源的虚拟防火墙。在Oracle云基础设施的零信任安全模型下,所有流量都被拒绝,您可以控制VCN内的网络流量。NSG由一组入站和出站安全规则组成,这些规则仅适用于单个VCN中指定的一组VNIC。


  • 建议
  • 以下建议可作为在Oracle Linux上部署Magento电子商务平台和MySQL数据库服务的起点。您的需求可能与此处描述的架构不同。
  • 虚拟云网络(VCN)
  • 创建VCN时,根据您计划连接到VCN子网中的资源数量,确定所需CIDR块的数量和每个块的大小。使用标准私有IP地址空间内的CIDR块。
  • 选择不与您的本地网络或任何其他网络重叠的地址范围,以便在必要时可以在VCN和您的本地网络之间建立连接。
  • 设计子网时,考虑您的流量和安全需求。将特定层或角色内的所有资源连接至同一子网,作为安全边界。
  • 安全
  • 使用政策限制谁可以访问您公司的OCI资源以及他们如何访问。使用Vault为您的密钥、证书和机密提供额外保护。
  • 网络服务提供两种虚拟防火墙功能,它们使用安全规则在数据包级别控制流量:安全列表和网络安全组(NSG)。NSG由一组入站和出站安全规则组成,这些规则仅适用于您在单个VCN中选择的一组VNIC。例如,您可以选择VCN中多层应用程序的Web层中充当Web服务器的所有计算实例。
  • NSG安全规则的功能与安全列表规则相同。然而,对于NSG安全规则的源或目的地,您可以指定NSG而不是CIDR块。因此,您可以轻松编写安全规则,以控制同一VCN中两个NSG之间的流量或单个NSG内的流量。创建数据库系统时,您可以指定一个或多个NSG。您还可以更新现有的数据库系统以使用一个或多个NSG。


计算

  • 根据需要为每个实例选择合适的OCPUs和内存组合,并配置本地NVMe和/或块存储。考虑使用可用的灵活形状,它提供了更多在OCPUs和内存组合方面的灵活性。


数据库

  • 根据计划的工作负载选择Oracle MySQL数据库服务形状。启用MySQL高可用性,以支持三个冗余节点。



考虑因素

在Oracle Linux上部署Magento电子商务平台和MySQL数据库服务时,请考虑以下因素:

应用程序的可用性和可扩展性

  • 在这个示例中,高可用架构展示了同一可用性域内不同故障域的两个实例。可以选择将实例放置在不同的可用性域中(在可用的地区),以获得更高的故障容忍性。更具动态适应性的另一种方法,用于应对更高和多变的性能需求,是使用实例池和自动伸缩。
  • 实例池允许您基于相同配置在同一地区创建和配置多个计算实例。
  • 自动伸缩可以根据性能指标(如CPU利用率)自动调整实例池中计算实例的数量。自动伸缩有助于在高需求时期为用户提供稳定的性能,并在低需求时期帮助您降低成本。


数据库的可用性和可扩展性

  • 高可用架构中展示的MySQL数据库系统利用了内置的MySQL高可用性选项,创建了三个实例并将它们放置在不同的故障域中。


数据库备份

  • MySQL数据库服务支持两种类型的备份:数据库系统中包含的所有数据的完整备份和自上次完整备份以来添加或更改的数据的增量备份。备份按以下方式运行:手动:控制台中的操作或通过API发起的请求触发备份。手动备份的保留时间至少为一天,最多为365天。自动:自动安排的备份无需任何操作即可运行,用户可以选择运行的时间。自动备份的保留时间在一到35天之间。默认保留值为七天。定义后,您不能编辑自动备份的保留期。


计算备份

  • Oracle云基础设施块卷服务允许您对块卷上的数据进行时间点备份。然后,您可以立即或稍后将这些备份恢复到新的卷。
  • 您还可以使用该服务在不中断应用程序或停机的情况下对启动卷进行时间点、崩溃一致的备份。启动卷备份功能与块卷备份功能相同。


安全政策

  • 使用政策限制谁可以访问您公司的OCI资源以及他们如何访问。


网络安全

  • 网络服务提供两种虚拟防火墙功能,它们使用安全规则在数据包级别控制流量:安全列表和网络安全组(NSG)。NSG由一组入站和出站安全规则组成,这些规则仅适用于您在单个VCN中选择的一组VNIC。例如,您可以选择VCN中多层应用程序的Web层中充当Web服务器的所有计算实例。
  • NSG安全规则的功能与安全列表规则相同。然而,对于NSG安全规则的源或目的地,您可以指定NSG而不是CIDR块。因此,您可以轻松编写安全规则,以控制同一VCN中两个NSG之间的流量或单个NSG内的流量。创建数据库系统时,您可以指定一个或多个NSG。您还可以更新现有的数据库系统以使用一个或多个NSG。
  • 在这些示例中,实例显示为存在于公共子网中。出于更高安全性的考虑,可以考虑将它们放置在私有子网中。在这种情况下,需要使用堡垒主机来访问实例。


部署

  • 这个参考架构的Terraform代码可在GitHub上获取。您可以通过单击将代码拉取到Oracle云基础设施资源管理器中,创建堆栈并部署,或者您可以从GitHub下载代码到您的计算机,自定义代码,并使用Terraform CLI部署架构。
  • 使用Oracle云基础设施资源管理器中的示例堆栈进行部署:点击,如果您还没有登录,请输入租户和用户凭据。选择您想要部署堆栈的地区。按照屏幕提示和指示创建堆栈。创建堆栈后,点击Terraform操作,并选择计划。等待作业完成,并审查计划。如需进行任何更改,请返回到堆栈详情页面,点击编辑堆栈,并进行必要的更改。然后,再次运行计划操作。如果不需要进一步更改,请返回到堆栈详情页面,点击Terraform操作,并选择应用。


使用GitHub中的Terraform代码进行部署:访问GitHub。克隆或下载仓库到您的本地计算机。按照README文档中的说明操作。


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

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


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


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


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