本文的实例,则是由于Cluster软件的故障造成了无法对共享磁盘柜进行访问,也就从事实上导致了服务的不可用性,这是用冗余手段也难以解决的问题。笔者希望通过对此实例的分析,能带给大家一些解决集群故障的启示。

应用硬件环境为两台服务器与一台RA4100磁盘柜通过光纤HUB组成了一个集群环境。运行软件环境为Microsoft Windows 2000 Advanced Server,使用Windows 2000自带的Cluster软件。

错误现象

系统启动后,发现集群服务无法正常启动,集群管理器也无法正常打开,在任一节点,打开资源管理器,都无法看到共享磁盘柜,相应安装在共享磁盘柜上的软件也就无法正常启动和使用。打开事件日志,可以发现以下错误:Event ID: 1019

Event Type: Warning

Event Source: ClusSvc

Event Category: Log Mgr

Description: The log file Q:MSCSquolog.log was found to be corrupt. An attempt will be made to reset it, or you should use the Cluster Administrator utility to adjust the maximum size.

除以上比较明显描述的错误外,事件日志中还可以发现以下记录:

Event ID:1067;Event ID: 1148

解决方法

从事件日志分析,quorum.log 文件出现了错误,导致了系统集群服务不能正常启动,解决问题的关键在于能够把quorum.log文件恢复到一个初始化状态,从而可以使系统集群服务正常启动。

解决步骤

1.通过-ResetQuorumLog参数来启动Cluster,以达到初始化quorum.log的目的。

1)打开控制面板,双击“服务”(Service)图标;

2)在服务管理器中找到Cluster service,右键点击“属性”(properties);

3)在启动变量(Start Parameters)空白框中写入-ResetQuorumLog,启动Cluster服务。

2.如果以上方法无法启动Cluster,则通过-NoQuorumLogging参数停止Cluster。

步骤1不能正常启动Cluster服务,说明需要完全重建检查点和quorum.log文件,可以按以下步骤实施:

1)打开控制面板,点击“服务”(Service)图标;

2)在服务管理器中找到Cluster service,右键点击“属性”(properties);

3)在启动变量(Start Parameters)空白框中写入-NoQuorumLogging,启动Cluster服务。

然后,再次用-ResetQuorumLog参数来启动Cluster:

4)打开共享磁盘柜,找到mscs目录,删除它;

5)在服务管理器中找到Cluster service,右键点击“停止”,将Cluster服务停止;

6)在服务管理器中找到Cluster service,右键点击“属性”(properties);

7)在启动变量(Start Parameters)空白框中写入-ResetQuorumLog,再次启动Cluster服务;

8)此时Cluster服务将正常运行,主节点将可成功访问共享资源。

3.若此时集群中第二节点处在故障状态,可采用以下方法来解决。

1)在开始选单的管理工具中打开集群管理器;

2)点击出现故障的节点, 右击“evict”,使故障节点退出集群资源;

3)在第二节点上重新安装Cluster服务,再次加入集群资源。

案例思考

集群的每个节点都在其本地计算机上维护一个集群服务数据库的拷贝。这个拷贝位于%SystemRoot%ClusterClusdb。当集群服务在一个节点上首次启动时,一个集群数据库的更新数据将注册到注册表的一个蜂巢中(HKEY_LOCAL_MACHINECluster)。当重新启动集群服务器时,一个存在的Cluster注册表将被使用。

集群服务将Cluster的注册信息也保存在共享资源的一个文件中。检查点文件位于MscsChkxxx.tmp,每次检查点文件生效,都将把有关信息记录入MscsQuolog.log 文件中,以下四类情况将使Cluster服务产生检查点:

·主节点转移到另一节点上;

·任何节点上的Cluster服务停止;

·Quolog.log文件达到了其最大重置尺寸(在Windows 2000中为64KB);

·在注册表HKEY_LOCAL_MACHINECluster QuorumCheckpointInterval中设定了一个时间间隔,在Windows 2000中设置为4小时,如果在此时间间隔内Cluster没有任何变化时,也会产生一个检查点。

此次集群服务启动失败,关键在于Quolog.log文件被破坏,所以此次修复的关键在于能够读取一个正常的Quolog.log文件。笔者采用的方法是:删除 Mscs目录下的所有文件,然后设置参数-NoQuorumLogging让Cluster重建Quolog.log文件。这种操作有一定的风险,因为此时集群两个节点的状态的任何改变将无法被记录下来,从而也就无法保持两节点的一致性

随着目前Windows 2000 服务器的大量应用,在比较关键性的业务平台上,都使用了基于Windows 2000 Cluster的集群服务器。集群服务器在几乎所有的故障点上都采用了冗余的手段保证系统的可用性。而以下的实例,则是由于Cluster软件的故障造成了无法对共享磁盘柜进行访问,也就从事实上导致了服务的不可用性,这是用冗余手段也难以解决的问题。笔者希望通过对此实例的分析,能带给大家一些解决集群故障的启示。

