了解 Oracle E-Business Suite 拓扑

了解 Oracle E-Business Suite 部署中的不同层。

开始之前

在开始部署或迁移 Oracle E-Business Suite 应用程序之前,请确定 Oracle Cloud Infrastructure 是否支持要部署的 Oracle E-Business Suite 应用程序的版本。Oracle Cloud Infrastructure 支持 Oracle E-Business Suite 发行版 12.2 和 12.1.3。

关于逻辑主机名

Oracle 建议您在设置 Oracle E-Business Suite 数据库层和应用程序层时使用逻辑主机名,而不是物理主机名。使用逻辑主机名的优点是:

  • 提供在不运行克隆和重新配置的情况下将数据库和应用程序层移动到其他计算机或数据中心的功能。

  • 通过在活动站点和备用站点上使用相同的主机名来减少故障转移所需的重新配置量。

  • 避免因网络配置更改(例如主机名更改)而重现或重置数据库和应用程序层。

关于底座主机

堡垒主机是可选组件,可用于防火墙策略以保护数据库和应用程序服务器的管理接口免受外部访问。堡垒主机是使用 Linux 或 Windows 作为其操作系统的 Oracle Cloud Infrastructure 计算实例。

将堡垒主机放置在公共子网中,并为其分配公共 IP 地址以从 Internet 访问它。

要提供其他级别的安全性,可以设置安全列表以仅从内部部署网络的公共 IP 地址访问堡垒主机。可以通过堡垒主机访问专用子网中的 Oracle Cloud Infrastructure 实例。为此,请启用 ssh-agent 转发,该转发允许您连接到堡垒主机,然后通过从计算机转发身份证明来访问下一个服务器。您还可以使用动态 SSH 隧道访问专用子网中的实例。SSH 隧道是访问 Web 应用程序或其他监听服务的一种方法。动态隧道在本地端口上提供 SOCKS 代理,但连接源自远程主机。

关于负载平衡器层

使用 Oracle Cloud Infrastructure Load Balancing 可以在 VCN 中的可用性域之间向应用程序实例分发通信量。此服务提供负载平衡器的主实例和备用实例,以确保如果主负载平衡器关闭,备用负载平衡器将转发请求。负载平衡器可确保将请求路由到健康的应用程序实例。如果应用程序实例出现问题,则负载平衡器将删除该实例并开始将请求路由到剩余的健康应用程序实例。

根据您的要求,您可以将负载平衡器放置在公共或专用子网中。
  • 对于无法从 Internet 访问的内部端点,请使用专用负载平衡器。专用负载平衡器具有专用 IP 地址,无法从 Internet 访问该地址。负载平衡器的主实例和备用实例都位于同一专用子网中。您可以通过 DRG 通过 IPSec VPN 访问 VCN 或数据中心中的专用负载平衡器。专用负载平衡器接受来自数据中心的通信,并将通信分配到基础应用程序实例。

  • 对于面向互联网的端点,请使用公共负载平衡器。公共负载平衡器具有公共 IP 地址,可通过 Internet 访问该地址。您可以通过 Internet 网关从 Internet 访问公共负载平衡器。

  • 要访问内部端点和面向 Internet 的端点,请设置专用负载平衡器和公共负载平衡器。设置专用负载平衡器以供内部通信使用,并设置公共负载平衡器以供从 Internet 通信使用。

在本地或公共域名服务器 (DNS) 中注册 Oracle Cloud Infrastructure Load Balancing 实例的公共或专用 IP 地址,以便对应用程序端点进行域解析。

关于应用程序层

应用程序层位于与负载平衡器和数据库实例的子网分开的子网中。必须在可用性域中部署至少两个应用程序实例,以确保可用性域中的应用程序实例具有高可用性。

您可以使用与 Oracle E-Business Suite 数据库一起使用的多个应用程序层节点部署 Oracle E-Business Suite。Oracle 建议您使用共享应用程序二进制文件部署 Oracle E-Business Suite 多层设置。使用共享应用程序层文件系统时,Oracle E-Business Suite 应用程序层文件系统将与多节点环境中的每个节点共享。使用 Oracle Cloud Infrastructure 文件存储可以创建共享文件系统,以便在多个应用程序主机之间共享并同步 Oracle E-Business Suite 应用程序二进制文件。将共享文件系统用于多个应用程序主机时,它会减少磁盘空间要求,并无需向环境中的每个应用程序主机应用补丁程序。

