暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle EMCC 13.5 集群安装部署指南

大家好,这里是 DBA 学习之路,专注于提升数据库运维效率。

前言

本文档详细介绍了如何部署 Oracle Enterprise Manager Cloud Control (EMCC) 13.5 的高可用集群环境。整个部署方案基于 Oracle RAC 架构实现 OMR(Oracle Management Repository)集群,采用 EMCC 13.5 和 Oracle 19.27 数据库版本,最终实现 Active-Active 模式的 OMS(Oracle Management Service)集群。

记得点击 "DBA学习之路设为星标

后台回复【进群】,申请加入数据库学习交流群

公众号福利资源 💬

精心整理了一些福利资源合集(公众号回复以下代码获取):

1、52 本 Oracle 经典书籍:book

2、Oracle 安装包合集(含补丁):oraclesoft

3、Oracle 一键安装脚本:oracleshellinstall

4、Oracle 7~23ai 官方文档合集:oraclebook

5、OGG 安装包合集:oggsoft

第一阶段:OMR 集群部署

1.1 Oracle RAC 环境准备

首先部署作为 EMCC 存储库的 Oracle RAC 集群。推荐使用作者开发的 Oracle 一键安装命令生成工具 来简化安装过程。

Oracle RAC 安装工具截图

执行安装步骤:

  1. 在主节点上传一键安装脚本和安装包;
  2. 执行 RAC 一键安装命令(强烈建议在 VNC 环境中运行以防止意外中断);
./OracleShellInstall \
-lf ens192 `# 公网IP网卡名称`\
-pf ens224 `# 心跳IP网卡名称`\
-n oem `# 主机名前缀`\
-hn oem01,oem02 `# 所有节点主机名`\
-ri 192.168.6.80,192.168.6.81 `# 公网IP地址`\
-vi 192.168.6.82,192.168.6.83 `# 虚拟IP地址`\
-si 192.168.6.85 `# SCAN IP地址`\
-rp 'oracle' `# root用户密码`\
-od dev/sdb,/dev/sdc,/dev/sdd `# OCR磁盘组磁盘列表`\
-dd dev/sde `# DATA磁盘组磁盘列表`\
-or NORMAL `# OCR磁盘组冗余度`\
-o emcc `# 数据库名称`\
-gpa 37641958 `# Grid PSU/RU补丁编号`\
-jpa 37499406 `# OJVM PSU/RU补丁编号`\
-opd Y `# 优化数据库`

安装过程约需 1 小时左右,完成后会看到如下界面:

Oracle RAC 安装完成截图

1.2 数据库版本验证

安装完成后,验证数据库补丁版本:

[oracle@oem01:/home/oracle]$ opatch lspatches
37499406;OJVM RELEASE UPDATE: 19.27.0.0.250415 (37499406)
37654975;OCW RELEASE UPDATE 19.27.0.0.0 (37654975)
37642901;Database Release Update : 19.27.0.0.250415 (37642901)

OPatch succeeded.

1.3 EMCC 专用数据库优化

为确保 EMCC 的最佳性能,需要进行以下数据库参数优化:

-- 优化共享池大小
SQL> altersystemset shared_pool_size=600M;

-- 临时禁用统计信息收集任务(安装完成后自动启用)
SQL> BEGIN
  DBMS_AUTO_TASK_ADMIN.DISABLE(CLIENT_NAME => 'auto optimizer stats collection',
                               OPERATION   => NULL,
                               WINDOW_NAME => NULL);
END;
/

-- 设置并行服务器参数
SQL> altersystemset parallel_max_servers=8;

-- 启用特定兼容性参数
SQL> altersystemset"_allow_insert_with_update_check"=true;

-- 重置优化器自适应功能参数(Oracle 官方建议)
SQL> altersystemreset"_optimizer_nlj_hj_adaptive_join"scope=bothsid='*';
altersystemreset"_optimizer_strans_adaptive_pruning"scope=bothsid='*';
altersystemreset"_px_adaptive_dist_method"scope=bothsid='*';
altersystemreset"_sql_plan_directive_mgmt_control"scope=bothsid='*';
altersystemreset"_optimizer_dsdir_usage_control"scope=bothsid='*';
altersystemreset"_optimizer_use_feedback"scope=bothsid='*';
altersystemreset"_optimizer_gather_feedback"scope=bothsid='*';
altersystemreset"_optimizer_performance_feedback"scope=bothsid='*';

-- 重启数据库使配置生效
SQL> shutdown immediate
SQL> startup

