商务网站开发流程有三个阶段,谷歌浏览器手机版,html做网站,中小企业网站建设效果1 集群架构图
整体集群架构图如下#xff1a; 1 数据库启动顺序OHASD层面
操作系统进程init.ohasd run启动ohasd.bin init.ohasd run 集群自动启动是否被禁用 crsctl enable has/crsGIHOME所在文件系统是否被正常挂载。管道文件npohasd是否能够被访问#xff0c; cd /var/t…1 集群架构图
整体集群架构图如下 1 数据库启动顺序OHASD层面
操作系统进程init.ohasd run启动ohasd.bin init.ohasd run 集群自动启动是否被禁用 crsctl enable has/crsGIHOME所在文件系统是否被正常挂载。管道文件npohasd是否能够被访问 cd /var/tmp/.oracle/ (管道文件目录)手动执行run脚本 nohup /etc/init.d/init.ohasd run . ohasd.bin 确认OLR存在而且能够正常被访问。($GI_HOME/crsdata/tjnrmsdb1/olr/,或者使用./ocrcheck -localohasd所使用的嵌套字文件socket file存在。ohasd对应的日志文件能够正常访问。 2 初始化集群初始资源
ohasd.bin会启动4个代理进程来启动所有的集群初始化资源。
oraagent负责启动资源ora.asm,ora.evmd,ora.gipcd,ora.gpnpd,ora.mdnsd等。
orarootagent负责启动资源ora.crsd\ora.ctssd\ora.cluster_interconnect.ha\ora.crf等。
cssdagent负责启动ora.cssd
cssdmonitor负责启动ora.cssdmonitor.
常见失败汇总
1 二进制文件损坏
拷贝健康节点的二进制文件过来继续使用。
2 代理进程日志文件无法访问。
3 集群初始化资源开始启动
虽然ohasd的代理进程oraagent会同时启动所有的集群初始化资源但是它们之间还是有依赖关系的。 1 mdnsd守护进程被启动并启动mdns服务以便gpnpd能够通过mdns在节点之间传输gpnp profile文件。 2gpnpd守护进程被启动gpnpd开始读取本地节点的gpnp profile之后和远程节点的gpnpd守护进程通信以便获得集群中最新的gpnp profile信息。 3gpnpd启动完毕向本地节点的其他集群初始化资源提供gpnp profile服务。 4gipcd守护进程被启动从gpnpd守护进程获得集群的私网信息并和远程节点的gipcd守护进程通信最后开始监控本地节点的私网。 5cssdagent代理进程启动ocssd.bin守护进程。 6cssdmonitor守护进程启动并开始监控ocssd.bin守护进程的状态。 在整个过程中可能导致集群的bootstrap过程无法成功的主要原因如下。 原因1集群中有其他的mdns软件运行例如avahi这会导致GI的mdnsd服务无法正常工作。例如 Oct 6 225258 test1avahi-daemon[22477] Withdrawing address recordfor *.*.*.* on bond1.
Oct 6 225258 test1avahi-daemon[22477] Leaving mDNS multicast group on interfacebond1.IPv4 with address *.*.*.*.
Oct 6 225258 test1avahi-daemon[22477] Joining mDNS multicast group on interfacebond1.IPv4 with address 169.254.180.94.
Oct 6 225258 test1 avahi-daemon[22477] Withdrawing address record for 169.254.180.94 on bond1.
Oct 6 225258 test1avahi-daemon[22477] Interface bond1.IPv4 no longer relevant for mDNS. 原因2gpnp profile文件中的信息出现错误这会导致集群的bootstrap过程无法完成。例如 [gridtest1 oraagent_grid]$ gpnptool get
Warning some command line parameters were defaulted. Resulting command line
/u01/app/11.2.0/grid/bin/gpnptool.bin get -o-
......
gpnp-profile.xsd ProfileSequence13 ClusterUId7d414c4a930cdfc4ff23e150c9acd5e0 ClusterNametest-cluster PALocationgpnpNetwork-ProfilegpnpHostNetwork idgen HostName*
gpnpNetwork idnet2 IP*.*.*.0 Adaptereth88 Usecluster_interconnect/ 私网网卡信息错误
gpnpNetwork idnet1 Adaptereth0 IP*.*.*.0 Usepublic/ 原因3节点之间的网络通信存在问题这会导致gpnp profile无法正常传输。 原因4gpnp的一些线程被挂起这会导致gpnpd守护进程无法成功完成启动任务。 原因5集群的私网网卡出现问题这会导致gipcd无法和其他节点的gipcd进行通信或者集群没有可用的私网进行通信。 原因6gipcd存在问题这会导致它错误地认为集群私网网卡存在问题。 原因7以上守护进程的套接字文件丢失。 而对应的解决方法如下。 方法1停止并禁用其他的mdns软件。例如 # /etc/rc.d/init.d/avahi-dnsconfd stop
# /etc/rc.d/init.d/avahi-daemon stop
# chkconfig avahi-dnsconfd off
# chkconfig avahi-daemon off 方法2如果gpnp profile只是在集群的某一个节点上出现了错误可以从集群的其他节点将其复制过来。如果集群所有节点的gpnp profile都出现了问题那么就需要使用gpnp工具来进行修正。
---索引如果修改集群私网要备份gpnp profile文件
下面的例子演示了如何使用gpnp tool修改集群的私网信息。 1检查当前的gpnp profile确认gpnpd能够通过mdns找到集群的其他节点。 $gi_home/bin/gpnptool get
$gi_home/bin/gpnptool find 2创建一个工作路径以用于编辑gpnp profile。 $mkdir /home/grid/gpnp
$export GPNPDIR/home/grid/gpnp
$gi_home/bin/gpnptool get -o$GPNPDIR/profile.original 3创建一个用于修改的gpnp profile副本。 $cp $GPNPDIR/profile.original $GPNPDIR/p.xml 4查看gpnp profile的序列号和私网信息。 $gi_home/bin/gpnptool getpval -p$GPNPDIR/p.xml -prf_sq -o-
$gi_home/bin/gpnptool getpval -p$GPNPDIR/p.xml -net -o- 5修改集群私网的网卡信息。 $gi_home/bin/gpnptool edit -p$GPNPDIR/p.xml -o$GPNPDIR/p.xml -ovr -prf_sq当前序列号1 -net私网编号net_ada私网网卡名 例如 gpnptool edit -p$GPNPDIR/p.xml -o$GPNPDIR/p.xml -ovr -prf_sq9 -net2net_adaeth1 6确认之前的修改。 $gi_home/bin/gpnptool sign -p$GPNPDIR/p.xml -o$GPNPDIR/p.xml -ovr -wcw-fspeer 7将修改后的gpnp profile应用到gpnpd守护进程中。 $gi_home/bin/gpnptool put -p$GPNPDIR/p.xml 8将改变后的gpnp profile推送到集群的其他节点。 $gi_home/bin/gpnptool find -c集群名
$gi_home/bin/gpnptool rget -c集群名 方法3确认集群私网通信正常例如使用ping、traceroute等命令确认集群私网的连通性。 方法4在操作系统层面重新启动gpnp守护进程例如kill-9gpnpd进程ID。 注意 当gpnpd守护进程被终止之后对应的ohasd代理进程会及时发现这一情况并启动新的gpnpd守护进程。 方法5确认集群私网通信正常例如使用ping、traceroute等命令确认集群私网的连通性。 方法6在操作系统层面重新启动gipcd守护进程例如kill-9gipcd进程ID。 注意 当gpicd守护进程被终止之后对应的ohasd代理进程会及时发现这一情况并启动新的gipcd守护进程。 方法7重新启动GI以便重建套接字文件。 #gi_home/bin/crsctl stop crs
#gi_home/bin/crsctl start crs 2 AGENT对应的进程架构图