从负载平衡器到应用程序实例的通信流量通过您在安全规则中定义的特定端口。设置安全规则,仅允许从负载平衡器到端口 8000 的通信以及从堡垒主机到端口 22 的通信。

可以使用 Oracle Cloud Infrastructure Block Volumes 的基于策略的备份功能备份 Oracle E-Business Suite 应用程序实例。

关于数据库层

Oracle Cloud Infrastructure 提供了多个用于设置 Oracle Database 系统 (DB System) 的选项。将数据库系统放置在单独的子网中。Oracle 建议在专用子网中创建 Oracle Cloud Infrastructure 上的数据库服务。使用安全列表可以限制仅从堡垒主机、应用程序服务器和内部部署服务器访问数据库服务器。

可以使用单节点 Oracle 计算虚拟机、单节点虚拟机数据库系统、两个节点 Oracle Real Application Clusters (RAC) 虚拟机数据库系统或 Oracle Exadata DB 系统部署数据库。要在可用性域中提供高可用性,Oracle 建议使用双节点虚拟机数据库系统或 Oracle Exadata DB 系统。双节点虚拟机数据库系统或 Oracle Exadata DB 系统使用 Oracle RAC 并部署双节点群集以实现高可用性。在任何情况下,可用性域中的数据库的两个实例都处于活动状态。从应用程序层收到的请求在数据库实例之间进行负载平衡。即使一个数据库实例已关闭,其他数据库实例服务也会请求。

对于数据库层,建议您设置安全列表,以确保仅通过端口 22、通过堡垒主机以及通过应用程序服务器通过端口 1521 进行通信。可以使用 Oracle Cloud Infrastructure Object Storage 使用 Oracle Recovery Manager (RMAN) 备份 Oracle E-Business Suite 数据库。

如果在多个可用性域中部署 Oracle E-Business Suite 以实现高可用性,则必须在同步模式下设置 Oracle Data Guard 或 Oracle Active Data Guard,以便在两个可用性域中的数据库中复制数据库更改。

关于安全列表

在 Oracle Cloud Infrastructure 中,防火墙规则是通过安全列表配置的。将为每个子网创建单独的安全列表。

Oracle 建议您为数据库、应用程序、负载平衡器和堡垒主机创建单独的子网,以确保将相应的安全列表分配给每个子网中的实例。使用安全列表可以允许不同层之间以及堡垒主机和外部主机之间的通信。安全列表包含用于过滤子网级别流量的入站和出站规则。它们还包含有关允许数据传输的通信端口的信息。这些端口(或者在某些情况下,安全规则中需要开放端口的协议)显示在体系结构图中的每个安全规则行上。

每个安全列表在实例级别强制执行。但是,在子网级别配置安全列表时,特定子网中的所有实例都受同一组规则的约束。每个子网可以有多个与其关联的安全列表,每个列表可以有多个规则。如果任何列表中的规则允许通信(或者通信是正在跟踪的现有连接的一部分),则允许传输数据包。除了安全性列表外,还可以使用 iptables 在实例级别实施另一层安全性。

对于公共子网中的部署,您可以通过阻止从 Internet 访问应用程序和数据库实例来提供附加的安全级别。使用定制安全列表可以防止从 Internet 访问应用程序和数据库实例,并允许从堡垒主机通过端口 22 访问数据库和应用程序主机以进行管理。不允许 SSH 从 Internet 访问应用程序和数据库实例,但您可以允许 SSH 从包含堡垒主机的子网访问这些实例。

您可以通过堡垒服务器访问专用子网中的实例。

堡垒主机的安全列表

堡垒安全列表允许通过端口 22 从公共 Internet 访问堡垒主机。

  • 要允许通过 Internet 从内部部署网络到堡垒主机的 SSH 通信,请执行以下操作:

    有状态入站:允许 TCP 通信从源 CIDR 0.0.0.0/0 和所有源端口到目标端口 22 (SSH)。

    Source Type = CIDR, Source CIDR = 0.0.0.0/0, IP Protocol = TCP, Source Port Range = All, Destination port range = 22

    您还可以限制堡垒主机只能通过端口 22 从数据中心而不是公共 Internet (0.0.0.0/0) 访问 Internet。要实现此目的,请在有状态入站规则中使用边缘路由器 IP 而不是源 CIDR 作为 0.0.0.0/0。

  • 要允许从堡垒主机到 Oracle Cloud Infrastructure 计算实例的 SSH 通信,请执行以下操作:

    有状态出站:允许 TCP 从所有源端口到目标 CIDR 0.0.0.0/0 的通信到目标端口 22 (SSH)。

    Destination Type = CIDR, Destination CIDR = <CIDR block of VCN >, IP Protocol = TCP, Source Port Range = All, Destination port range = 22