至此,EMCC 的 OMR 数据库环境已准备就绪。

第二阶段:ACFS 集群文件系统构建

为实现 OMS 的高可用性,需要创建 ACFS(ASM Cluster File System)共享文件系统来存储 OMS 软件和配置文件。

2.1 存储层配置

配置 multipath 多路径

编辑 multipath 配置文件,添加 OMS 专用共享磁盘:

vi etc/multipath.conf

## 新增 OMS 共享磁盘配置
multipath {
    wwid 2515190a70c079c6f
    alias asm_oms_1
}

multipath 配置截图

使配置生效:

multipath -F
multipath -v2
multipath -ll

multipath 生效验证

配置 UDEV 设备绑定

为 OMS 共享磁盘创建稳定的设备路径:

cat<<-EOF>>/etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="dm-*",ENV{DM_UUID}=="mpath-2515190a70c079c6f",SYMLINK+="asm_oms_1",OWNER="grid",GROUP="asmadmin",MODE="0660"
EOF

# 应用 udev 规则
udevadm control --reload-rules
udevadm trigger --type=devices --action=change

UDEV 配置验证

2.2 ACFS 文件系统创建

使用 ASMCA 创建磁盘组

以 grid 用户身份运行 ASMCA 图形界面工具:

ASMCA 启动界面

按照向导步骤创建 OMS 磁盘组:

磁盘组创建步骤1
磁盘组创建步骤2

创建 ACFS Volume

Volume 创建界面
Volume 配置界面
Volume 创建确认

挂载点准备和文件系统创建

在所有节点创建挂载点:

[root@oem01:/root]# mkdir OMS
[root@oem02:/root]# mkdir OMS

完成 ACFS 文件系统创建:

ACFS 创建步骤1
ACFS 创建步骤2
ACFS 创建完成

执行 ACFS 挂载脚本:

[root@oem01:/root]# u01/app/grid/cfgtoollogs/asmca/scripts/acfs_script.sh
ACFS file system OMS is mounted on nodes oem01,oem02

ACFS 挂载验证

验证挂载状态:

挂载状态确认1
挂载状态确认2

现在 ACFS 共享集群文件系统已成功创建并挂载到所有节点。

第三阶段:OMS 集群部署

本阶段将部署 Active-Active 模式的 OMS 集群,实现真正的高可用性。

3.1 环境准备

系统依赖包安装

参考 Oracle 官方文档的软件包要求:

官方依赖包要求

在所有节点执行软件包安装:

## root 用户在所有节点执行
yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel dejavu-serif-fonts ksh make sysstat numactl numactl-devel motif motif-devel redhat-lsb redhat-lsb-core openssl

安装额外的 32 位 glibc 开发包:

## 在所有节点执行
cd /mnt/Packages/
yum install -y glibc-devel-2.17-317.0.1.el7.i686.rpm

验证安装结果:

rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel dejavu-serif-fonts ksh make sysstat numactl numactl-devel motif motif-devel redhat-lsb redhat-lsb-core openssl

系统参数优化

配置网络端口范围:

## root 用户在所有节点执行
echo 11000 65000 > proc/sys/net/ipv4/ip_local_port_range

cat<<-\EOF>>/etc/sysctl.conf
net.ipv4.ip_local_port_range = 11000 65000
EOF

sysctl -p
systemctl restart network.service

配置进程限制:

## root 用户在所有节点执行
echo "nproc 4098" >> etc/security/limits.conf

目录结构创建

建立标准的 Oracle 软件目录结构:

## root 用户在所有节点执行
mkdir -p u01/app/oracle/middleware/oms
mkdir -p u01/app/oracle/middleware/agent
chown -R oracle.oinstall u01/app/oracle/middleware

环境变量配置

为 OMS 和 Agent 分别创建专用的环境配置文件:

OMS 环境配置:

## oracle 用户执行
cp home/oracle/.bash_profile home/oracle/.oms
vi home/oracle/.oms

## 在 export PATH 下方添加以下内容
umask 022
export TMP=/tmp
export TMPDIR=$TMP
export PATH=/usr/sbin:$PATH
export PS1="[`whoami`@`hostname`:"'$PWD]$ '
export ORACLE_HOME=/u01/app/oracle/middleware/oms
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OMSPatcher:$PATH

Agent 环境配置:

## oracle 用户执行
cp home/oracle/.bash_profile home/oracle/.agent
vi home/oracle/.agent

