1. 首页 > Oracle教程 > 正文

Oracle教程FG280-Oracle EMCC高可用性实战

内容大纲

内容简介:本文主要介绍Oracle Enterprise Manager Cloud Control (EMCC)的高可用性配置,包括OMS集群、共享存储和故障转移机制。风哥教程参考Oracle官方文档EMCC相关内容,为生产环境提供完整的高可用性解决方案。

Part01-基础概念与理论知识

1.1 高可用性概念

Oracle Enterprise Manager Cloud Control (EMCC)高可用性是指通过配置和管理,确保EMCC系统在面对硬件故障、软件故障或其他异常情况时,能够持续提供服务,减少系统 downtime。高可用性是EMCC生产环境的重要需求,对于保证系统的可靠性和连续性至关重要。

1.2 高可用性架构

  • OMS集群:多个OMS实例组成的集群,提供负载均衡和故障转移
  • 共享存储:OMS配置和数据存储在共享存储上,确保数据一致性
  • 代理高可用性:Agent故障转移和负载均衡
  • 数据库高可用性:OMR数据库的高可用性配置(如RAC、Data Guard)

1.3 故障转移机制

  • OMS故障转移:当一个OMS实例故障时,请求自动转移到其他OMS实例
  • Agent故障转移:当Agent连接的OMS故障时,自动连接到其他OMS实例
  • 数据库故障转移:当OMR数据库故障时,自动切换到备用数据库
  • 存储故障转移:当共享存储故障时,使用备用存储

Part02-生产环境规划与建议

2.1 高可用性规划

制定合理的高可用性规划:

  • 评估系统的可用性需求
  • 设计高可用性架构
  • 选择合适的高可用性技术
  • 制定故障转移和恢复计划
  • 建立高可用性监控和告警机制

2.2 高可用性配置建议

高可用性配置建议:

  • 部署多个OMS实例,组成OMS集群
  • 使用共享存储存储OMS配置和数据
  • 配置OMR数据库的高可用性(如RAC、Data Guard)
  • 部署多个Agent,实现负载均衡
  • 配置网络负载均衡器,分发客户端请求

2.3 故障转移策略

制定合理的故障转移策略:

  • 设置自动故障转移机制
  • 定义故障转移的优先级和顺序
  • 建立故障转移的测试和验证流程
  • 制定故障转移后的恢复计划
  • 定期演练故障转移流程

Part03-生产环境项目实施方案

3.1 OMS集群配置

# 1. 准备共享存储
# 配置NFS共享存储
$ sudo mkdir -p /oracle/shared
$ sudo chown -R oracle:oinstall /oracle/shared
$ sudo chmod -R 775 /oracle/shared

# 2. 安装第一个OMS
# 运行EMCC安装程序
$ ./em13c_linux64.bin -silent -responseFile /oracle/emcc/em_install.rsp

# 3. 配置OMS集群
# 登录EMCC控制台
# 导航到”设置” -> “OMS管理” -> “集群”
# 点击”添加OMS”按钮
# 输入第二个OMS的主机名: fgedu.net.cn
# 输入OMS端口:7803
# 点击”确定”按钮

# 4. 验证OMS集群
# 检查OMS状态
$ ./emctl status oms -details

Oracle Enterprise Manager Cloud Control 13c Release 4
Copyright (c) 1996, 2020 Oracle Corporation. All rights reserved.

Enter Enterprise Manager Root (SYSMAN) Password :

Console Server Host : em1.fgedu.net.cn
Console Server Port : 7803
HTTP Console Port : 7802
HTTPS Console Port : 7803
EM Upload Port : 4903
OMS Log Directory : /oracle/app/oracle/gc_inst/em/EMGC_OMS1/sysman/log
OMS is not configured with SLB or virtual hostname
Agent Upload is locked. Upload will not work until Admin unlocks it.
OMS Console is locked. Console will not be accessible until Admin unlocks it.
Active CA ID: 1

Cluster information:
——————
OMS instance 1:
Host : em1.fgedu.net.cn
Port : 7803
Status : Up
OMS instance 2:
Host : em2.fgedu.net.cn
Port : 7803
Status : Up

3.2 共享存储配置

# 1. 配置NFS服务器
# 在NFS服务器上创建共享目录
$ sudo mkdir -p /nfs/emcc/shared
$ sudo chown -R oracle:oinstall /nfs/emcc/shared
$ sudo chmod -R 775 /nfs/emcc/shared

