将 Oracle 商业智能 12c 从本地服务器迁移到AWS云端 - AWS Prescriptive Guidance

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 Oracle 商业智能 12c 从本地服务器迁移到AWS云端

由 Lanre(Lan-Ray)showunmi () 和 Patrick Huang (AWS) 创作 AWS

环境:生产

源:本地

目标:亚马逊EC2、亚马逊RDS、亚马逊ALB、亚马逊 EFS

R 类型:更换平台

工作负载:Oracle

技术:分析;数据库

AWS服务:亚马逊EBS;亚马逊;亚马逊EC2;;Elastic Load Balancing (ELB);AWSCertifice Manager (ACM) () EFS AWS CloudFormation

Summary

此模式显示如何使用AWS CloudFormation将 Oracle 商业智能企业版 12c 从本地服务器迁移到AWS云端。它还描述了如何使用其他AWS服务来实现 Oracle BI 12c 组件,这些组件可提供高可用性、安全性、灵活性和动态扩展能力。

有关将 Oracle BI 12c 迁移到AWS云端相关的最佳实践列表,请参阅此模式的 “其他信息” 部分。

注意:最佳做法是在将现有 Oracle BI 12c 数据传输到云端之前运行多次测试迁移。这些测试可帮助您微调迁移方法,识别和修复潜在问题,并更准确地估计停机时间需求。

先决条件和限制

先决条件

限制

有关存储大小限制的信息,请参阅适用于 Oracle 的 Amazon Relational Database Service (AmazonRDS) 文档。

产品版本

  • Oracle 商业智能企业版 12c

  • 甲骨文 WebLogic 服务器 12c

  • 甲骨文HTTP服务器 12c

  • Oracle 数据库 12c(或更高版本)

  • Oracle Java SE 8

架构

下图显示了在AWS云端运行 Oracle BI 12c 组件的示例架构:

在AWS云端运行 Oracle BI 12c 组件的示例架构。

此图显示以下架构:

  1. 亚马逊 Route 53 提供域名服务 (DNS) 配置。

  2. Elastic Load Balancing (ELB) 可分配网络流量,以提高 Oracle BI 12c 组件在多个可用区域中的可扩展性和可用性。

  3. 亚马逊弹性计算云 (亚马逊EC2) Auto Scaling 组在多个可用区托管 Oracle HTTP 服务器、Weblogic 管理服务器和托管 BI 服务器。

  4. 适用于 Oracle 数据库的 Amazon Relational Database Service(亚马逊RDS)跨多个可用区存储 BI 服务器元数据。

  5. Amazon Elastic File System(亚马逊EFS)安装在每个 Oracle BI 12c 组件上,用于共享文件存储。

技术堆栈

  • 亚马逊 Elastic Block Store(亚马逊EBS)

  • 亚马逊弹性计算云(亚马逊EC2)

  • 亚马逊 Elastic File System(亚马逊EFS)

  • RDS适用于甲骨文的亚马逊

  • AWSCertifice Manager (ACM)

  • 弹性负载平衡 (ELB)

  • Oracle BI 12c

  • 甲骨文 WebLogic 服务器 12c

  • 甲骨文HTTP服务器 (OHS)

工具

操作说明

任务描述所需技能

收集软件库存信息。

识别源技术堆栈中每个软件组件的版本和补丁级别,包括以下内容:

  • Oracle 操作系统

  • Oracle Database

  • Oracle BI 12c

  • 甲骨文 WebLogic 服务器

  • 甲骨文HTTP服务器

  • Java

迁移架构师、解决方案架构师、应用程序所有者、Oracle BI 管理员

收集计算和存储库存信息。

在源环境中,查看以下各项的当前和历史使用率指标:

  • CPU用法

  • 内存使用量

  • 存储空间使用量

重要:请务必考虑使用量的历史峰值。

迁移架构师、解决方案架构师、应用程序所有者、Oracle BI 管理员、系统管理员

收集有关源环境架构及其要求的信息。

全面了解源环境的架构及其要求,包括以下方面的知识:

  • Oracle WebLogic 服务器域配置

  • 集群

  • 负载均衡

  • 连接

  • 可用性

  • 灾难恢复要求