## 在 export PATH 下方添加以下内容
umask 022
export TMP=/tmp
export TMPDIR=$TMP
export PATH=/usr/sbin:$PATH
export PS1="[`whoami`@`hostname`:"'$PWD]$ '
export ORACLE_HOME=/u01/app/oracle/middleware/agent/agent_13.5.0.0.0
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/AgentPatcher:$PATH

语言环境检查和配置

重要提醒: 这是一个关键配置点,语言环境必须设置为英文,否则会导致安装失败。

语言环境错误示例

参考 Oracle 支持文档:EM 13.5: OMS Installation Fails in Repository Configuration Phase with the Error: ORA-01843: not a valid month (Doc ID 2880634.1)

验证当前语言环境:

[root@emcc:/root]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

如果语言环境为中文,需要修改为英文:

## root 用户执行
cat <<-EOF>/etc/profile.d/locale.sh
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_COLLATE=C
export LC_CTYPE=en_US.UTF-8
EOF

source /etc/profile.d/locale.sh

3.2 主节点 OMS 安装

确保所有准备工作完成后,开始进行 OMS 的图形化安装。

启动安装程序

## oracle 用户执行,强烈建议使用 VNC 进行远程安装
[oracle@oem01 ~]$ source .bash_profile
[oracle@oem01:/home/oracle]$ cd /soft/
[oracle@oem01:/soft]$ chmod +x em13500_linux64.bin
[oracle@oem01:/soft]$ ./em13500_linux64.bin

安装向导步骤

步骤 1: 安装类型选择

安装类型选择

步骤 2: 软件更新配置

软件更新配置

步骤 3: 先决条件检查

先决条件检查

步骤 4: 安装详细信息配置

安装详细信息

关键配置点:

  • 全部勾选所有可选组件
组件选择
  • 设置管理员密码(建议使用:Welcome1)
管理员密码设置

步骤 5: 数据库连接配置

填写之前创建的 RAC 数据库信息,关键点:必须使用 SCAN IP 地址

数据库连接配置

数据库连接验证:

数据库验证

步骤 6: 先决条件验证和自动修复

先决条件验证

使用 Auto Fix 功能解决问题:

自动修复
修复完成

步骤 7: SYSMAN 密码设置

设置 EMCC 登录用户密码:

SYSMAN 密码设置

步骤 8: 软件库位置配置

重要: 选择 ACFS 共享磁盘作为软件库位置:

软件库位置配置

步骤 9: 端口配置确认

确认以下端口配置并开启防火墙策略:

端口配置

步骤 10: 开始安装

开始安装

安装过程监控

安装进度监控

等待安装完成:

安装基本完成

后安装配置

执行必要的 root 脚本:

root 脚本执行提示
[root@oem01:/root]# u01/app/oracle/middleware/oms/allroot.sh

Starting to execute allroot.sh .........

Starting to execute u01/app/oracle/middleware/oms/root.sh ......
Check u01/app/oracle/middleware/oms/install/root_oem01_2025-07-01_14-30-28.log for the output of root script

Finished product-specific root actions.
/etc exist
Finished execution of  /u01/app/oracle/middleware/oms/root.sh ......

Starting to execute u01/app/oracle/middleware/agent/agent_13.5.0.0.0/root.sh ......

Finished product-specific root actions.
/etc exist
Finished execution of  /u01/app/oracle/middleware/agent/agent_13.5.0.0.0/root.sh ......

安装完成确认:

安装完成界面

3.3 补丁安装和更新

为确保系统稳定性和安全性,需要安装最新的 Bug 修复补丁和 Release Update。

3.3.1 OMS Bug 修复补丁安装

补丁 35430934:

[oracle@oem01:/soft]$ source ~/.oms
[oracle@oem01:/soft]$ unzip -q soft/p35430934_122140_Generic.zip
[oracle@oem01:/soft]$ cd 35430934
[oracle@oem01:/soft/35430934]$ opatch apply -silent

补丁 34153238:

[oracle@oem01:/soft/35430934]$ cd /soft
[oracle@oem01:/soft]$ unzip -q soft/p34153238_122140_Generic.zip
[oracle@oem01:/soft]$ cd 34153238
[oracle@oem01:/soft/34153238]$ opatch apply -silent

补丁 31657681:

[oracle@oem01:/soft/34153238]$ cd /soft
[oracle@oem01:/soft]$ unzip -q soft/p31657681_191000_Generic.zip
[oracle@oem01:/soft]$ cd 31657681
[oracle@oem01:/soft/31657681]$ opatch apply -silent

3.3.2 OMS Release Update 安装

更新 OMSPatcher:

