5 管理oracle集群软件组件
===========================
这章讲述如何管理oracle集群软件环境
讲述了如何管理表决磁盘和ocr
主要讲述以下内容:
关于oracle集群软件的概述
备份恢复表决磁盘
添加删除表决磁盘
备份恢复ocr
修改ocr的配置
ocr疑难问题解决
———————
关于oracle集群软件
oracleRAC使用oracle集群软件将多个节点捆绑在一起作为一个统一的server
oracle的集群软件是独立于数据库软件外的软件
在RAC环境中,oracle集群软件监控所有oracle的组件,如实例或监听等
如果发生错误,集群软件会尝试重启发生错误的oracle组件,并重定向为新的可用组件
oracle集群软件为运行在集群中的应用提供了高可用性的 络框架
当系统启动,集群软件会确保集群管理应用的启动
同时oracle集群软件还监控应用程序,保证他们随时都是可用的
例如,当有应用进程失效,oracle集群软件会根据你定义的脚本去自动重启出错的进程,然后,你可以在另一个节点上启动应用程序进程来启动失效的进程
oracle集群软件包括两个重要的组成,表决磁盘和ocr
oracle的表决磁盘是管理集群中节点的从属关系的文件
ocr是管理oracleRAC数据库配置信息的文件
oracle集群软件安装进程在共享存储中创建表决磁盘和ocr
如果在安装过程中选择了普通冗余,oracle集群软件会自动获得文件的复本来避免单点故障,同时普通冗余也避免了使用第三方的存储级别的冗余来保证高可用;
如果使用一般冗余,oracle集群软件会自动建立两个ocr文件的镜象和3个表决磁盘的镜象
===========================
备份恢复表决磁盘
通过冗余硬件和软件来避免单点故障来实现高可用配置
当集群中一个组件down掉后,oracle集群软件会重定向到他管理的资源到一个备份的组件
表决磁盘用来存储节点的从属信息。
一个节点在任何时候都必须要能够访问至少一半以上的表决磁盘
为了避免同时丢失复用的表决磁盘,每个表决磁盘必须要存放在不同的设备上,如,存放在不同的磁盘中
例如,如果使用5块表决磁盘,那么每个节点在任何时候都必须能够访问至少3块表决磁盘
如果某个节点在某一时候不能访问要求限度最低的表决磁盘的数量,那么这个节点就会离线,从集群冲脱离出来
当错误发生后,并且表决磁盘的归属重新重置后,可以通过命令来恢复发生错误的节点并将其重新恢复到集群中
——————-
备份表决磁盘
因为集群中节点的从属关系并不经常改变,所以不需要每天都对表决磁盘做备份
但以下情况下最好对表决磁盘做备份
1、安装结束后
2、在添加或删除机群中的节点后
3、在添加或删除表决磁盘后
使用linux命令dd来对表决磁盘做copy备份
其中voting_disk_name代表要备份的表决磁盘
backup_file_name代表想要存放表决磁盘中内容的文件
使用命令:
dd if=voting_disk_name f=backup_file_name
如果表决磁盘在裸设备中存储,用设备名来替代voting_disk_name
dd if=/dev/sdd1 f=/tmp/voting.dmp
当使用dd命令备份表决磁盘的时候,CRS进程可以是激活状态的
也就是说在对表决磁盘使用dd命令来备份的时候是不需要停掉CRS进程的
———————-
恢复表决磁盘
如果表决磁盘发生故障而不再可用,可以使用之前备份的表决磁盘来恢复
使命下面的命令来恢复表决磁盘
dd if=backup_file_name f=voting_disk_name
其中backup_file_name代表备份文件
voting_disk_name代表要恢复的表决磁盘
———————–
添加删除表决磁盘
在oracleRAC安装后可以添加或者删除表决磁盘
以root身份运行
crsctl add css votedisk path
crsctl delete css votedisk path
其中path代表的是要添加或删除的votingdisk的全路径
如果集群是处于down的状态,运行以上命令要加上
-force选项
-force选项在实例启动的状态下也可以加,不过没什么意义
===============================
备份恢复oracle集群注册软件-OCR
每4小时oracle集群软件自动创建ocr的副本
在任何时候,oracle集群软件至少要保存3份ocr的副本,分别是
4小时的、1天的以及一星期的副本
用户不能指定备份ocr的频率以及保存的ocr副本的数量
可以使用备份软件来复制系统自动生成的ocr副本到不同的磁盘驱动器以达到多工复用的目的
在redhat linux系统中,默认存放ocr副本的路径是
/CRS_HOME/cdata/cluster_name
其中cluster_name代表集群名
CRS_HOME代表crs主目录
本小节包括以下内容
检验ocr备份的有用性
备份ocr
恢复ocr
————–
检查ocr备份的有用性
可以在任意节点上运行以下命令来查看最近的ocr备份
ocrconfig -showbackup
—————
备份ocr
因为ocr的重要性,oracle建议使用ocrconfig工具每天至少一次的自动备份ocr
在使用自动备份ocr的同时,还可以导出ocr中的内容到文件中
在以下情况下最好对ocr进行备份
添加或删除节点
修改oracle集群软件的资源
创建数据库
导出ocr内容到文件中可以在修改ocr配置出现异常的时候进行恢复
如遇到不能解决的问题或者在对数据库进行修改后不能启动数据库的时候,可以重新导入备份的ocr信息来使集群恢复可用
以root身份执行
ocrconfig -export backup_file_name
其中backup_file_name是用来存放备份信息的文件
———————
恢复ocr
本节讲述两种恢复ocr的办法
第一中是使用自动生成的ocr文件的副本恢复
第二种是使用手动创建的ocr导出文件
在故障发生的时候,在恢复ocr前,首先要确保ocr是不可用的
使用下面的命令来检查ocr的统计情况
ocrcheck
如果命令没有返回至少一个类似
‘Device/File integrity check succeeded’
的信息,那么就意味着所有的ocr都坏掉了
这种情况下就必须要恢复ocr
——————
从自动生成的ocr备份中恢复ocr
1、以root身份执行命令,确认可用的ocr备份
#ocrconfig -show backup
2、使用ocrdump命令来检查备份的内容
$ocrdump -backupfile file_name
其中file_name是ocr备份文件
3、以root身份在每个节点上停止集群软件
在所有节点上执行
#crsctl stop crs
4、以root身份执行命令,使用备份的ocr文件恢复ocr
其中备份文件是在第一步中show出来的备份文件
并确保在执行恢复命令前ocr设备是可用的
#ocrconfig -restore file_name
5、以root身份,重新启动机群中所有的节点
在所有节点执行以下命令
#crsctl start crs
6、使用CVU来验证ocr的完整性
使用参数-n all来列出机群中所有节点的信息
$cluvfy comp ocr -n all [-verbose]
——————-
从ocr导出文件中恢复ocr
当ocr配置出错的时候,可以使用
ocrconfig -import来恢复
用之前导出的ocr文件来恢复ocr
1、将之前使用ocrconfig -export创建的ocr导出文件移到能够访问的路径下
2、以root身份,在所有的节点执行
#crsctl stop crs
3、以root身份时候用下面命令导入ocr备份文件中的内容
#ocrconfig -import file_name
其中file_name就是导出的ocr内容的备份文件
4、以root身份在所有节点上执行命令,启动集群
#crsctl start crs
5、使用CVU来验证ocr的完整性
使用参数-n all来列出机群中所有节点的信息
===================================
修改ocr配置
本节讲述如何管理ocr
ocr中存放集群中节点的列表信息
如,实例和节点之间的对应关系
以及oracle集群中应用程序的profile被集群软件修改的记录
本节包括以下主题
增加一个ocr地址
替换更新ocr
在本地节点上修复ocr
删除ocr
——————-
添加ocr地址
在安装或升级oracleRAC后可以添加ocr
如果已经对ocr做了镜象,那么就没必要再添加了
在使用一般冗余的情况下oracle集群软件自动管理两个ocr镜象
oracleRAC环境不支持多于2个ocr
使用以下命令添加ocr
可以使用文件的全路径,也可以使用某一块单独的磁盘
以root身份执行
#ocrconfig -replace ocr destination_file
#ocrconfig -replace ocr disk
使用下面的命令来添加ocr镜象
#ocrconfig -replace ocrmirror destination_file
#ocrconfig -replace ocrmirror disk
——————-
替换ocr
如果想要改变已经存在的ocr,或者改变失效两个ocr中失效的一个的路径
可以按照下面的步骤操作
1、使用ocrcheck工具来确认要替换的ocr文件之外的另一个ocr是在线的
ocrcheck
2、确认oracle集群软件在要操作的节点上正常运行
使用下面的命令
crsctl check crs
3、使用下面的命令来替换ocr
ocrconfig -replace ocr destination_file
ocrconfig -replace ocr disk
4、使用下面的命令来替换ocr镜象的文职
ocrconfig -replace ocrmirror destination_file
ocrconfig -replace ocrmirror disk
5、如果在集群中有节点是关闭的
在重启节点后,在节点上使用下面的命令使节点重新加入集群
ocrconfig -repair
———————–
在本地节点上修复ocr
在删除ocr前,至少要有一个ocr是在线的
你可以删除ocr的镜象,用RAID来做冗余
删除ocr按照以下步骤进行
1、使用ocrcheck工具来确认至少有一个可用的ocr在线
ocrcheck
2、在任意一个节点上使用下面的命令来删除check出来的ocr
ocrconfig -replace ocr
在任意节点上运行这个命令会更新系统中所有的ocr
===========================
ocr疑难问题检查
这小节包括以下ocr疑难问题解决的主题
使用ocrcheck工具
解决一般性的ocr问题
—————–
使用ocrcheck工具
ocrcheck工具会展示出
ocr使用的数据块的格式版本
空闲空间
已经使用的空间
已经配置的ocr空间
他还会返回所有每个ocr文件的统计信息
下面是一个ocrcheck命令返回的范例
Status of Oracle Cluster Registry is as follows :
Version : 2
Total space (kbytes) : 262144
Used space (kbytes) : 16256
Available space (kbytes) : 245888
ID : 1918913332
Device/File Name : /dev/raw/raw1
Device/File integrity check succeeded
Device/File Name : /oradata/mirror.ocr
Device/File integrity check succeeded
Cluster registry integrity check succeeded
ocrcheck工具会创建一个log文件
存储目录如下
CRS_home/log/hostname/client
文件名为
orcheck_nnnnn.log
其中nnnnn代表的是操作ocrcheck命令的进程
———————-
ocr一般性问题
1、ocr没有镜象
添加镜象
2、一个ocr镜象失效,必须替换他
错误信息会在ocr的日志文件中或oem中
3、ocr被不正确的升级
repair
4、删除ocr
文章知识点与官方知识档案匹配,可进一步学习相关知识云原生入门技能树k8s包管理(helm)安装helm8747 人正在系统学习中 相关资源:软件测试群软件测试群软件测试群软件测试群_测试群-其它文档类…
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!