迁移架构师、解决方案架构师、应用程序所有者、Oracle BI 管理员

识别 Java 数据库连接 (JDBC) 数据源。

为其使用的每个数据库引擎收集有关源环境JDBC的数据源和驱动程序的信息。

迁移架构师、应用程序所有者、Oracle BI 管理员、数据库工程师或管理员

收集有关特定环境设置的信息。

收集有关特定于源环境的设置和配置的信息,包括:

  • 自定义启动和关闭脚本

  • Java 和其他环境变量

  • 证书

迁移架构师、解决方案架构师、应用程序所有者、Oracle BI 管理员

确定对其他应用程序的任何依赖项。

收集有关源环境中各项集成的信息,这些集成使用其他应用程序创建依赖项。

重要:请务必确定任何轻量级目录访问协议 (LDAP) 集成和其他网络要求。

迁移架构师、解决方案架构师、应用程序所有者、Oracle BI 管理员
任务描述所需技能

创建高级设计文档。

创建目标架构设计文档。请务必使用在评测源环境时收集的信息来为设计文档提供信息。

解决方案架构师、应用程序架构师、数据库工程师、迁移架构师

获得设计文档的批准。

与利益相关者一起审查设计文件并获得所需批准。

应用程序或服务所有者、解决方案架构师、应用程序架构师
任务描述所需技能

在中准备基础架构代码 CloudFormation。

创建 CloudFormation 模板以在AWS云中配置您的 Oracle BI 12c 基础架构。

有关更多信息,请参阅《AWS CloudFormation 用户指南》中的使用AWS CloudFormation 模板

注意:最佳做法是为每个 Oracle BI 12c 层创建模块化 CloudFormation 模板,而不是为所有资源创建一个大型模板。有关 CloudFormation 最佳实践的更多信息,请在AWS博客AWS CloudFormation上查看自动部署时使用的 8 个最佳实践

云基础设施架构师、解决方案架构师、应用程序架构师

下载所需软件。

DDownload以下软件以及来自 Oracle 网站的所需版本和补丁:

  • Java JDK8

  • 甲骨文 WebLogic 服务器 12c

  • Oracle BI 12c

迁移架构师、数据库工程师、应用程序架构师

准备安装脚本。

创建运行静默安装的软件安装脚本。这些脚本简化了部署自动化。

有关更多信息,请参阅 OBIEE12c:如何执行静默安装? 在 Oracle Support 网站上。您需要 Oracle Support 账户才能查看文档。

迁移架构师、数据库工程师、应用程序架构师

为您的网络和应用程序层创建由亚马逊EBS支持的 Linux AMI。

  1. 为您的 Web 和应用程序层部署和配置 Amazon EC2 实例。确保实例满足运行以下内容的先决条件:

    • Oracle 操作系统环境设置

    • Oracle 操作系统用户账户设置

    • Java 软件安装

  2. 创建实例的 Amazon 系统映像 (AMIs) 并保存副本以备将来使用。有关说明,请参阅亚马逊 Linux 实例EC2用户指南AMI中的创建由亚马逊EBS支持的 Linux

迁移架构师、数据库工程师、应用程序架构师

使用启动您的AWS基础架构 CloudFormation。

使用您创建的 CloudFormation 模板,在模块中部署 Oracle BI 12c Web 和应用程序层。

有关说明,请参阅《AWS CloudFormation 用户指南》AWS CloudFormation中的 “入门”。

云基础设施架构师、解决方案架构师、应用程序架构师
任务描述所需技能

准备所需软件。

将所需的软件暂存到可供 Amazon EC2 实例访问的位置。例如,您可以将软件暂存到 Amazon S3 或其他可供您的 Web 和应用程序服务器访问的 Amazon EC2 实例中。

迁移架构师、Oracle BI 架构师、云基础设施架构师、解决方案架构师、应用程序架构师

为安装 Oracle BI 12c 准备存储库数据库。

通过对新的 A ma RDS zon for Oracle 数据库实例运行 Oracle 存储库创建实用程序 (RCU) 来创建 Oracle BI 12c 架构。

