A Oracle Grid Infrastructure安装过程排查故障
本附录提供了安装Oracle Grid Infrastructure的故障排除信息.
本附录包含以下主题:
- 联系Oracle支持的最佳实践
- 一般安装问题
- 使用详细模式解释CVU“未知”输出消息
- 解释有关Oracle Grid Infrastructure安装的CVU消息
- 关于OracleClusterware警报日志
- 在Linux上缺少操作系统软件包
- 在Oracle Grid Infrastructure安装期间执行群集诊断
- 关于安装后使用CVU群集运行状况检查
- 互连配置问题
- SCAN VIP和SCAN监听器问题
- 存储配置问题
- 失败或不完整的安装和升级
A.1联系Oracle支持的最佳实践
如果您发现有必要联系Oracle支持部门报告问题, 那么Oracle建议您在输入服务请求时遵循以下准则:
- 提供问题的明确解释, 包括确切的错误消息.
- 提供解决问题故障排除步骤的说明以及这些步骤的结果.
- 提供受影响软件的确切版本(主要版本和补丁版本) .
- 提供您遇到问题时执行的操作的分步过程, 以便Oracle支持人员可以重现问题.
- 提供对问题影响的评估, 包括受影响的期限和成本.
- 提供屏幕截图, 日志, 远程诊断代理(RDA) 输出或其他相关信息.
A.2一般安装问题
以下是安装期间可能发生的错误类型的示例列表.它包含以下问题:
- root.sh无法完成, 并显示如下错误消息: 资源“ora.Cluster_interconnect.haip”启动失败...
- 在安装Oracle Clusterware期间, 检查Oracle ASM磁盘是否失败, 并显示以下错误: PRVF-5150: 路径/ dev/mapper/<别名>在所有节点上都不是有效的路径
- 尝试获取磁盘时发生错误
- CRS-5018 :(: CLSN00037 :)删除未使用的HAIP路由:
- 无法使用/ usr/X11R6/bin/xdpyinfo命令对显示颜色执行自动检查
- CRS-5823: 无法初始化代理框架
- 无法连接到服务器, 连接被服务器拒绝, 或无法打开显示
- 无法初始化ocrconfig
- INS-32026 INSTALL_COMMON_HINT_DATABASE_LOCATION_ERROR
- CLSRSC-444: root.sh使用OUI会话在节点上运行命令
- 此系统不支持MEMORY_TARGET
- 节点不可用于从OUI节点选择屏幕进行选择
- 节点节点名称不可用
- PROT-8: 无法将数据从指定文件导入群集注册表
- PRVE-0038: SSH LoginGraceTime设置或致命错误: 认证前超时
- 超时等待CRS堆栈启动
- YPBINDPROC_DOMAIN: 域未绑定
root.sh无法完成, 并显示如下错误消息: 资源“ora.Cluster_interconnect.haip”启动失败...
原因: 为Oracle RAC配置公用和专用网络接口时, 必须启用ARP.高可用IP(HAIP) 地址在公共网络上不需要ARP, 但对于VIP故障切换, 您需要启用ARP.不要配置NOARP.
操作: 通过运行以下命令来配置hsi0(或eth) 设备以使用ARP协议:
#ifconfig hsi0 arp
在安装Oracle Clusterware期间, 请检查Oracle ASM磁盘失败并显示以下错误: PRVF-5150: 路径/ dev/mapper/<别名>不是所有节点上的有效路径
原因: 在Red Hat Enterprise Linux 6.3上可能会发生此错误, 因为/etc/multipath.conf未设置对文件的读取访问权限.
操作: 要解决此问题, 请按如下所示root添加+ r /etc/multipath.conf:
#chmod + r /etc/multipath.conf
尝试获取磁盘时发生错误
原因: 有一个条目/etc/oratab指向一个不存在的Oracle主目录.OUI日志文件应该显示以下错误: “java.io.IOException:/home/oracle/OraHome/bin/kfod: not found”
操作: 删除/etc/oratab指向不存在的Oracle主目录的条目.
CRS-5018 :(: CLSN00037 :)删除未使用的HAIP路由:
原因: 通常, 此错误表示某些内容(通常为零配置网络zeroconf) 已创建与HAIP代码冲突的指示路由.该错误表示Oracle软件已删除路线以确保适当的堆栈功能.
操作: 使用Oracle Clusterware时应禁用零配置网络功能, 因为此功能可能会导致群集成员节点之间的通信问题.
要禁用零配置网络:
1. 以...登录root.
2. 将目录更改为/etc/sysconfig.
3. 创建一个副本/etc/sysconfig/network.例如:
#cp network network_old
4. 使用文本编辑器打开文件/etc/sysconfig/network.
5. 检查文件的值NOZEROCONF以确认它设置为yes.如果在文件中找不到此参数, 则将以下条目附加到文件中:
NOZEROCONF = YES
更新此设置后保存该文件.
6. 重新启动网络服务.例如:
# service network restart
7. 在每个Cluster成员节点上重复此过程.
无法使用/ usr/X11R6/bin/xdpyinfo命令对显示颜色执行自动检查
原因: 未设置DISPLAY变量, 或者运行安装的用户未被授权打开X窗口.如果从远程终端运行安装, 或者如果使用su命令将授权打开X窗口的用户更改为无权在显示器上打开X窗口的用户帐户, 则可能发生这种情况作为低级特权用户打开root用户控制台显示屏上的窗口.
操作: 运行该命令echo $DISPLAY以确保变量设置为正确的可视或正确的主机.如果显示变量设置正确, 那么要么确保您以授权用户打开X窗口的身份登录, 要么运行命令xhost +以允许任何用户打开X窗口.
如果您在服务器控制台上本地登录root, 并使用该su -命令更改为Oracle Grid Infrastructure安装所有者, 则退出服务器并作为Grid安装所有者重新登录.
CRS-5823: 无法初始化代理框架
原因: 运行时Oracle Grid Infrastructure的安装失败root.sh.Oracle Grid Infrastructure无法启动, 因为主机文件中缺少本地主机条目.
Oracle Grid Infrastructure alert.log文件显示以下内容:
[/oracle/app/grid/bin/orarootagent.bin(11392)]CRS-5823:Could not initialize
agent framework. Details at (:CRSAGF00120:) in
/oracle/app/grid/log/node01/agent/crsd/orarootagent_root/orarootagent_root.log
2010-10-04 12:46:25.857
[ohasd(2401)]CRS-2765:Resource 'ora.crsd' has failed on server 'node01'.
您可以通过检查crsdOUT.log文件并找到以下内容来验证此原因:
Unable to resolve address for localhost:2016
ONS runtime exiting
Fatal error: eONS: eonsapi.c: Aug 6 2009 02:53:02
操作: 在主机文件中添加本地主机条目.
无法连接到服务器, 连接被服务器拒绝, 或无法打开显示
原因: 这些是Windows或UNIX系统上的X Window显示错误的典型代表, 其中xhost未正确配置, 或者作为用户帐户运行的位置与用于startx启动X服务器的命令所使用的帐户不同.
操作: 在本地终端窗口中, 以启动X Window会话的用户身份登录, 然后输入以下命令:
$ xhost fullyqualifiedRemoteHostname
例如:
$ xhost somehost.example.com
然后, 输入以下命令, 其中workstationname是工作站的主机名或IP地址.
Bourne, Bash或Korn shell:
$ DISPLAY = workstationname: 0.0
$ export DISPLAY
要确定X Window应用程序是否在本地系统上正确显示, 请输入以下命令:
$ xclock
X时钟应显示在您的显示器上.如果xclock不可用, 请将其安装到您的系统上并重复测试.如果xclock您的系统上安装了该功能, 但在显示屏上无法打开X时钟, 则xhost可能会限制该命令的使用.
如果您使用VNC客户端访问服务器, 请确保您正在访问分配给您尝试用于安装的用户的可视化.例如, 如果您使用该su命令成为其他用户visual上的安装所有者, 并且该xhost命令的使用受到限制, 则无法使用该xhost命令更改显示.如果您使用分配给安装所有者的可视化界面, 则可以使用正确的显示界面, 然后在显示器上输入xclock命令即可生成X时钟.
出现X时钟时, 关闭X时钟, 然后再次启动安装程序.
无法初始化 ocrconfig
原因: 您在/etc/fstab文件中为NFS配置了错误的选项.
您可以通过检查ocrconfig.log位于路径中的文件Grid_home/log/nodenumber/client并找到以下内容来确认这一点:
/u02/app/crs/clusterregistry, ret -1, errno 75, os err string Value too large
for defined data type
2007-10-30 11:23:52.101: [ OCROSD][3085960896]utopen:6'': OCR location
操作: 对于NFS上安装的文件系统, 为/etc/fstab文件中的NFS安装提供正确的安装配置:
rw,sync,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0
您不应该netdev在安装说明中, 或vers=2.该netdev选项仅对OCFS文件系统是必需的, 并vers=2强制内核使用早期版本2协议来挂载NFS.
在更正NFS安装信息后, 重新安装NFS安装点, 然后root.sh再次运行脚本.例如, 使用挂载点/u02:
#umount/u02
#mount -a -t nfs
#cd $ GRID_HOME
#sh root.sh
INS-32026 INSTALL_COMMON_HINT_DATABASE_LOCATION_ERROR
原因: 为Grid安装选择的位置位于Oracle基本目录下.
操作: 对于用于Cluster安装的Oracle Grid Infrastructure, 不得将Grid Home放置在其中一个Oracle基本目录下, 或放在Oracle数据库安装所有者的Oracle主目录下, 或放置在安装所有者的主目录下.在安装过程中, Grid主目录路径的所有权更改为root.此更改会导致其他安装的权限错误.另外, OracleClusterware软件堆栈可能不会在Oracle基本路径下出现.
CLSRSC-444: root.sh使用OUI会话在节点上运行命令
原因: 如果出现此消息列出的节点不是运行OUI的节点, 那么可能的原因是在root.sh脚本完成运行期间或之前命名节点已关闭.
操作: 完成root.sh在所有其他Cluster成员节点上运行脚本, 并且不要尝试root在错误消息中指定的节点上运行脚本.在所有或部分规划的Cluster成员节点集上完成Oracle Grid Infrastructure后, 启动OUI并在错误中指定的节点上卸载失败的Oracle Grid Infrastructure安装.卸载节点上的安装失败后, 请手动将该节点添加到群集.
此系统不支持MEMORY_TARGET
原因: 在Linux系统上, /dev/shmPGA和SGA的大小不足.
如果要在Linux系统上安装, 请注意设置初始化参数MEMORY_TARGET或MEMORY_MAX_TARGET的内存大小(SGA和PGA) 不能大于/dev/shm操作系统上的共享内存文件系统() .
操作: 增加/dev/shm挂载点大小.例如:
#mount -t tmpfs shmfs -o size = 4g/dev/shm
另外, 要使此更改在系统重新启动时保持不变, 请添加/etc/fstab类似于以下内容的条目:
shmfs/dev/shm tmpfs size = 7g 0 0
无法从中选择节点 OUI节点选择屏幕
原因: 未安装Oracle Grid Infrastructure, 或者Oracle Grid Infrastructure服务未启动并正在运行.
操作: 安装Oracle Grid Infrastructure, 或查看安装的状态.考虑重新启动节点, 因为这样做可能会解决问题.
节点节点名称不可用
原因: 不可用的IP主机
操作: 尝试以下操作:
1. 运行shell命令ifconfig -a.将此命令的输出与/etc/hosts文件内容进行比较, 以确保列出节点IP.
2. 运行shell命令nslookup查看主机是否可访问.
PROT-8: 无法将数据从指定文件导入群集注册表
原因: 现有Oracle群集注册表设备分区中的空间不足, 导致运行时迁移失败rootupgrade.sh.要确认, 请在日志文件$GRID_HOME/log/主机名中寻找错误“utopen: 12: 后备存储空间不足” /client/ocrconfig_pid.log, 其中pid代表进程ID.
操作: 识别具有400 MB或更多可用空间的存储设备.Oracle建议您将整个磁盘分配给Oracle ASM.
PRVE-0038: SSH LoginGraceTime设置或致命错误: 认证前超时
原因: PRVE-0038: 节点“ nodename ” 上的SSH LoginGraceTime设置可能导致用户在登录完成之前断开连接.此错误可能是因为SSH连接的默认超时值太低, 或者LoginGraceTime参数被注释掉了.
操作: Oracle建议在OpenSSH配置文件中取消注释LoginGraceTime参数/etc/ssh/sshd_config, 并将其设置为值0(无限制) .
超时等待CRS堆栈启动
原因: 如果配置问题阻止Oracle Grid Infrastructure软件在所有节点上成功安装, 则可能会看到诸如“超时等待CRS堆栈启动”等错误消息, 或者您可能注意到Oracle Clusterware管理的资源是不在退出安装程序后在某些节点上创建.您还可能会注意到资源的状态不是ONLINE.
操作: 取消配置Oracle Grid Infrastructure安装而不删除二进制文件, 并检查日志文件以确定配置问题的原因.解决了配置问题后, 请重新运行安装期间使用的脚本以配置Oracle Clusterware.
YPBINDPROC_DOMAIN: 域未绑定
原因: 在安装后测试期间, 如果节点的公共网络互连被拔出, 并且VIP不会故障转移, 则会发生此错误.相反, 该节点挂起, 并且用户无法登录到系统.如果Oracle主目录, listener.oraOracle日志文件或任何操作脚本位于NAS设备或NFS装载上, 并且名称服务高速缓存守护程序nscd尚未激活, 则会发生此错误.
操作: 在群集中的所有节点上输入以下命令以启动nscd服务:
/ sbin/service nscd start
A.2.1其他安装问题和错误
有关解决错误消息的其他帮助, 请参阅My Oracle Support.例如, 文档ID 1367631.1的注释包含Oracle Grid Infrastructure和Oracle Clusterware的一些最常见的安装问题.
A.3使用详细模式解释CVU“未知”输出消息
如果使用-verbose参数运行Cluster Verification Utility , 并且Cluster Verification Utility命令对UNKNOWN特定节点作出响应, 则这是因为Cluster Verification Utility无法确定检查是否通过.以下是“未知”响应的可能原因列表:
- 该节点已关闭
- /binOracle Grid Infrastructure主目录或Oracle主目录中的目录中缺少Cluster Verification Utility所需的常用操作系统命令二进制文件
- 启动Cluster Verification Utility的用户帐户无权在节点上运行常用操作系统命令
- 该节点缺少操作系统修补程序或必需的软件包
- 该节点已经超过了最大进程数或最大打开文件数, 或者IPC段存在问题, 例如共享内存或信号量
A.4解释关于Oracle Grid Infrastructure设置的CVU消息
如果Cluster Verification Utility(CVU) 报告显示您的系统未能满足Oracle Grid Infrastructure安装的要求, 请使用本节中的主题来纠正报告中指出的问题, 然后再次运行CVU.
用户等效性检查失败
原因: 未能在所有节点上建立用户等效性.这可能是由于未创建所需的用户, 或未能正确完成安全shell(SSH) 配置.
操作: 群集验证实用程序提供用户等效失败的节点列表.
对于列为故障节点的每个节点, 请查看安装所有者用户配置, 以确保用户配置已正确完成, 并且SSH配置已正确完成.运行Oracle Clusterware安装的用户必须具有创建SSH连接的权限.
Oracle建议您使用OUI中的SSH配置选项来配置SSH.如果手动配置SSH, 或者在安装后配置了SSH, 则可以在安装之前使用Cluster Verification Utility.
例如, 要检查用户帐户的用户等同性oracle, 请使用命令su - oracle和查 通过使用以下语法ssh在date命令参数中在本地节点上运行命令来手动创建用户等效性:
$ ssh nodename date
此命令的输出应该是用于所用值的远程节点的时间戳nodename.如果系统提示您输入密码, 则需要配置SSH.如果ssh位于默认位置, 则该/usr/bin目录ssh用于配置用户等效.您也可以使用rsh确认用户等同性.
如果在使用SSH输入日期命令时看到与以下内容类似的消息, 则这是用户等价性错误的可能原因:
The authenticity of host 'node1 (140.87.152.153)' can't be established.
RSA key fingerprint is 7z:ez:e7:f6:f4:f2:4f:8f:9z:79:85:62:20:90:92:z9.
Are you sure you want to continue connecting (yes/no)?
输入yes, 然后运行Cluster Verification Utility以确定用户等效性错误是否已解决.
如果ssh位于默认位置以外的位置/usr/bin, 则Cluster Verification Utility会报告用户等同性检查失败.为避免此错误, 请导航到该目录Grid_home/cv/admin, cvu_config使用文本编辑器打开文件, 然后添加或更新密钥ORACLE_SRVM_REMOTESHELL以指示ssh系统上的路径位置.例如:
# Locations for ssh and scp commands
ORACLE_SRVM_REMOTESHELL=/usr/local/bin/ssh
ORACLE_SRVM_REMOTECOPY=/usr/local/bin/scp
请注意修改cvu_config文件的以下规则:
·键条目具有语法名称=值
·每个键条目和分配给该键的值仅定义一个属性
·以数字符号(#) 开头的行是注释行, 并且被忽略
·不遵循语法名称=值的行将被忽略
当您更改路径配置时, 请再次运行Cluster Verification Utility.如果ssh位于默认位置以外的其他位置, 则还需要使用其他参数启动OUI, 以便为远程shell和远程复制命令指定不同的位置.输入runInstaller -help以获取有关如何使用这些参数的信息.
当您或OUI运行ssh或rsh命令(包括启动的任何登录或其他shell脚本) 时, 如果脚本生成任何输出, 则可能会看到关于无效参数或标准输入的错误.您应该纠正这些错误的原因.
要停止错误, 请删除oracle用户登录脚本中的所有命令, 以便在运行ssh或rsh命令时生成输出.
如果看到有关X11转发的消息, 请完成第6.2.4节“设置远程显示和X11转发配置”的任务以解决此问题.
如果您看到与以下类似的错误:
stty: standard input: Invalid argument
stty: standard input: Invalid argument
如果系统上的隐藏文件(例如.bashrc或.cshrc) 包含stty命令, 则会产生这些错误.如果看到这些错误, 请参见第6.2.5节“防止由终端输出命令引起的安装错误”, 以纠正这些错误的原因.
节点可达性检查或节点连接性检查失败
原因: 无法通过公共或专用互连使用TCP/IP协议访问Cluster中的一个或多个节点.
操作: 使用该命令/bin/ping address检查每个节点地址.当您找到无法到达的地址时, 请检查您的公共和私人地址列表, 确保您已正确配置它们.如果您使用第三方供应商群集软件, 请参阅供应商文档以获取帮助.确保公用和专用网络接口在群集的每个节点上具有相同的接口名称.
用户存在检查或用户组关系检查失败
原因: 安装所需的用户和组的管理权限缺失或不正确.
操作: id在每个节点上使用该命令来确认安装所有者用户(例如grid或oracle) 是否使用正确的组成员身份创建.确保已创建所需的组, 并在受影响的节点上创建或修改用户帐户以建立所需的组成员资格.
也可以看看:
有关如何创建所需组以及如何配置安装所有者用户的说明, 请参见第6.1节“为Oracle Grid Infrastructure创建组, 用户和路径”
A.5关于OracleClusterware警报日志
Oracle Clusterware使用Oracle数据库故障诊断基础架构来管理诊断数据及其警报日志.因此, 大多数诊断数据驻留在自动诊断信息库(ADR) 中, 这是目录和文件的集合, 位于您在安装过程中指定的基本目录下.从Oracle Clusterware 12c第1版(12.1.0.2) 开始, 由Oracle Clusterware程序编写的诊断数据文件被称为跟踪文件, 并具有.trc文件扩展名