负载平衡器层的安全列表

体系结构图显示了置于专用子网中的专用负载平衡器。如果将负载平衡器实例放置在公共子网中,则允许从 Internet (0.0.0.0/0) 到负载平衡器实例的通信。

  • 要允许从 Internet 到负载平衡器的通信,请执行以下操作:

    有状态入站:允许 TCP 通信从源 CIDR (Internet)0.0.0.0/0 和所有源端口到目标端口 8888 (HTTP) 或 443 (HTTPS)。

    Source Type = CIDR, Source CIDR = 0.0.0.0/0, IP Protocol = TCP, Source Port Range = All, Destination port range = 8888 or 443

  • 要允许从内部部署网络到负载平衡器的通信,请执行以下操作:

    有状态入站:允许 TCP 通信从内部部署网络 CIDR 块和所有源端口到目标端口 8888 (HTTP) 或 443 (HTTPS)

    Source Type = CIDR, Source CIDR = <CIDR block for onpremises network >, IP Protocol = TCP, Source Port Range = All, Destination port range = 8888 or 443

  • 要允许从负载平衡器层到应用程序层的通信,请执行以下操作:

    有状态出站:允许 TCP 流量从所有源端口到目标 CIDR 0.0.0.0/0 到目标端口 8000 (HTTP)

    Destination Type = CIDR, Destination CIDR = <CIDR block for application subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = 8000

应用程序层的安全列表

应用程序层的安全列表允许从负载平衡器层到应用程序层的通信。

  • 要允许从堡垒主机到应用程序层的通信,请执行以下操作:

    有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of bastion subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = 22

  • 要允许从负载平衡器层到应用程序层的通信,请执行以下操作:

    有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of load balancer subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = 8000

  • 要允许应用程序层中应用程序实例之间的通信,请执行以下操作:

    有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of application subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = All

  • 要允许从应用程序层到数据库层以及应用程序层中的应用程序实例之间的通信,请执行以下操作:

    有状态出站:Destination Type = CIDR, Destination CIDR = 0.0.0.0/0, IP Protocol = TCP, Source Port Range = All, Destination port range = All

对于多个应用程序层配置中的应用程序层之间的通信(仅 Oracle E-Business Suite EBS 12.2 需要此项):

  • 有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of application subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = 7001-7002

  • 有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of application subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = 7201-7202

  • 有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of application subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = 7401-7402

  • 有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of application subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = 7601-7602

数据库层的安全列表

  • 要允许从堡垒主机到数据库层的通信,请执行以下操作:

    有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of bastion subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = 22

  • 要允许从应用程序层到数据库层的通信,请执行以下操作:

    有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of application subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range =1521

  • 要允许从数据库层到应用程序层的流量,请执行以下操作:

    有状态出站:Destination Type = CIDR, Destination 0.0.0.0/0 on TCP, source port = All, destination port = All

  • 要允许将数据库备份到 Oracle Cloud Infrastructure Object Storage 的通信,请执行以下操作:

    有状态出站:  Destination Type = Service, Destination OCI <region > Object Storage, source port = All, destination port = 443

    对于多个可用性域体系结构,要允许 Oracle Active Data Guard 的可用性域之间的数据库层之间的通信:

    • 有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of database subnet in availability domain 1>, IP Protocol = TCP, Source Port Range = All, Destination port range =1521

    • 有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of database subnet in availability domain 2>, IP Protocol = TCP, Source Port Range = All, Destination port range =1521

对于 Oracle Database Exadata Cloud Service 系统预配,需要以下附加规则:

  • 有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of exadata client subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range =All

  • 有状态入站:Source Type = CIDR, Source CIDR = <CIDR block of exadata client subnet >, IP Protocol = ICMP, Type and Code = All

  • 有状态出站:Destination Type = CIDR, Destination CIDR = <CIDR block of exadata client subnet >, IP Protocol = TCP, Source Port Range = All, Destination port range = All

  • 有状态出站:Destination Type = CIDR, Destination CIDR = <CIDR block of exadata client subnet >, IP Protocol = ICMP, Type and Code = All