云基础设施架构师、解决方案架构师、应用程序架构师、迁移架构师、Oracle BI 架构师

安装 Oracle 融合中间件 12c 和 Oracle BI 12c。

  1. 从一个亚马逊EC2实例开始,安装 Oracle Fusion 中间件 12c 基础设施和 OBIEE 12c。有关更多信息,请参阅适用于 Oracle 商业智能的 Oracle 融合中间件企业部署指南的以下部分:

    注意:使用 Amazon 托管EFS将在 Oracle BI 12c 集群节点之间共享的目录。

  2. 在安装中应用所有必需的补丁。

  3. 创建AMIs实例并保存副本以备将来使用。

迁移架构师、Oracle BI 架构师

为 Oracle BI 12c 配置你的 Oracle WebLogic 服务器域。

将 Oracle BI 12c 域配置为非集群部署。

有关更多信息,请参阅适用于 Oracle 商业智能的 Oracle 融合中间件企业部署指南中的配置 BI 域

迁移架构师、Oracle BI 架构师

对 Oracle BI 12c 进行水平横向扩展。

将单个节点水平横向扩展到所需节点数。

有关更多信息,请参阅适用于 Oracle 商业智能的 Oracle 融合中间件企业部署指南中的横向扩展 Oracle 商业智能

迁移架构师、Oracle BI 架构师

安装 Oracle HTTP 服务器 12c。

  1. 在 Oracle 网络层亚马逊EC2实例上安装 Oracle Ser HTTP ver 12c。有关说明,请参阅安装和配置 Oracle HTTP 服务器的 Oracle Access Managemen HTTP t 12c 中的安装 Oracle Server 12 c。

  2. 在安装中应用所有必需的补丁。

  3. 创建AMIs实例并保存副本以备将来使用。

迁移架构师、Oracle BI 架构师

配置负载均衡器以进行SSL终止。

  1. 在中创建或导入SSL证书ACM

  2. 将@@ SSL证书与关联ELB

云基础设施架构师、迁移架构师

将商业智能元数据对象迁移到AWS。

  1. 从本地 Oracle BI 12c 安装中导出 Oracle 商业智能应用程序存档 (BAR) 文件。要导出BAR文件,请使用WebLogic 脚本工具 (WLST) 运行exportServiceInstance命令。

  2. 将本地BAR文件导入 AWS Oracle BI 12c 安装中。要导入BAR文件,请运行importServiceInstanceWLST命令。

迁移架构师、Oracle BI 架构师

执行迁移后的任务。

导入BAR文件后,请执行以下操作:

  • 配置任何其他JDBC数据源

  • 为 Postgre 或 Amazon Redshift SQL 等其他数据源安装驱动程序。

  • 配置 Oracle LDAPSSL、、单点登录 (SSO)WebLogic 安全存储

  • 配置 Id AWS entity and Access Management (IAM) 策略。

  • 激活使用情况跟踪。

  • 设置与其他系统的集成。

  • 迁移所有自定义脚本。

迁移架构师、Oracle BI 架构师
任务描述所需技能

测试新的 Oracle BI 12c 环境。

在新的 Oracle BI 12c 环境上进行 end-to-end 测试。尽可能多地使用自动化。

测试活动示例包括以下内容:

  • 验证仪表板、报告和 URLs

  • 用户验收测试 (UAT)

  • 操作验收测试 (OAT)

注意:根据需要进行其他测试和验证。

迁移架构师、解决方案架构师、应用程序所有者、Oracle BI 管理员
任务描述所需技能

断开流向本地 Oracle BI 12c 环境的流量。

在指定的割接窗口中,停止所有流向本地 Oracle BI 12c 环境的流量。

迁移架构师、解决方案架构师、应用程序所有者、Oracle BI 管理员

将新的 Oracle BI 12c 存储库数据库与源数据库重新同步。

将 Amazon RDS Oracle Oracle BI 12c 存储库数据库与本地数据库重新同步。

要同步数据库,您可以使用 Oracle 数据泵刷新AWSDMS更改数据捕获 (CDC)

Oracle BI 管理员、数据库工程师/管理员