# 编辑/etc/exports文件
$ sudo vi /etc/exports
/nfs/emcc/shared *(rw,sync,no_root_squash)

# 重启NFS服务
$ sudo systemctl restart nfs-server

# 2. 挂载共享存储
# 在OMS主机上挂载共享存储
$ sudo mkdir -p /oracle/shared
$ sudo mount -t nfs em-nfs.fgedu.net.cn:/nfs/emcc/shared /oracle/shared

# 添加到/etc/fstab
$ sudo vi /etc/fstab
em-nfs.fgedu.net.cn:/nfs/emcc/shared /oracle/shared nfs defaults 0 0

# 3. 配置OMS使用共享存储
# 编辑OMS配置文件
$ vi /oracle/app/oracle/gc_inst/em/EMGC_OMS1/sysman/config/emoms.properties
oracle.sysman.eml.mnt_point=/oracle/shared

# 重启OMS
$ ./emctl stop oms
$ ./emctl start oms

3.3 数据库高可用性配置

# 1. 配置OMR数据库RAC
# 安装Oracle RAC
# 创建OMR数据库

# 2. 配置Data Guard
# 在备用服务器上安装Oracle数据库
# 配置主备数据库

# 3. 验证数据库高可用性
# 检查数据库状态
$ srvctl status database -d omr
Database is running.

# 检查Data Guard状态
SQL> SELECT DATABASE_ROLE, STATUS FROM V$DATABASE;
DATABASE_ROLE STATUS
—————- ————
PRIMARY OPEN

# 4. 测试故障转移
# 模拟主数据库故障
$ srvctl stop database -d omr

# 检查备用数据库状态
SQL> SELECT DATABASE_ROLE, STATUS FROM V$DATABASE;
DATABASE_ROLE STATUS
—————- ————
STANDBY MOUNTED

# 执行故障转移
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;

3.4 故障转移测试

# 1. 测试OMS故障转移
# 停止一个OMS实例
$ ./emctl stop oms

# 检查另一个OMS实例状态
$ ./emctl status oms

# 测试客户端访问
# 打开浏览器,访问 https://em.fgedu.net.cn:7803/em
# 验证可以正常登录

# 2. 测试Agent故障转移
# 停止当前OMS实例
$ ./emctl stop oms

# 检查Agent状态
$ ./emctl status agent

# 验证Agent连接到其他OMS实例
$ ./emctl status agent | grep OMS
OMS URL : https://em2.fgedu.net.cn:4903/em/upload

# 3. 测试数据库故障转移
# 模拟主数据库故障
$ srvctl stop database -d omr

# 检查备用数据库状态
$ srvctl status database -d omr_standby

# 执行故障转移
$ srvctl start database -d omr_standby

# 验证EMCC连接到新的主数据库
$ ./emctl status oms -details

Part04-生产案例与实战讲解

4.1 OMS集群配置实战

# 1. 准备环境
# 两台OMS服务器:em1.fgedu.net.cn和em2.fgedu.net.cn
# 共享存储:em-nfs.fgedu.net.cn:/nfs/emcc/shared

# 2. 安装第一个OMS
# 在em1.fgedu.net.cn上安装OMS
$ ./em13c_linux64.bin -silent -responseFile /oracle/emcc/em_install.rsp

# 3. 配置共享存储
# 挂载共享存储
$ sudo mount -t nfs em-nfs.fgedu.net.cn:/nfs/emcc/shared /oracle/shared

# 配置OMS使用共享存储
$ vi /oracle/app/oracle/gc_inst/em/EMGC_OMS1/sysman/config/emoms.properties
oracle.sysman.eml.mnt_point=/oracle/shared

# 重启OMS
$ ./emctl stop oms
$ ./emctl start oms

# 4. 添加第二个OMS
# 登录EMCC控制台
# 导航到”设置” -> “OMS管理” -> “集群”
# 点击”添加OMS”按钮
# 输入主机名: fgedu.net.cn
# 输入OMS端口:7803
# 点击”确定”按钮

# 5. 验证OMS集群
# 检查OMS状态
$ ./emctl status oms -details

Oracle Enterprise Manager Cloud Control 13c Release 4
Copyright (c) 1996, 2020 Oracle Corporation. All rights reserved.

Enter Enterprise Manager Root (SYSMAN) Password :