[oracle@oem01:/soft]$ source ~/.oms
[oracle@oem01:/soft]$ unzip -qo soft/p19999993_135000_Generic.zip -d $ORACLE_HOME
[oracle@oem01:/soft]$ omspatcher version
OMSPatcher Version: 13.9.5.25.0
OPlan Version: 12.2.0.1.16
OsysModel build: Tue Apr 28 18:16:31 PDT 2020

应用 RU 补丁:

[oracle@oem01:/soft/37439429]$ omspatcher apply

## 需要提供以下信息
Please enter OMS weblogic admin server URL(t3s://oem01:7102):>
Please enter OMS weblogic admin server username(weblogic):>
Please enter OMS weblogic admin server password:>

Enter DB user name : sys
Enter 'sys' password :

注意: 此过程可能需要较长时间,请耐心等待。

3.3.3 Agent 补丁更新

升级 AgentPatcher:

[oracle@oem01:/soft]$ source ~/.agent
[oracle@oem01:/soft]$ unzip -qo soft/p33355570_135000_Generic.zip -d $ORACLE_HOME
[oracle@oem01:/soft]$ agentpatcher version
AgentPatcher Version: 13.9.5.10.0
OPlan Version: 12.2.0.1.16
OsysModel build: Tue Apr 28 18:16:31 PDT 2020

AgentPatcher succeeded.

应用 Agent 补丁:

# 停止 Agent 服务
[oracle@oem01:/soft]$ emctl stop agent
Oracle Enterprise Manager Cloud Control 13c Release 5
Copyright (c) 1996, 2021 Oracle Corporation.  All rights reserved.
Stopping agent ... stopped.

# 应用补丁
[oracle@oem01:/soft]$ unzip -q soft/p37439438_135000_Generic.zip
[oracle@oem01:/soft]$ cd /soft/37439438
[oracle@emcc:/soft/37439438]$ agentpatcher apply

3.4 安装后验证

验证 OMS 服务状态

[oracle@oem01:/home/oracle]$ source ~/.oms
[oracle@oem01:/home/oracle]$ emctl status oms
Oracle Enterprise Manager Cloud Control 13c Release 5
Copyright (c) 1996, 2021 Oracle Corporation.  All rights reserved.
WebTier is Up
Oracle Management Server is Up
JVMD Engine is Up

详细状态检查:

[oracle@oem01:/home/oracle]$ emctl status oms -details
Oracle Enterprise Manager Cloud Control 13c Release 5
Copyright (c) 1996, 2021 Oracle Corporation.  All rights reserved.
Console Server Host        : oem01
HTTP Console Port          : 7788
HTTPS Console Port         : 7803
HTTP Upload Port           : 4889
HTTPS Upload Port          : 4903
EM Instance Home           : u01/app/oracle/middleware/gc_inst/em/EMGC_OMS1
OMS Log Directory Location : u01/app/oracle/middleware/gc_inst/em/EMGC_OMS1/sysman/log
OMS is not configured with SLB or virtual hostname
Agent Upload is locked.
OMS Console is locked.
Active CA ID: 1
Console URL: https://oem01:7803/em
Upload URL: https://oem01:4903/empbs/upload

WLS Domain Information
Domain Name            : GCDomain
Admin Server Host      : oem01
Admin Server HTTPS Port: 7102
Admin Server is RUNNING

Oracle Management Server Information
Managed Server Instance Name: EMGC_OMS1
Oracle Management Server Instance Host: oem01
WebTier is Up
Oracle Management Server is Up
JVMD Engine is Up

验证 Agent 服务状态

[oracle@oem01:/home/oracle]$ source ~/.agent
[oracle@oem01:/home/oracle]$ emctl status agent
Oracle Enterprise Manager Cloud Control 13c Release 5
Copyright (c) 1996, 2021 Oracle Corporation.  All rights reserved.
---------------------------------------------------------------
Agent Version          : 13.5.0.0.0
OMS Version            : 13.5.0.0.0
Protocol Version       : 12.1.0.1.0
Agent Home             : u01/app/oracle/middleware/agent/agent_inst
Agent Log Directory    : u01/app/oracle/middleware/agent/agent_inst/sysman/log
Agent Binaries         : /u01/app/oracle/middleware/agent/agent_13.5.0.0.0
Core JAR Location      : /u01/app/oracle/middleware/agent/agent_13.5.0.0.0/jlib
Agent Process ID       : 11756
Parent Process ID      : 11635
Agent URL              : https://oem01:3872/emd/main/
Local Agent URL in NAT : https://oem01:3872/emd/main/
Repository URL         : https://oem01:4903/empbs/upload
Started at             : 2025-07-01 17:10:55
Started by user        : oracle
Operating System       : Linux version 5.4.17-2102.201.3.el7uek.x86_64 (amd64)
Number of Targets      : 36
Last Reload            : (none)
Last successful upload                       : 2025-07-01 17:12:51
Last attempted upload                        : 2025-07-01 17:12:51
Total Megabytes of XML files uploaded so far : 0.03
Number of XML files pending upload           : 0
Size of XML files pending upload(MB)         : 0
Available disk space on upload filesystem    : 68.52%
Collection Status                            : Collections enabled
Heartbeat Status                             : Ok
Last attempted heartbeat to OMS              : 2025-07-01 17:12:13
Last successful heartbeat to OMS             : 2025-07-01 17:12:13
Next scheduled heartbeat to OMS              : 2025-07-01 17:13:13

---------------------------------------------------------------
Agent is Running and Ready

3.5 第二节点 OMS 部署

为实现真正的高可用性,需要在第二个节点部署额外的 OMS 实例。

3.5.1 添加 Agent 到第二节点

登录 EMCC 控制台(https://192.168.6.80:7803/em
)进行第二节点的 Agent 部署:

EMCC 登录界面
主页面

导航到 Agent 部署页面:

Agent 部署导航
Agent 添加选项

配置 Agent 部署参数:

Agent 配置1
Agent 配置2
Agent 配置3
Agent 配置4

等待部署完成:

Agent 部署进度
Agent 部署完成

3.5.2 添加 OMS 节点

通过 EMCC 的过程库添加第二个 OMS 节点:

过程库导航

搜索"添加"相关的过程:

搜索添加过程

重要提醒: 确保每个 OMS 节点的端口配置保持一致,以简化后续维护工作。

OMS 添加配置1
OMS 添加配置2

创建共享目录:

[oracle@oem01:/OMS]$ mkdir /OMS/share

共享目录配置

继续配置向导:

配置步骤1
配置步骤2
配置步骤3
配置步骤4

等待第二节点部署完成:

第二节点部署进度1
第二节点部署进度2
第二节点部署完成

第四阶段:高可用性验证

完成集群部署后,需要验证高可用性功能是否正常工作。

4.1 多节点访问验证

验证两个节点都可以正常提供服务:

节点 1 访问:https://192.168.6.80:7803/em

节点1访问测试1
节点1访问测试2
节点1功能验证

节点 2 访问:https://192.168.6.81:7803/em

节点2访问测试1
节点2访问测试2
节点2功能验证

4.2 故障转移测试

模拟节点故障,验证系统的容错能力:

## 关闭节点1的 OMS 服务
source ~/.oms
emctl status oms
emctl stop oms -all

故障模拟

验证节点 1 已无法访问:

节点1故障确认

验证节点 2 继续正常服务:

节点2正常服务确认

测试结果证明,当一个节点发生故障时,另一个节点可以继续提供完整的 EMCC 服务,实现了真正的高可用性。

总结

通过本文档的详细步骤,您已经成功部署了一套完整的 Oracle EMCC 13.5 高可用集群环境。该环境具备以下特性:

  1. 高可用的数据存储:基于 Oracle RAC 的 OMR 数据库集群;
  2. 共享的文件系统:ACFS 集群文件系统确保配置和软件的一致性;
  3. Active-Active OMS 架构:多个 OMS 节点同时提供服务;
  4. 自动故障转移:单节点故障不影响整体服务可用性;

进一步优化建议

关于很多用户关心的统一访问入口问题(类似 Oracle RAC 的 SCAN IP 功能),Oracle 官方文档提供了通过服务器负载均衡器(SLB)实现的解决方案。

参考文档:Configuring Multiple Management Services Behind a Server Load Balancer (SLB)

SLB 配置参考

通过配置 SLB,用户可以使用单一 IP 地址访问 EMCC 集群,负载均衡器会自动将请求分发到可用的 OMS 节点,进一步提升用户体验。

参考文档

本部署指南基于以下官方文档和最佳实践:

  • How To Configure Enterprise Manager for High Availability (Doc ID 330072.1)
  • EM 12c ,13c : Steps to Install and Configure Multiple OMS Behind a Server Load Balancer (SLB) (Doc ID 1369698.1)
  • OEMCC 13.2 集群版本安装部署 - Alfred Zhao

文章转载自青年数据库学习互助会,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论