切换您的 Oracle BI 12c URLs 以指向新AWS环境。

更新内部DNS服务器URLs上的 Oracle BI 12c,使其指向新的AWS安装。

迁移架构师、解决方案架构师、应用程序所有者、Oracle BI 管理员

监控新环境。

使用以下任一工具监控新的 Oracle BI 12c 环境:

Oracle BI 管理员、数据库工程师/管理员、应用程序管理员

获得项目签核。

与利益相关者一起审查测试结果,并获得完成迁移所需批准。

应用程序所有者、服务所有者、云基础设施架构师、迁移架构师、Oracle BI 架构师

相关资源

其他信息

以下是与将 Oracle BI 12c 迁移到AWS云端相关的最佳实践列表。

存储库数据库

在亚马RDS逊 for Oracle 实例上托管 Oracle BI 12c 数据库架构是一种最佳实践。此实例类型提供经济实惠、且可调整的容量,同时自动执行管理任务,例如硬件预调配、数据库设置、修补和备份。

有关更多信息,请参阅《亚马逊RDS用户指南》中的 “使用适用于 Oracle RDS 的 Oracle 存储库创建实用程序”。

Web 和应用程序层

内存优化的 Amazon EC2 实例通常非常适合 Oracle BI 12c 服务器。无论您选择哪种实例类型,务必确保您预调配的实例满足系统的内存使用要求。此外,请确保根据您的 Amazon EC2 实例的可用内存配置足够的 WebLogic Java 虚拟机 (JVM) 堆大小

本地存储

I/O 在 Oracle BI 12c 应用程序的整体性能中起着重要作用。Amazon Elastic Block Store (AmazonEBS) 提供不同的存储类别,这些存储类别针对不同的工作负载模式进行了优化。请务必选择适合您用例的 Amazon EBS 卷类型。

有关EBS卷类型的更多信息,请参阅亚马逊EBS文档中的亚马逊EBS功能

共享存储

集群化的 Oracle BI 12c 域需要共享存储空间来存储以下资源:

  • 配置文件

  • Oracle BI 12c 单例数据目录 () SDD

  • Oracle 全局缓存

  • Oracle BI 计划程序脚本

  • 甲骨文 WebLogic 服务器二进制文件

您可以使用 Amazon 来满足这一共享存储需求EFS,它提供了可扩展、完全托管的弹性网络文件系统 (NFS) 文件系统。

微调共享存储性能

Amazon EFS 有两种吞吐量模式预配置增。该服务还有两种性能模式通用模式最大 I/O 模式

要微调性能,请首先在通用性能模式和预调配吞吐量模式下测试工作负载。进行这些测试将帮助您确定这些基准模式是否足以满足所需服务级别。

有关更多信息,请参阅《亚马逊EFS用户指南》中的亚马逊EFS绩效

可用性和灾难恢复

最佳做法是跨多个可用区部署 Oracle BI 12c 组件,以便在可用区出现故障时保护这些资源。以下是AWS云端托管的特定 Oracle BI 12c 资源的可用性和灾难恢复最佳实践列表:

  • Oracle BI 12c 存储库数据库:将多可用区亚马逊RDS数据库实例部署到你的 Oracle BI 12crepository 数据库。在多可用区部署中,Amazon RDS 会自动在不同的可用区预配置和维护同步备用副本。在计划内的系统维护期间,跨可用区运行 Oracle BI 12c 存储库数据库实例可以提高可用性,并帮助保护数据库以防数据库实例发生故障和可用区中断。

  • Oracle BI 12c 托管服务器:为了实现容错能力,最佳做法是在配置为跨多个可用区域的 Amazon A EC2 uto Scaling 组中的托管服务器上部署 Oracle BI 12c 系统组件。Auto Scaling 会根据亚马逊运行EC2状况检查替换故障实例。如果可用区出现故障,Oracle HTTP 服务器会继续将流量引导到正常运行的可用区内的托管服务器。然后,自动扩缩会启动实例以满足主机数量要求。建议激活HTTP会话状态复制,以帮助确保现有会话顺畅地故障转移到正常运行的托管服务器。

  • Oracle BI 12c 管理服务器:为确保您的管理服务器具有高可用性,请将其托管在配置为跨多个可用区域的 Amazon A EC2 uto Scaling 组中。然后,将组的最小和最大大小设置为 1。如果可用区出现故障,Amazon A EC2 uto Scaling 会在备用可用区中启动一台替换的管理服务器。要恢复同一可用区内任何出现故障的底层主机,您可以激活 Amazon A EC2 uto Recovery

  • Oracle Web 层服务器:最佳做法是将您的 Oracle HTTP 服务器与 Oracle WebLogic 服务器域关联起来。为了获得高可用性,请将您的 Oracle HTTP 服务器部署在配置为跨越多个可用区域的 Amazon A EC2 uto Scaling 组中。然后,将服务器放在ELB弹性负载均衡器后面。要提供针对主机故障的额外保护,您可以激活 Amazon EC2 自动恢复。