Console Server Host : em1.fgedu.net.cn
Console Server Port : 7803
HTTP Console Port : 7802
HTTPS Console Port : 7803
EM Upload Port : 4903
OMS Log Directory : /oracle/app/oracle/gc_inst/em/EMGC_OMS1/sysman/log
OMS is not configured with SLB or virtual hostname
Agent Upload is locked. Upload will not work until Admin unlocks it.
OMS Console is locked. Console will not be accessible until Admin unlocks it.
Active CA ID: 1

Cluster information:
——————
OMS instance 1:
Host : em1.fgedu.net.cn
Port : 7803
Status : Up
OMS instance 2:
Host : em2.fgedu.net.cn
Port : 7803
Status : Up

# 6. 测试故障转移
# 停止em1上的OMS
$ ./emctl stop oms

# 检查em2上的OMS状态
$ ./emctl status oms

# 测试客户端访问
# 打开浏览器,访问 https://em.fgedu.net.cn:7803/em
# 验证可以正常登录

4.2 数据库高可用性配置实战

# 1. 配置OMR数据库RAC
# 安装Oracle RAC
# 创建OMR数据库

# 2. 配置Data Guard
# 在备用服务器上安装Oracle数据库
# 配置主备数据库

# 3. 验证数据库高可用性
# 检查数据库状态
$ srvctl status database -d omr
Database is running.

# 检查Data Guard状态
SQL> SELECT DATABASE_ROLE, STATUS FROM V$DATABASE;
DATABASE_ROLE STATUS
—————- ————
PRIMARY OPEN

# 4. 测试故障转移
# 模拟主数据库故障
$ srvctl stop database -d omr

# 检查备用数据库状态
SQL> SELECT DATABASE_ROLE, STATUS FROM V$DATABASE;
DATABASE_ROLE STATUS
—————- ————
STANDBY MOUNTED

# 执行故障转移
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;

# 启动新的主数据库
SQL> ALTER DATABASE OPEN;

# 验证EMCC连接到新的主数据库
$ ./emctl status oms -details

4.3 高可用性监控与维护

# 1. 配置高可用性监控
# 登录EMCC控制台
# 导航到”目标” -> “OMS集群” -> “em-cluster”
# 点击”监控” -> “性能”
# 配置监控参数:
– 监控频率:每5分钟
– 告警阈值:CPU使用率>80%
– 告警级别:警告
# 点击”保存”按钮

# 2. 配置高可用性告警
# 导航到”设置” -> “通知” -> “通知规则”
# 点击”创建”按钮
# 输入规则名称:HA Alert
# 选择事件类型:OMS状态、数据库状态
# 选择通知方式:电子邮件、短信
# 输入收件人:admin@fgedu.net.cn
# 点击”保存”按钮

# 3. 定期维护
# 检查OMS状态
$ ./emctl status oms

# 检查Agent状态
$ ./emctl status agent

# 检查数据库状态
$ srvctl status database -d omr

# 检查共享存储
$ df -h /oracle/shared

# 4. 故障处理
# 当OMS故障时:
$ ./emctl start oms

# 当数据库故障时:
$ srvctl start database -d omr

# 当共享存储故障时:
$ sudo mount -t nfs em-nfs.fgedu.net.cn:/nfs/emcc/shared /oracle/shared

Part05-风哥经验总结与分享

5.1 高可用性最佳实践

  • 多层冗余:实施多层冗余,包括OMS、数据库、存储和网络
  • 自动故障转移:配置自动故障转移机制,减少人工干预
  • 定期测试:定期测试故障转移流程,确保其可靠性
  • 监控告警:配置全面的监控和告警机制,及时发现问题
  • 文档记录:记录高可用性配置和故障处理流程

5.2 高可用性注意事项

  • 确保共享存储的可靠性和性能
  • 配置合理的故障转移时间,减少服务中断
  • 定期备份OMS配置和数据
  • 培训运维人员,提高故障处理能力
  • 与Oracle支持团队保持沟通,获取高可用性最佳实践

5.3 高可用性建议

  • 使用成熟的高可用性技术,如RAC、Data Guard
  • 部署多个OMS实例,实现负载均衡和故障转移
  • 配置网络负载均衡器,分发客户端请求
  • 建立完善的监控和告警机制,及时发现和处理问题
  • 定期进行高可用性测试,确保系统在故障时能够正常运行

更多视频教程www.fgedu.net.cn

更多学习教程公众号风哥教程itpux_com

from oracle:www.itpux.com

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息