应用硬件环境为两台服务器与一台RA4100磁盘柜通过光纤HUB组成了一个集群环境。运行软件环境为Microsoft Windows 2000 Advanced Server,使用Windows 2000自带的Cluster软件。

修复共享服务器,集群服务器共享磁盘柜的修复案例相关推荐

  1. Nginx+memcached+tomcat配置集群session共享负载均衡

    Nginx+memcached+tomcat配置集群session共享负载均衡 配置环境: windows xp下 jdk1.7.0_10      nginx-1.2.6  (附下载)      m ...

  2. Windows7 + Nginx + Memcached + Tomcat 集群 session 共享

    一,环境说明 操作系统是Windows7家庭版(有点不专业哦,呵呵!),JDK是1.6的版本, Tomcat是apache-tomcat-6.0.35-windows-x86,下载链接:http:// ...

  3. Redis解决老项目集群Session共享案例与回顾

    老项目突然之间客户要用了而且用户量还不少,后端移动端都需要给升级.第一改进的时候做了移动端与后端的服务分流,这次升级为分布式集群模式.分布式集群模式需要解决Session共享问题和数据一致性分布式锁处 ...

  4. 25000linux集群危机怎么样,我是如何在2小时内组建5000+集群服务器僵尸网络的

    由于Elasticsearch命令执行漏洞,导致上万服务器受影响,截图所有ip无重复.2小时之内顺利在5000多台服务器上执行相关命令. 本次仅是技术测试漏洞影响范围,标题党了.国内测试700台集群服 ...

  5. 服务器查看不到集群信息,集群服务器查看内存

    集群服务器查看内存 内容精选 换一换 用户可以查看在不同云服务区已经申请成功的专属云.进入指定的专属云,还可以查看该专属云内专属计算资源详情及云服务器等专属云内基础服务的实例信息.登录管理控制台.单击 ...

  6. arm云教室服务器_成都凌点科技告诉你ARM集群服务器适合的应用场景有哪些

    1 什么是高密度ARM集群服务器 ARM集群服务器,是在一个机箱内设计N个高性能ARM处理器,每个ARM处理器配置独立的内存及存储,所有的处理器通过高速网络(千兆或万兆网络)进行相互之间以及对外通信的 ...

  7. 集群服务器状态命令------rs.status()各个字段的含义

    可根据rs.status() 查询集群服务器状态. 字段解释: self 这个信息出现在执行rs.status()函数的成员信息中 stateStr用户描述服务器状态的字符串.有SECONDARY,P ...

  8. 在集群服务器进行自定义数据集训练记录过程 TensorBoard logging requires TensorBoard with Python summary writer installed.

    先记录解决办法: TensorBoard logging requires TensorBoard with Python summary writer installed. This should ...

  9. nc 模拟服务器_NC集群服务器使用详解

    NC 集群服务器使用详解 NC220 发版时,对中间件做了一项重大改进,对集群服务器应用提供了全面解决方案 的支持, 使产品更加能够适应集团企业的大规模应用. 本文力争以通俗的语言, 描述集群服 务器 ...

最新文章

  1. css3伪元素选择器before 和 after 的使用
  2. 解决IntelliJ IDEA无法读取配置文件的问题
  3. 简单的MapReduce实践
  4. struts项目部署在Tomca上在断网情况下启动报错
  5. VC“cannot execute program”错误的解决方法
  6. PhpMyAdmin 配置文件现在需要一个短语密码的解决方法
  7. big sur darwin6.iso下载_苹果macOS Big Sur 11.0 正式版系统适配机型 附升级教程和系统镜像下载...
  8. ASP.NET之JSONHelper操作
  9. 屏幕分辨率标准与电视制式
  10. python oop 实践_Python OOP示例?
  11. c语言 称重系统设计,基于L—PSIII的电子称重系统的设计
  12. html播放mp4不显示画面,浏览器播放mp4格式视频时只有声音看不到画面的原因及解决方法(精)...
  13. 2021有效的电子邮箱号码大全,外贸企业邮箱地址大全
  14. DOS中goto eof的作用
  15. Python变量赋值方法
  16. Redis-Java客户端
  17. A7139射频模块wor配置解析
  18. PDF矢量图片转为EPS格式图片的方法
  19. DLL的远程注入技术详解
  20. 【内存】物理内存和虚拟内存

热门文章

  1. 苹果手机充电口接触不良怎么办_手机充电插口松动!声音变小!手机死机!怎么办?...
  2. sojson JS 逆向二 (免费版)
  3. uni-app学习笔记之判断当前用户是否拥有某角色和权限
  4. 破解EXCEL工作表保护密码
  5. 如何在GitHub上建立一个自己的网站
  6. ug900-vivado-logic-simulation中文文档 | Xilinx
  7. 高清视频文件丢了怎么恢复丨电脑下载好的缓存数据
  8. hdu4417 Super Mario(树状数组+离线区间操作)
  9. 用友t6服务器端操作系统,用友t6远程服务器
  10. R 语言 apply 系列函数