可扩展性

AWS云的弹性可帮助您水平或垂直扩展应用程序,以响应工作负载要求。

垂直扩展

要垂直扩展您的应用程序,您可以更改运行 Oracle BI 12c 组件的 Amazon EC2 实例的大小和类型。您无需在部署开始时过度配置实例,也无需产生不必要的成本。 

横向扩展

Amazon A EC2 uto Scaling 可根据工作负载要求自动添加或删除托管服务器,从而帮助您水平扩展应用程序。

注意:使用 Amazon A EC2 uto Scaling 进行横向扩展需要脚本编写技能和全面测试才能实施。

备份和恢复

以下是AWS云端托管的特定 Oracle BI 12c 资源的备份和恢复最佳实践列表:

  • Oracle 商业智能元数据存储库:Amazon RDS 会自动创建并保存您的数据库实例的备份。这些备份会保留您指定的时间。请务必根据您的数据保护要求配置您的 Amazon RDS 备份持续时间和保留期设置。有关更多信息,请参阅 Amazon RDS 备份和恢复

  • 托管服务器、管理服务器和 Web 层服务器:确保根据数据保护和保留要求配置 Amazon EBS 快照

  • 共享存储:您可以使用 Backup 管理存储在 Amazon EFS 中的文件的AWS备份和恢复。还可以部署AWS备份服务来集中管理其他服务的备份和恢复,包括亚马逊EC2EBS、亚马逊和亚马逊RDS。有关更多信息,请参阅什么是 AWS Backup?AWSBackup 开发者指南中。

安全与合规

以下是可帮助您保护AWS云端的 Oracle BI 12c 应用程序的安全最佳实践和AWS服务列表:

  • 静态加密:亚马逊RDSEFS、亚马逊和亚马逊EBS都支持行业标准加密算法。您可以使用AWS密钥管理服务 (AWSKMS) 来创建和管理加密密钥,并控制其在AWS服务和应用程序中的使用。您还可以在托管 Oracle BI 12c 存储库数据库的 Amazon RDS for Oracle 数据库实例上配置 Oracle 透明数据加密 (TDE)

  • 传输中的加密:最佳做法是激活其中一个SSL或多个TLS协议,以保护在 Oracle BI 12c 安装的各个层之间传输的数据。您可以使用 AWS Certifice Manager (ACM) 为您的 Oracle BI 12c 资源配置、管理和部署公有SSL和私有以及TLS证书。

  • 网络安全:确保将 Oracle BI 12c 资源部署在针对您的用例配置了相应访问控制的亚马逊VPC上。配置您的安全组,以筛选来自正在运行您的安装的 Amazon EC2 实例的入站和出站流量。此外,请确保配置网络访问控制列表 (NACLs),以根据定义的规则允许或拒绝流量。

  • 监控和记录:您可以使用AWS CloudTrail来跟踪对AWS基础架构(包括 Oracle BI 12c 资源)的API调用。在跟踪基础设施变更或进行安全分析时,此功能非常有用。您还可以使用 Amazon CloudWatch 查看操作数据,这些数据可以让您深入了解 Oracle BI 12c 应用程序的性能和运行状况。您也可以配置警报并根据这些警报采取自动操作。亚马逊RDS提供了其他监控工具,包括增强型监控性能见解