RHCS群集

RHCS群集
RHCS群集

红帽群集

1、什么是RHCS?

RHCS是Red Hat Cluster Suite的缩写,也就是红帽子集群套件,RHCS是一个能够提供高可用性、高可靠性、负载均衡、存储共享且经济廉价的集群工具集合,它将集群系统中三大集群架构融合一体,可以给web应用、数据库应用等提供安全、稳定的运行环境。

更确切的说,RHCS是一个功能完备的集群应用解决方案,它从应用的前端访问到后端的数据存储都提供了一个行之有效的集群架构实现,通过RHCS提供的这种解决方案,不但能保证前端应用持久、稳定的提供服务,同时也保证了后端数据存储的安全。

RHCS提供了集群系统中三种集群构架,分别是高可用性集群、负载均衡集群、存储集群。

2、RHCS提供的三个核心功能

高可用集群是RHCS的核心功能。当应用程序出现故障,或者系统硬件、网络出现故障时,应用可以通过RHCS提供的高可用性服务管理组件自动、快速从一个节点切换到另一个节点,节点故障转移功能对客户端来说是透明的,从而保证应用持续、不间断的对外提供服务,这就是RHCS高可用集群实现的功能。

RHCS通过LVS(Linux Virtual Server)来提供负载均衡集群,而LVS是一个开源的、功能强大的基于IP的负载均衡技术,LVS由负载调度器和服务访问节点组成,通过LVS的负载调度功能,可以将客户端请求平均的分配到各个服务节点,同时,还可以定义多种负载分配策略,当一个请求进来时,集群系统根据调度算法来判断应该将请求分配到哪个服务节点,然后,由分配到的节点响应客户端请求,同时,LVS还提供了服务节点故障转移功能,也就是当某个服务节点不能提供服务时,LVS会自动屏蔽这个故障节点,接着将失败节点从集群中剔除,同时将新来此节点的请求平滑的转移到其它正常节点上来;而当此故障节点恢复正常后,LVS又会自动将此节点加入到集群中去。而这一系列切换动作,对用户来说,都是透明的,通过故障转移功能,保证了服务的不间断、稳定运行。

RHCS通过GFS文件系统来提供存储集群功能,GFS是Global File System的缩写,它允许多个服务同时去读写一个单一的共享文件系统,存储集群通过将共享数据放到一个共享文件系统中从而消除了在应用程序间同步数据的麻烦,GFS是一个分布式文件系统,它通过锁管理机制,来协调和管理多个服务节点对同一个文件系统的读写操作。

3、RHCS集群的组成

RHCS是一个集群工具的集合,主要有下面几大部分组成:

集群构架管理器

这是RHCS集群的一个基础套件,提供一个集群的基本功能,使各个节点组成集群在一起工作,具体包含分布式集群管理器(CMAN)、成员关系管理、锁管理(DLM)、配置文件管理(CCS)、栅设备(FENCE)。

高可用服务管理器

提供节点服务监控和服务故障转移功能,当一个节点服务出现故障时,将服务转移到另一个健康节点。

集群配置管理工具

RHCS最新版本通过LUCI来配置和管理RHCS集群,LUCI是一个基于web的集群配置方式,通过luci可以轻松的搭建一个功能强大的集群系统。

Linux Virtual Server

LVS是一个开源的负载均衡软件,利用LVS可以将客户端的请求根据指定的负载策略

和算法合理的分配到各个服务节点,实现动态、智能的负载分担。

4、RHCS集群结构

RHCS集群从整体上分为三大部分,

?负载均衡集群

?高可用性集群

?存储集群,

右边是典型的RHCS集群拓扑结构:

整个拓扑结构分为三个层面:

最上层是LVS负载均衡层,

中间一层是Real Server层,就是服务节点部分

最后一层是共享存储层,

主要用于给GFS文件系统提供共享存储空间

5、RHCS集群运行原理及功能介绍

(1)分布式集群管理器(CMAN)

Cluster Manager,简称CMAN,是一个分布式集群管理工具,它运行在集群的各个节点上,为RHCS提供集群管理任务。

CMAN用于管理集群成员、消息和通知。它通过监控每个节点的运行状态来了解节点成员之间的关系,当集群中某个节点出现故障,节点成员关系将发生改变,CMAN及时将这种改变通知底层,进而做出相应的调整。

(2)锁管理(DLM)

Distributed Lock Manager,简称DLM,表示一个分布式锁管理器,它是RHCS的一个底层基础构件,同时也为集群提供了一个公用的锁运行机制,在RHCS集群系统中,DLM 运行在集群的每个节点上,GFS通过锁管理器的锁机制来同步访问文件系统元数据。CLVM 通过锁管理器来同步更新数据到LVM卷和卷组。

DLM不需要设定锁管理服务器,它采用对等的锁管理方式,大大的提高了处理性能。同时,DLM避免了当单个节点失败需要整体恢复的性能瓶颈,另外,DLM的请求都是本地的,不需要网络请求,因而请求会立即生效。最后,DLM通过分层机制,可以实现多个锁空间的并行锁模式。

(3)配置文件管理(CCS)

Cluster Configuration System,简称CCS,主要用于集群配置文件管理和配置文件在节点之间的同步。CCS运行在集群的每个节点上,监控每个集群节点上的单一配置文件/etc/cluster/cluster.conf的状态,当这个文件发生任何变化时,都将此变化更新到集群中的每个节点,时刻保持每个节点的配置文件同步。例如,管理员在节点A上更新了集群配置文件,CCS发现A节点的配置文件发生变化后,马上将此变化传播到其它节点上去。

rhcs的配置文件是cluster.conf,它是一个xml文件,具体包含集群名称、集群节点信息、集群资源和服务信息、fence设备等,这个会在后面讲述。

(4)栅设备(FENCE)

FENCE设备是RHCS集群中必不可少的一个组成部分,通过FENCE设备可以避免因出现不可预知的情况而造成的“脑裂”现象,FENCE设备的出现,就是为了解决类似这些问题,Fence设备主要就是通过服务器或存储本身的硬件管理接口,或者外部电源管理设备,来对服务器或存储直接发出硬件管理指令,将服务器重启或关机,或者与网络断开连接。

FENCE的工作原理是:当意外原因导致主机异常或者宕机时,备机会首先调用FENCE 设备,然后通过FENCE设备将异常主机重启或者从网络隔离,当FENCE操作成功执行后,返回信息给备机,备机在接到FENCE成功的信息后,开始接管主机的服务和资源。这样通过FENCE设备,将异常节点占据的资源进行了释放,保证了资源和服务始终运行在一个节点上。

RHCS的FENCE设备可以分为两种:内部FENCE和外部FENCE,常用的内部FENCE 有IBM RSAII卡,HP的iLO卡,还有IPMI的设备等,外部fence设备有UPS、SAN SWITCH、NETWORK SWITCH等

(5)高可用服务管理器

高可用性服务管理主要用来监督、启动和停止集群的应用、服务和资源。它提供了一种对集群服务的管理能力,当一个节点的服务失败时,高可用性集群服务管理进程可以将服务从这个失败节点转移到其它健康节点上来,并且这种服务转移能力是自动、透明的。

RHCS通过rgmanager来管理集群服务,rgmanager运行在每个集群节点上,在服务器上对应的进程为clurgmgrd。

在一个RHCS集群中,高可用性服务包含集群服务和集群资源两个方面,集群服务其实就是应用服务,例如apache、mysql等,集群资源有很多种,例如一个IP地址、一个运行脚本、ext3/GFS文件系统等。

在RHCS集群中,高可用性服务是和一个失败转移域结合在一起的,所谓失败转移域是一个运行特定服务的集群节点的集合。在失败转移域中,可以给每个节点设置相应的优先

级,通过优先级的高低来决定节点失败时服务转移的先后顺序,如果没有给节点指定优先级,那么集群高可用服务将在任意节点间转移。因此,通过创建失败转移域不但可以设定服务在节点间转移的顺序,而且可以限制某个服务仅在失败转移域指定的节点内进行切换。

(6)集群配置管理工具

RHCS提供了多种集群配置和管理工具,常用的有基于GUI的system-config-cluster、Conga等,也提供了基于命令行的管理工具。

system-config-cluster是一个用于创建集群和配置集群节点的图形化管理工具,它有集群节点配置和集群管理两个部分组成,分别用于创建集群节点配置文件和维护节点运行状态。一般用在RHCS早期的版本中。

Conga是一种新的基于网络的集群配置工具,与system-config-cluster不同的是,Conga 是通过web方式来配置和管理集群节点的。Conga有两部分组成,分别是luci和ricci,luci 安装在一台独立的计算机上,用于配置和管理集群,ricci安装在每个集群节点上,Luci通过ricci和集群中的每个节点进行通信。

RHCS也提供了一些功能强大的集群命令行管理工具,常用的有clustat、cman_tool、ccs_tool、fence_tool、clusvcadm等,这些命令的用法将在下面讲述。

(7)Redhat GFS

GFS是RHCS为集群系统提供的一个存储解决方案,它允许集群多个节点在块级别上共享存储,每个节点通过共享一个存储空间,保证了访问数据的一致性,更切实的说,GFS 是RHCS提供的一个集群文件系统,多个节点同时挂载一个文件系统分区,而文件系统数据不受破坏,这是单一的文件系统,例如EXT3、EXT2所不能做到的。

为了实现多个节点对于一个文件系统同时读写操作,GFS使用锁管理器来管理I/O操作,当一个写进程操作一个文件时,这个文件就被锁定,此时不允许其它进程进行读写操作,直到这个写进程正常完成才释放锁,只有当锁被释放后,其它读写进程才能对这个文件进行操作,另外,当一个节点在GFS文件系统上修改数据后,这种修改操作会通过RHCS底层通信机制立即在其它节点上可见。

在搭建RHCS集群时,GFS一般作为共享存储,运行在每个节点上,并且可以通过RHCS 管理工具对GFS进行配置和管理。这些需要说明的是RHCS和GFS之间的关系,一般初学者很容易混淆这个概念:运行RHCS,GFS不是必须的,只有在需要共享存储时,才需要GFS支持,而搭建GFS集群文件系统,必须要有RHCS的底层支持,所以安装GFS文件系统的节点,必须安装RHCS组件。

安装RHCS集群

1、安装环境介绍

这个实例要介绍的是web+mysql集群的构建,整个RHCS集群共有四台服务器组成,分别由两台主机搭建web集群,两台主机搭建mysql集群,在这种集群构架下,任何一台web服务器故障,都有另一台web服务器进行服务接管,同时,任何一台mysql服务器故障,也有另一台mysql服务器去接管服务,保证了整个应用系统服务的不间断运行。

2、安装前准备工作

Centos是RHEL的克隆版本,并且RHCS所有功能组件都免费提供,因此下面的讲述以Centos为准。

操作系统:统一采用Centos5.3版本。为了方便安装RHCS套件,在安装操作系统时,建议选择如下这些安装包:

λ桌面环境:xwindows system、GNOME desktop environment。

λ开发工具:development tools、x software development、gnome software development、kde software development。

地址规划如下:

iSCSI-target的安装与使用已经在前面课程做个讲解,不再讲述,这里假定共享的磁盘是/dev/sdb。

3、安装Luci

Luci是RHCS基于web的集群配置管理工具,可以从系统光盘找到对应的Luci安装包,安装如下:

[root@storgae-server ~]#rpm -ivh luci-0.12.2-12.el5.centos.1.i386.rpm

安装完成,执行luci初始化操作:

[root@storgae-server ~]#luci_admin init

Initializing the Luci server

Creating the 'admin' user

Enter password:

Confirm password:

Please wait...

The admin password has been successfully set.

Generating SSL certificates...

Luci server has been successfully initialized

输入两次密码后,就创建了一个默认登录luci的用户admin。

最后,启动luci服务即可:

[root@storgae-server ~]# /etc/init.d/luci start

服务成功启动后,就可以通过https://ip:8084访问luci了。

为了能让luci访问集群其它节点,还需要在/etc/hosts增加如下内容:

192.168.12.231 Mysql1

192.168.12.232 Mysql2

192.168.12.230 web1

192.168.12.240 web2

到这里为止,在storgae-server主机上的设置完成。

4、在集群节点安装RHCS软件包

为了保证集群每个节点间可以互相通信,需要将每个节点的主机名信息加入/etc/hosts 文件中,修改完成的/etc/hosts文件内容如下:

127.0.0.1 localhost

192.168.12.230 web1

192.168.12.240 web2

192.168.12.231 Mysql1

192.168.12.232 Mysql2

将此文件依次复制到集群每个节点的/etc/hosts文件中。

RHCS软件包的安装有两种方式,可以通过luci管理界面,在创建Cluster时,通过在线下载方式自动安装,也可以直接从操作系统光盘找到所需软件包进行手动安装,由于在线安装方式受网络和速度的影响,不建议采用,这里通过手动方式来安装RHCS软件包。

安装RHCS,主要安装的组件包有cman、gfs2和rgmanager,当然在安装这些软件包时可能需要其它依赖的系统包,只需按照提示进行安装即可,下面是一个安装清单,在集群的四个节点分别执行:

#install cman

rpm -ivh perl-XML-NamespaceSupport-1.09-1.2.1.noarch.rpm

rpm -ivh perl-XML-SAX-0.14-8.noarch.rpm

rpm -ivh perl-XML-LibXML-Common-0.13-8.2.2.i386.rpm

rpm -ivh perl-XML-LibXML-1.58-6.i386.rpm

rpm -ivh perl-Net-Telnet-3.03-5.noarch.rpm

rpm -ivh pexpect-2.3-3.el5.noarch.rpm

rpm -ivh openais-0.80.6-16.el5_5.2.i386.rpm

rpm -ivh cman-2.0.115-34.el5.i386.rpm

#install ricci

rpm -ivh modcluster-0.12.1-2.el5.centos.i386.rpm

rpm -ivh ricci-0.12.2-12.el5.centos.1.i386.rpm

#install gfs2

rpm -ivh gfs2-utils-0.1.62-20.el5.i386.rpm

#install rgmanager

rpm -ivh rgmanager-2.0.52-6.el5.centos.i386.rpm

5、在集群节点安装配置iSCSI客户端

安装iSCSI客户端是为了和iSCSI-target服务端进行通信,进而将共享磁盘导入到各个集群节点,这里以集群节点web1为例,介绍如何安装和配置iSCSI,剩余其它节点的安装和配置方式与web1节点完全相同。

iSCSI客户端的安装和配置非常简单,只需如下几个步骤即可完成:

[root@web1 rhcs]# rpm -ivh iscsi-initiator-utils-6.2.0.871-0.16.el5.i386.rpm

[root@web1 rhcs]# /etc/init.d/iscsi restart

[root@web1 rhcs]# iscsiadm -m discovery -t sendtargets -p 192.168.12.246

[root@web1 rhcs]# /etc/init.d/iscsi restart

[root@web1 rhcs]# fdisk -l

Disk /dev/sdb: 10.7 GB, 10737418240 bytes

64 heads, 32 sectors/track, 10240 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Disk /dev/sdb doesn't contain a valid partition table

通过fdisk的输出可知,/dev/sdb就是从iSCSI-target共享过来的磁盘分区。

至此,安装工作全部结束。

配置RHCS集群

1、配置RHCS高可用集群

配置RHCS,其核心就是配置/etc/cluster/cluster.conf文件,下面通过web管理界面和命令行操作两种方法介绍如何构造一个cluster.conf文件。

在storgae-server主机上启动luci服务,然后通过浏览器访问https://192.168.12.246:8084/,就可以打开luci登录界面,详细配置过程,参看演示:

2、配置存储集群GFS

在上面章节中,我们已经通过storgae-server主机将一个磁盘分区共享给了集群系统的四个节点,接下来将进行磁盘分区、格式化、创建文件系统等操作。

(1)对磁盘进行分区

可以在集群系统任意节点对共享磁盘分区进行磁盘的分区和格式化,这里选择在节点web1上进行,首先对共享磁盘进行分区,操作如下:

[root@web1 ~]# fdisk /dev/sdb

这里将共享磁盘分为三个有效分区,分别将/dev/sdb5用于GFS文件系统,将/dev/sdb6用于ext3文件系统,而将/dev/sdb7用于表决磁盘,关于表决磁盘,下面马上会进行讲述。(2)格式化磁盘

接下来,在web1节点将磁盘分区分别格式化为ext3和gfs2文件系统,操作如下:

[root@web1 ~]# mkfs.ext3 /dev/sdb6

[root@web1 ~]# mkfs.gfs2 -p lock_dlm -t mycluster:my-gfs2 -j 4 /dev/sdb5

(2)格式化磁盘

其中:

λ-p lock_dlm

定义为DLM锁方式,如果不加此参数,当在两个系统中同时挂载此分区时就会像EXT3格式一样,两个系统的信息不能同步。

λ-t mycluster:my-gfs2

指定DLM锁所在的表名称,mycluster就是RHCS集群的名称,必须与cluster.conf文件中Cluster标签的name值相同。

λ-j 5

设定GFS2文件系统最多支持多少个节点同时挂载,这个值可以通gfs2_jadd命令在使用中动态调整。

/dev/sdb5

指定要格式化的分区设备标识。

所有操作完成后,重启集群所有节点,保证划分的磁盘分区能够被所有节点识别。

(3)挂载磁盘

所有节点重新启动后,就可以挂载文件系统了,依次在集群的每个节点执行如下操作,将共享文件系统挂载到/gfs2目录下:

[root@web1 ~]#mount -t gfs2 /dev/sdb5 /gfs2 –v

/sbin/mount.gfs2: mount /dev/sdb5 /gfs2

/sbin/mount.gfs2: parse_opts: opts = "rw"

/sbin/mount.gfs2: clear flag 1 for "rw", flags = 0

/sbin/mount.gfs2: parse_opts: flags = 0

/sbin/mount.gfs2: write "join /gfs2 gfs2 lock_dlm mycluster:my-gfs2 rw /dev/sdb5"

//sbin/mount.gfs2: mount(2) ok

/sbin/mount.gfs2: lock_dlm_mount_result: write "mount_result /gfs2 gfs2 0"

/sbin/mount.gfs2: read_proc_mounts: device = "/dev/sdb5"

/sbin/mount.gfs2: read_proc_mounts: opts = "rw,hostdata=jid=3:id=65540:first=0“通过“-v”参数可以输出挂载gfs2文件系统的过程,有助于理解gfs2文件系统和问题排查。

为了能让共享文件系统开机自动挂载磁盘,将下面内容添加到每个集群节点的/etc/fstab 文件中。

#GFS MOUNT POINTS

/dev/sdb5 /gfs2 gfs2 defaults 1 1

3、配置表决磁盘

(1)使用表决磁盘的必要性

在一个多节点的RHCS集群系统中,一个节点失败后,集群的服务和资源可以自动转移到其它节点上,但是这种转移是有条件的,例如,在一个四节点的集群中,一旦有两个节点发生故障,整个集群系统将会挂起,集群服务也随即停止,而如果配置了存储集群GFS 文件系统,那么只要有一个节点发生故障,所有节点挂载的GFS文件系统将hung住。此时共享存储将无法使用,这种情况的出现,对于高可用的集群系统来说是绝对不允许的,解决这种问题就要通过表决磁盘来实现了。

(2)表决磁盘运行机制

表决磁盘,即Quorum Disk,在RHCS里简称qdisk,是基于磁盘的Cluster仲裁服务程序,为了解决小规模集群中投票问题,RHCS引入了Quorum机制机制,Quorum表示集群法定的节点数,和Quorum对应的是Quorate,Quorate是一种状态,表示达到法定节点数。在正常状态下,Quorum的值是每个节点投票值再加上QDisk分区的投票值之和。

QDisk是一个小于10MB的共享磁盘分区,Qdiskd进程运行在集群的所有节点上,通过Qdiskd进程,集群节点定期评估自身的健康情况,并且把自身的状态信息写到指定的共享磁盘分区中,同时Qdiskd还可以查看其它节点的状态信息,并传递信息给其它节点。(3)RHCS中表决磁盘的概念

和qdisk相关的几个工具有mkdisk、Heuristics。

mkdisk是一个集群仲裁磁盘工具集,可以用来创建一个qdisk共享磁盘也可以查看共享磁盘的状态信息。mkqdisk操作只能创建16个节点的投票空间,因此目前qdisk最多可以支持16个节点的RHCS高可用集群。

有时候仅靠检测Qdisk分区来判断节点状态还是不够的,还可以通过应用程序来扩展对

节点状态检测的精度,Heuristics就是这么一个扩充选项,它允许通过第三方应用程序来辅助定位节点状态,常用的有ping网关或路由,或者通过脚本程序等,如果试探失败,qdiskd 会认为此节点失败,进而试图重启此节点,以使节点进入正常状态。

(4)创建一个表决磁盘

在上面章节中,已经划分了多个共享磁盘分区,这里将共享磁盘分区/dev/sdb7作为qdisk 分区,下面是创建一个qdisk分区:

[root@web1 ~]# mkqdisk -c /dev/sdb7 -l myqdisk

[root@web1 ~]# mkqdisk –L #查看表决磁盘信息

(5)配置Qdisk

这里通过Conga的web界面来配置Qdisk,具体参看演示。

(6)启动Qdisk服务

在集群每个节点执行如下命令,启动qdiskd服务:

[root@web1 ~]# /etc/init.d/qdiskd start

qdiskd启动后,如果配置正确,qdisk磁盘将自动进入online状态:

[root@web1 ~]# clustat -l

Cluster Status for mycluster @ Sat Aug 21 01:25:40 2010

Member Status: Quorate

Member Name ID Status

------ ---- ---- ------

Web 1 Online, rgmanager

Mysql1 2 Online, rgmanager

Mysql2 3 Online, rgmanager

web1 4 Online, Local, rgmanager

/dev/sdb7 0 Online, Quorum Disk

至此,Qdisk已经运行起来了。

4、配置Fence设备

配置Fence设备是RHCS集群系统中必不可少的一个环节,通过Fence设备可以防止集群资源(例如文件系统)同时被多个节点占有,保护了共享数据的安全性和一致性节,同时也可以防止节点间脑裂的发生。

GFS是基于集群底层架构来传递锁信息的,或者说是基于RHCS的一种集群文件系统,因此使用GFS文件系统也必须要有fence设备。

RHCS提供的fence device有两种,一种是内部fence设备。常见的有:

IBM服务器提供的RSAII卡

HP服务器提供的iLO卡

DELL服务器提供的DRAC卡

智能平台管理接口IPMI

常见的外部fence设备有:

UPS

SAN SWITCH,

NETWORK SWITCH

另外如果共享存储是通过GNBD Server实现的,那么还可以使用GNBD的fence功能。具体过程看演示:

管理和维护RHCS集群系统

1、启动RHCS集群

RHCS集群的核心进程有cman和rgmanager,要启动集群,依次在集群的每个节点执行如下命令即可:

service cman start

service rgmanager start

需要注意的是,执行这两个命令是有先后顺序的,需要首先启动cman,然后在启动rgmanager。在集群所有节点成功启动cman服务后,然后继续依次在每个节点启动rgmanager 服务。

2、关闭RHCS集群

与启动集群服务刚好相反,关闭RHCS集群的命令为:

service rgmanager stop

service cman stop

首先在集群的每个节点依次关闭rgmanager服务,等待所有节点的rgmanager服务成功关闭后,再依次关闭每个节点的cman服务即可完成真个集群服务的关闭。

有时在关闭cman服务时,可能会提示关闭失败,此时可以检查本机的共享存储GFS2文件系统是否已经卸载,还可以检查其它节点的rgmanager服务是否都已经正常关闭。

3、管理应用服务

集群系统启动后,默认是自动启动应用服务的,但是如果某个应用服务没有自动启动,就需要通过手工方式来启动。管理应用服务的命令是clusvcadm,通过这个命令可以启动、关闭、重启、切换集群中的应用服务。

(1)启动某个应用服务

可以通过如下方式启动某个节点的应用服务:

clusvcadm -e -m

其中:

λService:表示集群中创建的应用服务名称。

λNode:表示集群节点名称。

例如,要启动节点web1上的webserver服务,操作如下:

[root@web1 ~]# clusvcadm -e webserver -m web1

Member web1 trying to enable service:webserver...Success

service:webserver is now running on web1

可以通过/var/log/messages文件查看启动应用服务的详细信息。当webserver启动后,与服务相关的集群资源:如虚拟IP、应用程序服务脚本也随之启动,可以通过如下命令查看集群资源是否已经正常加载:

(2)关闭某个应用服务

可以通过如下方式关闭某个节点的应用服务:

clusvcadm -s -m

例如,要关闭节点Mysql1上的mysqlserver服务,操作如下:

[root@Mysql1 ~]# clusvcadm -s mysqlserver -m Mysql1

Member Mysql1 stopping service:mysqlserver...Success

可以通过/var/log/messages文件查看关闭应用服务的详细信息。当mysqlserver关闭后,与服务相关的集群资源:如虚拟IP、应用程序服务脚本也随之释放。

(3)重启某个应用服务

可以通过如下方式重启某个节点的应用服务:

clusvcadm -R -m

例如,要重启节点web1上的webserver服务,操作如下:

[root@web2 ~]# clusvcadm -R webserver -m web1

Member web1 trying to restart service:webserver...Success

这个命令是在web2节点上执行的,但是也能成功将web1节点上的webserver进行重启,由此可知,clusvcadm命令在集群任意节点执行都是可以的。

(4)切换某个服务

可以通过如下方式将一个应用服务从一个节点切换到另一个节点:

clusvcadm -r -m

例如,要将节点web1的服务切换到节点web2上,操作如下:

[root@web1 ~]# clusvcadm -r webserver -m web2

Trying to relocate service:webserver to web2...Success

service:webserver is now running on web2

4、监控RHCS集群状态

通过对RHCS的监控,有助于了解集群每个节点的健康状况,并能发现问题,及时解决问题,RHCS集群提供了丰富的状态查看命令,这里主要介绍下cman_tool、clustat、ccs_tool 的使用方法。

(1)cman_tool命令

cman_tool的参数比较多,但是用法比较简单,基本用法格式为:

cman_tool [options] 下面列举几个简单的使用例子:

[root@web1 ~]# cman_tool nodes -a

Node Sts Inc Joined Name

0 M 0 2010-08-23 01:24:00 /dev/sdb7

1 M 249

2 2010-08-2

3 01:22:43 web2

Addresses: 192.168.12.240

2 M 2492 2010-08-2

3 01:22:43 Mysql1

Addresses: 192.168.12.231

3 M 2492 2010-08-23 01:22:43 Mysql2

Addresses: 192.168.12.232

4 M 2488 2010-08-23 01:22:43 web1

Addresses: 192.168.12.230

此命令显示了节点名称,以及对应的节点IP地址和加入集群的时间。

如果要了解更多集群节点信息,可以通过如下命令:

[root@web1 ~]# cman_tool status

Version: 6.2.0

Config Version: 35 #集群配置文件版本号

Cluster Name: mycluster #集群名称

Cluster Id: 56756

Cluster Member: Yes

Cluster Generation: 2764

Membership state: Cluster-Member

Nodes: 4 #集群节点数

Expected votes: 6 #期望的投票数

Quorum device votes: 2 #表决磁盘投票值

Total votes: 6 #集群中所有投票值大小

Quorum: 4 #集群法定投票值,低于这个值,集群将停止服务

Active subsystems: 9

Flags: Dirty

Ports Bound: 0 177

Node name: web1

Node ID: 4 #本节点在集群中的ID号

Multicast addresses: 239.192.221.146 #集群广播地址

Node addresses: 192.168.12.230 #本节点对应的IP地址

(2)clustat命令

clustat命令使用非常简单,详细的使用方法可以通过“clustat -h”获取帮助信息,这里仅仅列举几个例子。

[root@web1 ~]#clustat -i 3

Cluster Status for mycluster @ Mon Aug 23 18:54:15 2010

Member Status: Quorate

Member Name ID Status

------ ---- ---- ------

web2 1 Online, rgmanager

Mysql1 2 Online, rgmanager

Mysql2 3 Online, rgmanager

web1 4 Online, Local, rgmanager

/dev/sdb7 0 Online, Quorum Disk

Service Name Owner (Last) State

------- ---- ----- ------ --------

service:mysqlserver Mysql1 started

service:webserver web1 started

(2)clustat命令

对输出内容含义如下:

clustat的“-i”参数可以实时的显示集群系统中每个节点以及服务的运行状态,“-i 3”表示每三秒刷新一次集群状态。

在这个输出中,可以看到每个节点都处于“Online”状态,表明每个节点都运行正常,如果某个节点退出了集群,对应的状态应该是“Offline”,同时还可以看到,集群的两个服务也处于“started”状态,分别运行在Mysql1节点和web1节点。

另外,通过“ID”一列可以知道集群节点的对应关系,例如,web2在此集群中对应的就是“Node 1”节点,同理,web1对应的是“Node 4”节点。了解集群节点顺序有助于对集群日志的解读。

(3)ccs_tool命令

ccs_tool主要用来管理集群配置文件cluster.conf,通过ccs_tool可以在集群中增加/删除节点、增加/删除fence设备、更新集群配置文件等操作。

下面是ccs_tool的几个应用实例:

当在一个节点修改完配置文件后,可以执行“ccs_tool update”指令将配置文件在所有节点进行更新,例如:

[root@web1 cluster]# ccs_tool update /etc/cluster/cluster.conf

Proposed updated config file does not have greater version number.

Current config_version :: 35

Proposed config_version:: 35

Failed to update config file.

ccs_tool是根据cluster.conf中的“config_version”值来决定是否进行更新的,因此在修改完cluster.conf文件后,一定要将cluster.conf的config_version值进行更新,这样执行ccs_tool 时才能更新配置文件。

[root@web1 cluster]# ccs_tool update /etc/cluster/cluster.conf

Config file updated from version 35 to 36

Update complete.

5、管理和维护GFS2文件系统

GFS2文件系统提供了很多管理和维护工具,常用的有gfs2_fsck、gfs2_tool、gfs2_jadd、gfs2_quota、gfs2_convert等,这里重点介绍前三个命令的用法。

(1)gfs2_fsck命令

类似与ext3文件系统下的fsck.ext3命令,主要用于检测和修复文件系统错误。其实GFS2还有一个fsck.gfs2命令,此命令与gfs2_fsck命令完全一致。

gfs2_fsck的用法如下:

gfs2_fsck [-afhnpqvVy]

下面列举几个使用例子:

[root@Mysql1 ~]# gfs2_fsck -y /dev/sdb5

Initializing fsck

Validating Resource Group index.

Level 1 RG check.

(level 1 passed)

Starting pass1

Starting pass1c

Pass1c complete

…………

Pass5 complete

gfs2_fsck complete

(2)gfs2_tool命令

gfs2_tool命令参数较多,但使用并不复杂,它主要用来查看、修改GFS2文件系统的相关参数信息。

下面列举几个使用例子:

1)查看GFS2文件系统挂载信息

[root@web1 ~]# gfs2_tool df /gfs2

/gfs2:

SB lock proto = "lock_dlm"

SB lock table = "mycluster:my-gfs2"

SB ondisk format = 1801

SB multihost format = 1900

Block size = 4096

Journals = 4

Resource Groups = 19

Mounted lock proto = "lock_dlm"

Mounted lock table = "mycluster:my-gfs2"

Mounted host data = "jid=2:id=65539:first=0"

Journal number = 2

Lock module flags = 0

Local flocks = FALSE

Local caching = FALSE

Type Total Blocks Used Blocks Free Blocks use%

--------------- ----------------- ------------- ---------------- -----------

data 1220724 136578 1084146 11%

inodes 1084263 117 1084146 0%

(2)gfs2_tool命令

2)锁定与解锁GFS2文件系统:

[root@node1 gfs2]# gfs2_tool freeze /gfs2

[root@node1 gfs2]# gfs2_tool unfreeze /gfs2

GFS2文件系统被锁定后,无法进行读写操作,直到被解锁。

3)查询GFS2可挂载的接点数

[root@web1 ~]# gfs2_tool journals /gfs2

journal2 - 128MB

journal3 - 128MB

journal1 - 128MB

journal0 - 128MB

4 journal(s) found.

这里显示了可挂载节点数为4,并且每个journal的大小为128M。

4)显示GFS2的版本信息:

[root@web1 ~]# gfs2_tool version

gfs2_tool 0.1.62 (built Mar 31 2010 07:34:25)

Copyright (C) Red Hat, Inc. 2004-2006 All rights reserved

(3)gfs2-jadd命令

gfs2-jadd主要用来配置GFS2的Journals数量和大小,用法非常简单:

gfs2_jadd [-cDhJjqV] /path/to/filesystem

下面列举几个用例:

设置Journals的大小为64M

[root@Mysql1 ~]# gfs2_jadd -J 64M

将GFS2可同时挂载的节点数目增加到5个

[root@Mysql1 ~]# gfs2_jadd -j 5 /gfs2

另外,另外gfs2_quota用于GFS2文件系统磁盘配额管理,gfs2_convert是一个数据转换应用程序,它可以对GFS文件系统的元数据进行更新,把它转换为一个GFS2文件系统。要深入了解它们的使用,请参考帮助信息,这里不在进行讲述。

测试RHCS集群功能

1、高可用集群测试

集群配置完成后,如何知道集群已经配置成功了呢,下面我们就分四种情况介绍当节点发生宕机时,集群是如何进行切换和工作的。

(1)任意节点中集群资源故障

这里以web1节点为例,停掉web1中apache服务或者挂载的分区,然后观察节点web2的日志信息,输出如下:

Apr 7 05:20:22 web2 clurgmgrd[8944]: Recovering failed service service:webserver Apr 7 05:20:24 web2 kernel: kjournald starting. Commit interval 5 seconds

Apr 7 05:20:24 web2 kernel: EXT3 FS on sdb6, internal journal

Apr 7 05:20:24 web2 kernel: EXT3-fs: mounted filesystem with ordered data mode.

Apr 7 05:20:27 web2 avahi-daemon[8753]: Registering new address record for 192.168.12.233 on eth0.

Apr 7 05:20:28 web2 in.rdiscd[21219]: setsockopt (IP_ADD_MEMBERSHIP): Address already in use

Apr 7 05:20:28 web2 in.rdiscd[21219]: Failed joining addresses

Apr 7 05:20:29 web2 clurgmgrd[8944]: Service service:webserver started

接着在web1节点重启rgmanager服务,然后再次查看节点web2的日志信息,输出如下:Apr 7 05:25:48 web2 clurgmgrd[8944]: Member 4 shutting down

Apr 7 05:25:53 web2 clurgmgrd[8944]: Relocating service:webserver to better node web1

Apr 7 05:25:53 web2 clurgmgrd[8944]: Stopping service service:webserver

Apr 7 05:25:54 web2 avahi-daemon[8753]: Withdrawing address record for 192.168.12.233 on eth0.

Apr 7 05:26:04 web2 clurgmgrd[8944]: Service service:webserver is stopped

此时,查看web1节点的日志信息,输出如下:

Mar 7 21:39:22 web1 clurgmgrd[12447]: Starting stopped service service:webserver Mar 7 21:39:23 web1 kernel: kjournald starting. Commit interval 5 seconds

Mar 7 21:39:23 web1 kernel: EXT3 FS on sdb6, internal journal

Mar 7 21:39:23 web1 kernel: EXT3-fs: mounted filesystem with ordered data mode.

Mar 7 21:39:25 web1 avahi-daemon[3578]: Registering new address record for 192.168.12.233 on eth0.

Mar 7 21:39:26 web1 clurgmgrd[12447]: Service service:webserver started

(2)节点web2宕机时

宕机分为正常关机和异常宕机两种情况,下面分别说明。

1)节点web2正常关机

在节点web2上执行正常关机命令:

[root@web2 ~]#init 0

然后在web1节点查看/var/log/messages日志,输出信息如下:

Mar 7 21:46:51 web1 clurgmgrd[12447]: Member 1 shutting down

Mar 7 21:46:59 web1 qdiskd[3109]: Node 1 shutdown

Mar 7 21:47:11 web1 openais[3076]: [TOTEM] The token was lost in the OPERATIONAL state.

Mar 7 21:47:31 web1 openais[3076]: [TOTEM] position [2] member 192.168.12.232:

Mar 7 21:47:31 web1 openais[3076]: [TOTEM] previous ring seq 3652 rep 192.168.12.230 Mar 7 21:47:32 web1 kernel: dlm: closing connection to node 1

Mar 7 21:47:32 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.230)

Mar 7 21:47:32 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.231)

Mar 7 21:47:32 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.232)

Mar 7 21:47:32 web1 openais[3076]: [CLM ] Members Left:

Mar 7 21:47:32 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.240)

Mar 7 21:47:32 web1 openais[3076]: [CLM ] got nodejoin message 192.168.12.230

Mar 7 21:47:32 web1 openais[3076]: [CLM ] got nodejoin message 192.168.12.231

Mar 7 21:47:32 web1 openais[3076]: [CLM ] got nodejoin message 192.168.12.232

Mar 7 21:47:32 web1 openais[3076]: [CPG ] got joinlist message from node 2

Mar 7 21:47:32 web1 openais[3076]: [CPG ] got joinlist message from node 3

Mar 7 21:47:32 web1 openais[3076]: [CPG ] got joinlist message from node 4

接着,重启web2,然后在web1上继续观察日志信息:

Mar 7 21:58:55 web1 openais[3076]: [TOTEM] entering RECOVERY state.

Mar 7 21:58:55 web1 openais[3076]: [TOTEM] position [0] member 192.168.12.230:

Mar 7 21:58:55 web1 openais[3076]: [TOTEM] position [3] member 192.168.12.240:

Mar 7 21:58:55 web1 openais[3076]: [TOTEM] previous ring seq 3652 rep 192.168.12.240 Mar 7 21:58:55 web1 openais[3076]: [TOTEM] aru 0 high delivered 0 received flag 1

Mar 7 21:58:55 web1 openais[3076]: [TOTEM] Did not need to originate any messages in recovery.

Mar 7 21:58:55 web1 openais[3076]: [CLM ] New Configuration:

Mar 7 21:58:55 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.230)

Mar 7 21:58:55 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.231)

Mar 7 21:58:55 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.232)

Mar 7 21:58:55 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.240)

Mar 7 21:58:55 web1 openais[3076]: [CLM ] Members Left:

Mar 7 21:58:55 web1 openais[3076]: [CLM ] Members Joined:

Mar 7 21:58:55 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.240)

Mar 7 21:58:55 web1 openais[3076]: [CLM ] got nodejoin message 192.168.12.230

Mar 7 21:58:55 web1 openais[3076]: [CLM ] got nodejoin message 192.168.12.231

Mar 7 21:58:55 web1 openais[3076]: [CLM ] got nodejoin message 192.168.12.232

Mar 7 21:58:55 web1 openais[3076]: [CLM ] got nodejoin message 192.168.12.240

Mar 7 21:58:55 web1 openais[3076]: [CPG ] got joinlist message from node 2

Mar 7 21:58:55 web1 openais[3076]: [CPG ] got joinlist message from node 3

Mar 7 21:58:55 web1 openais[3076]: [CPG ] got joinlist message from node 4

Mar 7 21:59:11 web1 kernel: dlm: connecting to 1

Mar 7 21:59:11 web1 kernel: dlm: got connection from 1

2)节点web2异常宕机

在节点web2上执行如下命令,让内核崩溃:

[root@web2 ~]#echo c>/proc/sysrq-trigger

然后在节点web1上查看/var/log/messages日志,信息如下:

Mar 7 22:06:06 web1 openais[3076]: [TOTEM] The token was lost in the OPERATIONAL state.

Mar 7 22:06:06 web1 openais[3076]: [TOTEM] Receive multicast socket recv buffer size (320000 bytes).

Mar 7 22:06:06 web1 openais[3076]: [TOTEM] Transmit multicast socket send buffer size (262142 bytes).

Mar 7 22:06:06 web1 openais[3076]: [TOTEM] entering GATHER state from 2.

Mar 7 22:06:17 web1 qdiskd[3109]: Writing eviction notice for node 1

Mar 7 22:06:19 web1 qdiskd[3109]: Node 1 evicted

Mar 7 22:06:26 web1 openais[3076]: [TOTEM] entering GATHER state from 11.

Mar 7 22:06:26 web1 openais[3076]: [TOTEM] Creating commit token because I am the rep. Mar 7 22:06:26 web1 openais[3076]: [TOTEM] entering COMMIT state.

Mar 7 22:06:26 web1 openais[3076]: [TOTEM] entering RECOVERY state.

Mar 7 22:06:26 web1 kernel: dlm: closing connection to node 1

Mar 7 22:06:26 web1 openais[3076]: [TOTEM] Did not need to originate any messages in recovery.

Mar 7 22:06:26 web1 openais[3076]: [TOTEM] Sending initial ORF token

Mar 7 22:06:26 web1 openais[3076]: [CLM ] CLM CONFIGURATION CHANGE

Mar 7 22:06:26 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.230)

Mar 7 22:06:26 web1 openais[3076]: [CLM ] r(0) ip(192.168.12.231)

Mar 7 22:06:26 web1 fenced[3125]: fencing deferred to Mysql1

2)节点web2异常宕机

接着在mysql1节点执行fence_ack_manual -n web2命令,手工fence掉web2节点,然后会在Mysql1节点的日志中看到如下信息:

Mar 7 15:24:38 Mysql1 fenced[2898]: fence "web2" success

此时查看web2节点状态,已经处于Offline了。

[root@web1 gfs2]# clustat -m web2

Member Name ID Status

------ ---- ---- ------

web2 1 Offline 从输出信息可知,qdiskd首先检测到web2出现异常,然后将它从集群中隔离,由于是异常宕机,所以RHCS为了保证集群资源的唯一性,必须重置web2节点,于是fenced进程启动,在fenced进程没有返回成功信息之前,所有节点挂载的GFS2共享分区将无法使用,处于hung住的状态。直到fence成功。

(3)节点Mysql2宕机时

节点Mysql2在正常关机和异常宕机时,RHCS的切换状态与上面讲述的web2节点情况一模一样,这么不在重复讲述。

(4)节点web1宕机时

1)节点web1正常关机

[root@web1 ~]# init 0

然后在节点web2上查看/var/log/messages日志,信息如下:

Mar 7 02:14:58 web2 clurgmgrd[3239]: Member 4 shutting down

Mar 7 02:15:03 web2 clurgmgrd[3239]: Starting stopped service service:webserver Mar 7 02:15:05 web2 avahi-daemon[3110]: Registering new address record for 192.168.12.233 on eth0.

Mar 7 02:15:06 web2 in.rdiscd[4451]: setsockopt (IP_ADD_MEMBERSHIP): Address already in use

Mar 7 02:15:06 web2 in.rdiscd[4451]: Failed joining addresses

Mar 7 02:15:07 web2 clurgmgrd[3239]: Service service:webserver started

Mar 7 02:15:08 web2 qdiskd[2712]: Node 4 shutdown

Mar 7 02:15:41 web2 openais[2689]: [CLM ] Members Left:

Mar 7 02:15:41 web2 kernel: dlm: closing connection to node 4

Mar 7 02:15:41 web2 openais[2689]: [CLM ] r(0) ip(192.168.12.230)

Mar 7 02:15:41 web2 openais[2689]: [CLM ] Members Joined:

Mar 7 02:15:41 web2 openais[2689]: [CLM ] CLM CONFIGURA TION CHANGE

Mar 7 02:15:41 web2 openais[2689]: [CLM ] New Configuration:

Mar 7 02:15:41 web2 openais[2689]: [CLM ] r(0) ip(192.168.12.231)

Mar 7 02:15:41 web2 openais[2689]: [CLM ] r(0) ip(192.168.12.232)

Mar 7 02:15:41 web2 openais[2689]: [CLM ] r(0) ip(192.168.12.240)

(4)节点web1宕机时

1)节点web1正常关机

从输出日志可知,节点web1正常关机后,节点web1的服务和IP资源自动切换到了节点web2上,然后由qdiskd进程将节点web1从集群系统中隔离。由于web1节点是正常关闭,所以集群中GFS2共享文件系统可以正常读写,不受web1关闭的影响。

此时,在web2查看节点web1的状态:

[root@web2 ~]# clustat -m web1

Member Name ID Status

------ ---- ---- ------

web1 4 Offline

从输出可知,web1节点已经处于offline状态了。

接着,登录到节点web2,查看集群服务和IP资源是否正常切换,操作如下:

[root@web2 ~]# clustat -s webserver

Service Name Owner (Last) State

------- ---- ----- ------ -----

service:webserver web2 started

[root@web2 ~]# ip addr show|grep eth0

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000 inet 192.168.12.240/24 brd 192.168.12.255 scope global eth0

inet 192.168.12.233/24 scope global secondary eth0

从输出可知,集群服务和IP地址已经成功切换到web2节点。

(4)节点web1宕机时

1)节点web1正常关机

最后,重新启动节点web1,然后在节点web2查看/var/log/messages日志,信息如下:

Mar 7 02:42:36 web2 openais[2689]: [TOTEM] entering GATHER state from 11.

Mar 7 02:42:36 web2 openais[2689]: [TOTEM] Saving state aru 2b high seq received 2b

Mar 7 02:42:36 web2 openais[2689]: [TOTEM] Storing new sequence id for ring bdc

Mar 7 02:42:36 web2 openais[2689]: [TOTEM] entering COMMIT state.

Mar 7 02:42:36 web2 openais[2689]: [TOTEM] entering RECOVERY state.

......

Mar 7 02:42:36 web2 openais[2689]: [CLM ] Members Joined:

Mar 7 02:42:36 web2 openais[2689]: [CLM ] r(0) ip(192.168.12.230)

Mar 7 02:42:36 web2 openais[2689]: [CLM ] r(0) ip(192.168.12.231)

Mar 7 02:42:36 web2 openais[2689]: [CLM ] r(0) ip(192.168.12.232)

Mar 7 02:42:36 web2 openais[2689]: [CLM ] r(0) ip(192.168.12.240)

Mar 7 02:42:36 web2 openais[2689]: [CLM ] Members Left:

Mar 7 02:42:36 web2 openais[2689]: [CLM ] Members Joined:

Mar 7 02:42:36 web2 openais[2689]: [CPG ] got joinlist message from node 2

Mar 7 02:42:40 web2 kernel: dlm: got connection from 4

Mar 7 02:43:06 web2 clurgmgrd[3239]: Relocating service:webserver to better node web1

Mar 7 02:43:06 web2 clurgmgrd[3239]: Stopping service service:webserver

Mar 7 02:43:07 web2 avahi-daemon[3110]: Withdrawing address record for 192.168.12.233 on eth0.

Mar 7 02:43:17 web2 clurgmgrd[3239]: Service service:webserver is stopped

(4)节点web1宕机时

1)节点web1正常关机

从输出可知,节点web1在重新启动后,再次被加入到集群系统中,同时web2停止自身的服务以及释放IP资源。这个切换方式跟集群设置的Failover Domain策略有关,在创建的的失败转移域webserver-Failover中,没有加入“Do not fail back services in this domain”一项功能,也就是主节点在重新启动后,自动将服务切换回来。

此时在节点web1查看/var/log/messages日志,信息如下:

Mar 7 02:43:19 web1 clurgmgrd[3252]: stop on script "mysqlscript" returned 5 (program not installed)

Mar 7 02:43:35 web1 clurgmgrd[3252]: Starting stopped service service:webserver Mar 7 02:43:37 web1 avahi-daemon[3126]: Registering new address record for 192.168.12.233 on eth0.

Mar 7 02:43:38 web1 in.rdiscd[4075]: setsockopt (IP_ADD_MEMBERSHIP): Address already in use

Mar 7 02:43:38 web1 in.rdiscd[4075]: Failed joining addresses

Mar 7 02:43:39 web1 clurgmgrd[3252]: Service service:webserver started

这个输出表明,web1在重启后,自动将集群服务和IP资源切换回来。

(4)节点web1宕机时

2)节点web1异常宕机

Mar 7 03:00:17 web2 openais[2689]: [CPG ] got joinlist message from node 3

Mar 7 03:00:17 web2 fenced[2728]: fencing node "web1"

Mar 7 03:00:17 web2 openais[2689]: [CPG ] got joinlist message from node 1

Mar 7 03:00:55 web2 fenced[2728]: fence "web1" success

Mar 7 03:00:55 web2 kernel: GFS2: fsid=mycluster:my-gfs2.3: jid=0: Trying to acquire journal lock...

Mar 7 03:00:55 web2 kernel: GFS2: fsid=mycluster:my-gfs2.3: jid=0: Looking at journal... Mar 7 03:00:55 web2 kernel: GFS2: fsid=mycluster:my-gfs2.3: jid=0: Done

Mar 7 03:00:55 web2 clurgmgrd[3239]: Taking over service service:webserver from

Windows_Server_2003故障转移群集配置指南

VMware Workstation 中故障转移集群配置指南

目录 一、群集介绍 (3) 二、群集专业术语 (3) 三、实验环境介绍及要求 (4) 1、拓扑图 (4) 2、软件配置说明 (4) (1) DC软件配置信息 (4) (2) Cluster Node A软件配置信息 (4) (3) Cluster Node B软件配置信息 (5) 3、硬件配置要求 (5) (1) 网卡 (5) (2) 共享磁盘 (5) 四、安装群集前的准备工作 (6) 1、创建共享磁盘 (6) (1) 创建用来保存共享磁盘的目录 (6) (2) 创建仲裁磁盘 (6) (3) 创建数据共享磁盘 (7) (4) 验证共享磁盘是否成功创建 (7) (5) 附加共享磁盘 (8) 2、网络及系统配置 (10) (1) 创建群集服务帐户 (10) (2) 添加群集A记录 (12) (3) ClusterNodeA上的共享磁盘配置 (12) (4) 网络配置 (16) (5) ClusterNodeB上的共享磁盘配置 (21) 五、安装群集服务 (24) 1、在A节点上新建一个群集 (24) 2、将B节点加入现有群集 (29) 六、配置群集服务 (35) 1、群集网络配置 (35) 2、心跳适配器优先化 (37) 3、仲裁磁盘配置 (38) 4、创建一个启动延迟(此操作非必需) (39) 5、测试群集安装 (40) 七、故障转移测试 (42) 1、初级测试 (42) 2、高级测试 (44) (1) 手工模拟故障1次 (44) (2) 手工连续模拟故障4次 (45) (3) 停止群集服务测试 (47) (4) 模拟意外断电时故障转移 (49) 八、结束语 (50)

计算机集群技术的解释

【赛迪网独家特稿】集群技术是使用特定的连接方式,将相对于超级计算机便宜许多的计算机设备结合起来,提供与超级计算机性能相当的并行处理技术。早在七十年代就有人提出可以使用这种集群技术完成并行处理,但是由于受到当时网络交换技术的限制,集群系统在性能上与其他并行处理系统相距甚远,直到网络技术逐渐成熟的今天,它才具备了与超级计算机相匹敌的能力。 什么是集群 集群(Cluster)技术是指一组相互独立的计算机,利用高速通信网络组成一个计算机系统,每个群集节点(即集群中的每台计算机)都是运行其自己进程的一个独立服务器。这些进程可以彼此通信,对网络客户机来说就像是形成了一个单一系统,协同起来向用户提供应用程序、系统资源和数据,并以单一系统的模式加以管理。一个客户端(Client)与集群相互作用时,集群像是一个独立的服务器。 计算机集群技术的出发点是为了提供更高的可用性、可管理性、可伸缩性的计算机系统。一个集群包含多台拥有共享数据存储空间的服务器,各服务器通过内部局域网相互通信。当一个节点发生故障时,它所运行的应用程序将由其他节点自动接管。在大多数模式下,集群中所有的节点拥有一个共同的名称,集群内的任一节点上运行的服务都可被所有的网络客户所使用。 集群的特点 1.提供强大处理能力的高性能计算机系统:计算机集群可以通过负载均衡、并行处理、时间片处理等多种形式,将多台计算机形成高性能计算机集群。对用户端(Client)而言,计算机集群则是一个单一的系统,可以为用户提供高性能的计算机系统,而用户不用关心有多少计算机承担了系统实现的任务,而只需要关注系统的整体处理能力。因此,计算机集群可以用多台普通性能的计算机组成具有高性能的计算机系统,承担只有超级计算机才能胜任的工作。 2.提供高可用性的计算机系统:通过计算机集群技术组成的系统,可以确保数据和应用程序对最终用户的高可用性,而不管故障属于什么类型。即当计算机集群中的节点计算机出现软硬件故障的时候,高可用性集群提供了对软件和硬件失败后的接替。它将服务器镜像到备用系统或节点中,当主节点上的系统崩溃时,冗余节点就从替补角色转换到正式角色,并自动投入应用,从而保证了系统运行的不间断。

国际投资学课后作业(形成性考核)题目及答案

宁波广播电视大学 国际投资学作业 2013级秋金融本科 姓名:郑安琪 学号:1333101250016 时间:2013年11月

作业1 一、名词解释: 1、国际投资 国际投资是各国官方机构、跨国公司、金融机构及居民个人等投资主题将其拥有的货币资本或产业资本,经跨国流动形成实物资产、无形资产或金融资产,并通过跨国经营得以实现价值增值的经济行为。 2、国际直接投资 是投资者跨越国界,通过创立、收购等手段,以掌握和控制国外企业经营活动从而谋取利润的一种投资活动 3、“持久利益”原则 IMF认为FDI是指“为在一个外国企业获得持久利益而进行的投资,其目的是为了在该企业的管理中拥有实际发言权”。 OECD的定义:FDI是一国的居民在其所在国之外的另一国家的居民进行的以获得持久利益为目的的活动。持久利益的含义是直接投资者和企业之间存在着一种长期的关系,直接投资者对企业有重大的影响。 二、简答题 1、投资与投机的联系与区别 投资指货币转化为资本的过程。投资可分为实物投资、资本投资和证券投资。在我们投资者眼中,投资不说赢取暴利,最起码获得的利益会翻倍,如果单凭自己薪资存钱那会是很长远而不现实的感觉,做生意,找银行贷款,私募股权投资,都是投资比较好的方法,最终的目的就是为了转的更多的钞票,但要如何做好这些方面的投资,必须稳健进行,有一定经验的积累,为什么大多投资者都是经过工薪组的经验锻炼,最后才成为企业家和成功投资人的,这个就是积累投资经验的过程。 投机指根据对市场的判断,把握机会,利用市场出现的价差进行买卖从中获得利润的交易行为。投机可分为三类:长线投机者、短线交易者、逐小利者。投资家和投机者的区别在于:投资家看好有潜质的股票,作为长线投资,既可以趁高抛出,又可以享受每年的分红,股息虽不会高但稳定持久,而投机者热衷短线,借暴涨暴跌之势,通过炒作谋求暴利,少数人一夜暴富,许多人一朝破产。 2、简述国际投资的发展阶段 国际投资形成与发展的历程大致可划分为四个阶段: (1)初始形成阶段(1914年以前):这一阶段以国际借贷资本流动为主; (2)低迷徘徊阶段(1914-1945):由于两次世界大战,这一期间的国际投资受到了较为严重的影响,发展历程曲折迟缓,仍以国际间接投资为主; (3)恢复增长阶段(1945-1979):这一阶段国际直接投资的主导地位形成;(4)迅猛发展阶段(20世纪80年代以来):这一阶段出现了直接投资与间接投资齐头并进的大发展局面,成为经济全球化至为关键的推动力。 3、简述产品生命周期理论的主要内容 产品生命理论,是美国哈佛大学商学院两位教授刘易斯威尔士和雷蒙德弗农提出的。主要内

浙江省产业集群的分析与建议

浙江省产业集群的分析与建议 龚佩 华东师范大学城市与区域经济系05级 摘 要:浙江作为我国长江三角洲的一个重要的组成部分,其经济发展在改革开放以后取得了巨大的成就。然而近年来随着世界产业结构的调整,浙江的经济发展速度在一定程度上放慢了,而且可以看出地区的产业结构还没有适应这种世界性的变化,存在着相当大的问题。本文从产业集群的角度去分析浙江产业在改革开放以后索取得的成就及原因。从理论上分析其内部的问题,并在这基础上提出相关的意见。 关键词:产业发展 产业集群 分工理论 1.产业集群的概念与特点 1.1定义 我们所说的产业集群是在既竞争又合作的特定领域内,彼此关联的公司、专业化供应商、服务供应商和相关产业的企业以及政府和其他相关机构(如大学、研究机构、智囊团、职业培训机构以及行业协会等)的地理集聚体。 对于产业集群形成与演化机理的研究,可以追溯到马歇尔(1920)。他提出了外部规模经济的概念,即市场规模的扩大带来了中间投入品的规模效应、劳动力市场规模效应以及信息交换和技术扩散,从而可以导致外部规模经济(范围经济)。之后的韦伯(1929)把区位因素归结为区域因素、集聚因素。而到了新古典经济学时期,即80年代中期以来,以罗默(1986)和卢卡斯(1988)为代表内生增长理论,从人力资本溢出、技术扩散和收益递增这些内生因素分析产业集群的问题。之后的克鲁格曼则在内生增长理论的基础上,将产业集群理论与新古典主流经济学有机地结合起来,提出了“技术型外部性”和“经济型外部性”的观点来进一步进行解释。而与新古典经济学不同,新制度经济学从减少交易成本和降低交易费用的角度出发,分析一定区域产业集聚的产生原因。代表人物为威廉姆森(1975),他认为不确定性、交易重复的频率和资产专用性这三个交易特征高低程度不同,与其匹配的规制结构也不同,提出了产业集群是企业间分工基础上的互补性活动和资源的相互依赖。 1.2 产业集群的特点与优势 产业集群的成本优势首先是交易成本优势。一方面通过产业集群这种组织减少了资

微软服务器群集和Oracle热备安装方法(针对IBM服务器)

微软服务器群集和Oracle设备安装方法 --针对IBM服务器 一、安装操作系统及应用软件。(服务器为X336) 1.硬件连接:将两台服务器线路连接好,除了EXP400暂时不连接,或连接好不开EXP400磁盘柜。 2.始安装操作系统(WIN2000 AD),此时主、从服务器可并行同时安装。 3.IBM ServerGuide 7.2.03引导盘引导服务器。 1)选择安装语言为English (NEXT) 2)选择键盘、国家(NEXT) 3)ServerGuide应用简介(NEXT) 4)选择要安装的操作系统WIN2000 Advance Server (NEXT) 5)设置时间、日期(NEXT) 6)安装新机器,选择清除硬盘所有信息(NEXT) 7)配置ServerRAID,此时只有本地两块硬盘,配置为RAID1,配置完成退 出(NEXT) 8)服务器自动重起 9)创建系统分区为15000MB (NEXT) 10)输入服务器名(规则见《TFDS安装说明》)、WIN2K AD安装序列号 (NEXT) 11)服务器网络设置,默认(NEXT) 12)同时连接服务器数输入500 (NEXT) 13)设置时区(+8 BEIJING),默认语言(Chinese PRC),默认输入法 (SIMPLIFILED CHINESE)(NEXT) 14)选择添加群集组件(Cluster Serives)(NEXT) 15)自动COPY ServerGuide 光盘内容,完成后光盘自动弹出 16)在光驱中放入WIN2000 AD安装光盘(NEXT) 17)确认光盘系统版本(NEXT) 18)同意安装条例(NEXT) 19)自动COPY WIN2000 AD 光盘内容,完成后光盘自动弹出(NEXT) 20)等待45分钟,操作系统安装完成 注:若有落下的页面则为默认选择即可。 4.进入系统,进入磁盘管理将光驱盘符为Z,将硬盘空余空间分为逻辑分区D。 5.将WIN2000 AD安装光盘全部内容COPY到D盘下WIN2K目录内。 6.将MCAFEE杀毒软件、远程管理软件及WIN2K 系统补丁文件均COPY 到D盘。 7.装SP4(注意:要用TFDS安装光盘提供的正规版本安装,大小约为128MB)。 8.装WIN2K系统补丁(注意:不要安装震荡波补丁)。 9.装MCAFEE7。1杀毒软件及远程管理软件。 以上操作均可两台服务器并行同时安装。

服务器集群技术方案

服务器集群技术方案 集群(Cluster )技术是发展高性能计算机的一项技术。它是一组相互独立的计算机,利用高速通信网络组成一个单一的计算机系统,并以单一系统的模式加以管理。其出发点是提供高可靠性、可扩充性和抗灾难性。一个集群包含多台拥有共享数据存储空间的服务器,各服务器通过内部局域网相互通信。当一台服务器发生故障时,它所运行的应用程序将由其它服务器自动接管。在大多数模式 下,集群中所有的计算机拥有一个共同的名称,集群内的任一系统上运行的服务 都可被所有的网络客户使用。采用集群系统通常是为了提高系统的稳定性和网络中心的数据处理能力及服务能力。 当前主流的集群方式包括以下几种: 1. 服务器主备集群方式 服务器主-备方式由一台服务器在正常运行状态提供对外服务,其它集群节点作为备份机,备份机在正常状态下不接受外部的应用请求,实时对生产机进行检测,当生产机停机时才会接管应用服务,因此设备利用率最高可达50%主备 方式集群如下图所示,节点2为正常提供服务的服务器,运行多个应用 (pkgA,pkgB..),节点1平时只监控节点2的状态,不对外提供服务,当节点2 出现故障时,节点1将把两个应用接管过来,并对外提供服务。 图表错误!文档中没有指定样式的文字。-1主备方式集群 2. 服务器互备份集群方式 多台服务器组成集群,每台服务器运行独立的应用,同时作为其它服务器的 备份机,当主应用中断,服务将被其它集群节点所接管,接管服务的节点将运行自身应用和

故障服务器的应用,这种方式各集群节点的硬件资源均可被应用于对外服务。互备方式集群如下图所示,节点1和节点2分别运行1个或多个不同的应用,但只对外提供本地的主应用,两个节点之间互相进行监控,集群中任何一个节点出现故障后,另一个节点把故障节点的主应用接管过来,所有应用服务由一台服务器完成。 图表错误!文档中没有指定样式的文字。-2互备份方式集群 这种方式的主要缺点在于: 由于需要重新启动数据库核心进程,无法保证数据库系统连续不间断地运行 在系统切换的过程中,客户端与服务器之间的数据库连接会中断,需要重新进行数 据库的连接和登录工作 由于数据库系统只能在一台服务器上运行,另一台服务器无法分担系统的负载,实 际上造成了客户投资的浪费。在有些系统中,为了解决双机负载分担的问题,将应 用系统人为分割为两个数据库系统,分别在两台服务器上运行。这种方式在一定程 度上解决了负载分担的问题,但给系统管理、统计分析等业务处理带来了很多额外 的复杂性 3. 服务器并行集群方式 集群有多台服务器构成,同时提供相同的应用,可以实现多台服务器之间的负载均衡, 提供大访问量的应用需求,如Web访问及数据库等应用,服务器并行集群方式一般由应用系 统自身(如OracleRAC中间件负载均衡等)或外部专用服务器负载均衡设备实现。 jL# R?i uat Hiti.iEMXff DLM珀心XM4子耳 vVLH Ctid TW

皮肤性病学考试重点复习课程

●皮肤的结构:表皮层、真皮层、皮下层★表皮在组织学上发球扁平上皮,主要由角质形成细胞、黑素细胞、朗格汉斯细胞和梅克尔细胞等构成。角质形成细胞分五层,分别为:基低层、棘层、颗粒层、透明层和角质层。★真皮:由浅到深可分为乳头层和网状层。由纤维(主)、基质和细胞成分构成。胶原纤维、网状纤维、弹力纤维、基质和细胞。★皮下组织位于真皮下方,由疏松结缔组织及脂肪小叶组成,又称皮下脂肪层。 ●皮肤附属器包括毛发、皮脂腺、汗腺和甲,均由外胚层分化 ●皮肤的功能:皮肤的屏障功能(物质性损伤防护、化学刺激、微生物防防御、防止营养物质丢失)、皮肤的吸收功能、皮肤的感觉功能、皮肤的分泌和排泄功能、皮肤的体温调节功能、皮肤的代谢功能(糖代、蛋白质代、脂类代、水和电角质代)、皮肤的免疫功能。 ●皮损:皮肤性病临床表现的体征称皮肤损害,分为原发性皮损和继发性皮损,原发性皮损包括斑疹、斑块、丘疹、风团、水疱和大疱、脓疱、结节和囊肿;继发性皮损包括糜烂、溃疡、鳞屑、浸渍、裂隙、瘢痕、萎缩、痂、抓痕和苔藓样变。 ▲斑疹:皮肤黏膜的局限性颜色改变,与周围皮肤平齐,无隆起或凹陷,大小可不一,形状可不规则,直径一般小于1cm。 ▲斑块:为扩大或较多丘疹融合而成、直径大于1cm的隆起性扁平皮损,中央可有凹陷。见于银屑病等。 ▲丘疹:为局限性、实质性、直径小于1cm的表浅隆起性皮损

▲风团:为真皮浅层水肿引起的暂时性、隆起性皮损。 ▲鳞屑:为干燥或油腻的角质细胞的层状堆积,由表皮细胞形成过快或正常角化过程受干扰所致。鳞屑的大小、厚薄、形态不一,可呈糠秕状(花斑糠疹)、蛎壳状(银屑病)或大片状(剥脱性皮炎)。▲浸渍:皮肤角质层吸收较多水分导致表皮变软变白,常见于长时间浸水或出于潮湿状态下的皮肤部位。 ▲糜烂:表皮或粘膜的浅表性缺损,露出红色湿润面,糜烂的基底达表皮下层或真皮乳头层。愈合快,愈后不留疤痕 ▲溃疡:皮肤粘膜局限性缺损,病变累及深层真皮或皮下组织。愈合后有瘢痕 ▲浸渍:角质层吸收水份过多、致松软变白,起皱,浸水过久或长期处于潮湿环境下,好发皮肤皱褶部位 ▲裂隙:皮肤线形裂口,可深达真皮面有瘙痒或出血;好发于掌跖、指趾及口角;原因:炎症、角质层增厚或干燥 ▲瘢痕:真皮或深部组损伤或或病变后,由新生结缔组织修复而成。分类:萎缩性瘢痕,增生性瘢痕 ▲萎缩:皮肤的退行性变,可发生于皮肤任何一个成分。表皮:皮肤变薄,似皱纹纸样外观;真皮:皮肤凹陷,皮纹正常;皮下:皮肤显著凹陷 ▲痂:皮疹损害渗出的浆液、脓液、血液与坏死组织以及微生物等混合干涸的附着物。组成差别:(1)浆液痂 (淡黄色) :带状疱疹(2)脓痂(深黄色) :脓疱疮(3)血痂(棕红色) :过敏性紫癜

第十一讲 集群分析

集群分析 11-1、集群分析的基本理论 11-2、集群分析的操作与结果解析

11-2 11-1、集群分析的基本理论 【研究问题】:以学校组织文化、学校组织气氛、校长领导角色等变项是否可将学校分成有意义的群组? 某研究者采分层丛集取样方法,抽取十五所学校,以探究校长领导角色、学校组织气氛、学校组织文化与学校校能关系,十五所学校教师各施予校长领导角色、学校组织气氛、学校组织文化与学校校能四种量表,以探究校长领导角色、学校组织气氛、学校组织文化等三个变项对学校校能的影响,研究者除探讨变项间的相关外,也想知道如以校长领导角色、学校组织气氛、学校组织文化等三个变项作为分类依据,是否可将十五所学校分成几个大群组,以进一步探讨群组学校间之学校校能的差异,及群组间相似之处。对于此问题,研究者所要运用的统计分析方法为「集群分析法」。 集群分析(cluster analysis)也是一种多变量分析程序,其目的在于将数据分成几个相异性最大的群组,而群组间的相似程度最高。研究者如果认为观察值间并非全部同质,在资料探索分析方面,集群分析是一个非常有用技巧。由于集群分析时,使用之分析方法不同,结果便有所不同,不同研究者对同一观察值进行集群分析时,所决定的集群数也未必一致,因而集群分析较偏向于探索性分析方法,在研究应用上,常与区别分析一起使用(吴明隆,民89)。观察值之集群分析应用与区别分析相似,均在于将独立分开的观察值分成不同组别(groups)或将观察值分类,二者主要差别在于区别分析时,组别特性已知,而集群分析时,观察值所属群组特性还未知。此外,在集群分析前,研究者尚不知道独立观察值可分为多少个群组(集群),其集群数不知道,而集群的特性也无从得知。

一种模拟羊群行为的新型群集智能算法

Paper NO1 (注:满分为五星) 笔记部分 1.群集智能算法的理想状态应该是能够快速找到可行解,并在陷入局部优化解时及时跳 出从而继续寻找全局最优解。 实际应用中,现有群集智能算法往往由于个体间协同不够直接,而导致收敛较慢。 2.相关算法 (1)PSO 算法(微粒群算法)中的每个粒子代表优化问题的一个解,粒子根据记忆、个体认知(向自己历史最优解学习强化局部开发能力)和社会认知(向 种群历史最优解学习表示粒子间的协作和信息共享)来不断调整自己的速度 和位置,逐渐靠近最优解. (2)蚁群优化算法通过信息素进行相互协作,形成正反馈来实现优化 (3)人工蜂群算法模拟蜂群的智能采蜜行为,将搜索过程分为:雇佣蜂阶段、观察蜂阶段和侦察蜂阶段,前两个阶段用来寻找新的食物源,后一个阶段用来生成新的食物源。 (4)布谷鸟搜索算法模拟布谷鸟寄生育雏行为,通过Lévyflights 随机游动和偏好随机游动来平衡局部开发和全局探索

3.算法分析 (1)头羊引领阶段 Xold和Xnew分别表示执行头羊引领前与后的羊群,xbellwether表示头羊,xold i 和xnewi分别表示第i只羊向头羊移动前和移动后的信息,rand(0,1)表示[0,1]间的一个随机数,以随机设置本次移动过程中羊步伐. lines3~5表示如果本次移动羊性能没有变好,则不更新. (2)羊群互动阶段 Xold和Xnew分别表示执行羊群互动前与后的羊群,line3 ~9表示两羊之间性能较差的向性能较好的移动,line10~15表示如果如果移动后性能没有变好,则不更新. (3)牧羊犬监督阶段

Xold和Xnew分别表示执行牧羊犬监督前与后的羊群;line1 ~9表示如果头羊差小于阈值,除领头羊外的每只羊都按重置概率被牧羊犬放牧,即重新被初始化;line 10 ~17表示对于没有被放牧即没有被重新初始化的每只羊,随机选择一只被放牧后的羊xnewj ,并向其移动,同样如果移动后效果不好,则不更新.

分布式集群技术

分布式集群技术1、Linux的介绍:Linux的发展历史、Linux和Windows的对比和优势、Linux的常见版本; 2、Linux的安装:VMware Workstation虚拟软件安装过程、CentOS虚拟机安装过程; 3、Linux的常用命令:常用命令的介绍、常用命令的使用和练习; 4、Linux编辑器:VI、VIM编辑器的介绍、常用快捷键; 5、Linux用户和组账户管理:用户的管理、组管理; 6、Linux系统文件权限管理:文件权限介绍、文件权限的操作; 7、Linux的RPM软件包管理:RPM包的介绍、RPM安装、卸载等操作 8、Linux网络:Linux网络的介绍、Linux网络的配置和维护、iptables原理和操作 9、Shell编程:Shell介绍、Shell脚本的编写 10、Linux上常见软件的安装:安装JDK、安装Tomcat、安装Eclipse 11、集群负载均衡和高可靠:Haproxy、Keepalived 12、CentOS7部分新特性介绍和使用 13、综合案例:构建互联网高并发分布式服务器集群 Hadoop离线计 算1、Hadoop生态圈简介 2、Hadoop伪分布式环境搭建 3、Hadoop计算模型MapReduce例子说明 4、分布式文件系统HDFS:分布式文件系统HDFS简介、HDFS原理、HDFS上传下载数据过程和源码分析 5、分布式计算模型MapReduce:MapReduce算法原理、Shuffle过程和原理、MapReduce提交过程和源码分析、MapReduce执行过程和源码分析、MapReduce 本地debug和远程debug、MapReduce优化、MapReduce实战案例 6、分布式协调框架ZooKeeper:ZooKeepe基本概念和体系结构、ZooKeeper集群的安装、操作ZooKeeper、ZooKeeper编程API 7、Hadoop2.x集群搭建:Hadoop2.x集群结构体系介绍、Hadoop2.x集群搭建、NameNode的高可用性(HA)、HDFS Federation、ResourceManager 的高可用性(HA)、Hadoop集群常见问题和解决方法、Hadoop集群管理 8、分布式数据库Hbase:HBase定义、HBase与RDBMS的对比、数据模型、系统架构、HBase上的MapReduce、表的设计、集群的搭建过程讲解、集群的监控、集群的管理、HBase Shell以及演示、Java客户端以及代码演示 9、数据仓库Hive(使用sql进行计算的hadoop框架):数据仓库基础知识、Hive定义、Hive体系结构简介、Hive集群、客户端简介、HiveQL定义、HiveQL与SQL 的比较、数据类型、外部表和分区表、表的操作与CLI客户端演示、数据导入与CLI 客户端演示、查询数据与CLI客户端演示、数据的连接与CLI客户端演示、用户自定义函数(UDF)的开发与演示 10、数据迁移工具Sqoop:配置Sqoop、使用Sqoop把数据从mysql导入到HDFS

RHCS完全配置手册

红帽高可用性配置,管理和维护 -最强版 原作者:史应生 文章版权:GPL

背景介绍: 随着人们对业务需求和用户满意度期望值的不断提升,很多生产系统(尤其是金融,基金,证券,保险行业和电信)需要提供7X24小时的不间断服务。这就需要一个集群的环境,保证当正在提供服务的机器宕机后,集群中的其它机器可以在短时间内接管服务。并且保证能够把出现问题的机器自动启动,使其恢复到初始状态。而且在整个服务切换过程中,不需要任何的人为干预。这就是高可用性的解决方案。 在本文章中,作者针对红帽公司的集群套件,通过监控一个web服务器的应用,对集群套件的配置,管理和维护做了详细的说明。 适用读者: 1.中/高级Linux系统管理员 2.系统集成商 3.解决方案构架师 4.所有从事开源的兄弟姐妹

目录 第1章红帽高可用软件介绍 (4) 1.1群集总览 (4) 1.2群集特性 (6) 1.3系统所需最小配置 (9) 第2章系统配置 (11) 2.1系统主机信息和网络配置 (11) 2.2关闭不需要的系统服务 (14) 2.3为系统打补丁 (15) 2.4安装高可用的HA监控脚本 (15) 2.5共享存储配置 (15) 第3章群集配置 (17) 3.1安装红帽群集管理器软件包 (17) 3.2群集配置工具 (19) 第4章群集管理 (47) 4.1群集状态工具总览 (47) 4.2显示群集和服务状态 (47) 4.3启动和停止群集软件 (49)

第1章 红帽高可用软件介绍 红帽高可用软件最初建立在由 Mission Critical Linux, Inc. 开发的开源 Kimberlite https://www.360docs.net/doc/a52155155.html,/kimberlite/ 群集工程。 基于 Kimberlite 建立的版本开始之后,红帽的开发者们在其上进行了大量的增进和修改。以下不全面的列表突出显示了一些此类增进。 打包并集成到红帽安装程序以便简化终端用户对其的使用。 增加了对多个群集成员的支持。 增加了对高可用性 NFS 服务的支持。 增加了对高可用性 Samba 服务的支持。 增加了图形化监控工具“群集配置工具”。 增加了图形化监控管理工具“群集状态工具”。 增加了对失效域的支持。 增加了对使用监视计时器来保障数据完好性的支持。 增加了将会自动重启失效程序的服务监控。 重新编写了服务管理器来实现额外的群集全局的操作。 一组各类错误修正。 红帽群集管理器软件吸收了来自 Linux-HA 工程的 STONITH 兼容电源开关模块,参见 https://www.360docs.net/doc/a52155155.html,/stonith/。 红帽群集管理器是一组技术集合。它们被综合在一起来提供数据完好性和在失效情况下保持程序可用性的能力。通过使用冗余的硬件、共享的磁盘贮存区、电源管理、以及强健的群集管理和应用程序失效转移机制,群集能够满足企业市场的需要。 群集特别适合于数据库应用程序、网络文件服务器、以及带有动态内容的万维网服务器,它还可以和 Piranha 负载均衡群集软件(基于 Linux 虚拟服务器,LVS 计划)一起用来部署高可用性的电子商务站点。这类站点除了负荷平衡能力之外还具备提供完全的数据完好性和应用程序可用性的能力 1.1 群集总览 要设置群集,管理员必须把成员系统(member systems,通常被简称为成员,member)连 4

对商业集群的分析

对商业集群的分析 下文为大家整理带来的对商业集群的分析,希望内容对您有帮助,感谢您得阅读。 引言 在现实生活中商业集群现象随处可见:从农村的农贸市场到城市的商业街、商务中心区(CBD),再到风靡全国的奥特莱斯购物中心和花样繁多的ShoppingMall;从伦敦的牛津大街、查令十字路,到日本的新宿大街,再到美国的纽约曼哈顿第五大道等,这些都形成了世界闻名遐迩的商业集群 但长期以来,人们更多地将集群研究的重点放在制造业,对商业集群的研究却很少。随着服务型社会的发展,商业在地理空间上的集聚趋势将会越来越强,商业集群的发展对经济增长所起的作用也会越来越大,一些学者也开始将研究的视角转向商业集群问题 本文拟从商业集群研究的起源、商业集群的定义、商业集群形成的原因以及商业集群对经济增长的影响等几个方面系统梳理商业集群在经济学说史上的发展历程,为商业集群的发展提供理论借鉴和现实启示 商业集群的起源 对商业集群研究的起源可以追溯到19世纪德国经济学家杜能,杜能在其管理自己大片土地的过程中,根据自身的经验撰写出了《孤立国同农业和国民经济的关系》一书,并于1826年出版在这

本书中,杜能的本意是想说明不同产业因为运输费用的不同而如何去决定一个孤立国家的土地和地租的。为此,杜能根据运输费用的大小而提出了被后人称之为杜能圈的理论,即孤立国最终会形成一个以城市为中心,由内向外依次分布着自由式农业、林业、轮作式农业、谷草式农业、三圃式农业以及畜牧业的同心圆结构。实际上,杜能圈就是一个以城市为中心的商业集群,在这个商业集群中聚集了蔬菜、牛奶、木材以及猪牛等商品的供给者和需求者。因此,也可以说杜能是最早研究商业集群起源现象的经济学家了。 1890年,马歇尔的《经济学原理》一书的出版,标志着新古典经济学的正式成立。局部均衡是马歇尔新古典经济学分析的中心,前提假设是其他条件不变,这一假设使得有可能单独考虑经济的一个片段同时忽视它与其他片段的联系,新古典经济学采用了一种极端的处理市场交易的方式让生产者和消费者直接见而,通过一个假设的拍卖人,让生产者和消费者直接就商品买卖达成协议。在新古典经济学的意识中,市场不是空间维度中的一个实实在在存在着的交易场所,而只是一个虚无缥缈的节点。新古典经济学之所以会有这种想法,这与新古典经济学产生的时代分不开的。新古典经济学产生于19世纪末期,当时的生产力水平相对还比较低下,需求远远大于供给,人们信奉的是供给创造自身的需求的所谓萨伊定律。因此,新古典经济学忽视对空间流通的研究也就是理所当然的事情,没有了空间维度的概念,商业集群自然也就无从谈起。由于新古典经济学在很长一段时间内,一直居于主流经济学的地位。因此,直到今天,西方主流经济学仍然继

Windows Server 2008 R2的故障转移群集

故障转移群集可以配置使用多种不同的配置。组成群集的服务器可以是活跃状态或不活跃状态,而不同服务器可以被配置为在活跃服务器故障后立刻接管相应的资源。一般故障转移的过程只需要几分钟的时间,至于时间的长短主要取决于群集的配置和具体应用,当节点处于活跃状态时,该节点上可以使用所有资源。 当服务器故障后,在这台服务器上配置了故障转移群集的资源组就会被其他服务器所接管。当故障服务器重新上线后,群集服务可以配置为允许让原服务器进行故障回复,或者是让当前服务器继续处理新的客户端请求。本文章将讲述基 于Windows Server 2008 R2的故障转移群集实现。 安装“故障转移群集”: 下面就开始在两个节点上安装群集服务。在此以server1为例,安装方法是:打开服务器管理器图标----添加功能,从中选择“故障转移群集”。 当两个节点安装完群集服务后,我们需要运行群集配置验证程序,来检查节点服务器、网络和存储设备是否符合群集要求。 仅当完整配置(服务器、网络和存储)可以通过“验证配置”向导中的所有测试时,微软才支持故障转移群集解决方式,另外,解决方案中的所有硬件组件均必须标记为“certified for windows server 2008 R2”。 方法是在server1或者是server2上进入故障转移群集管理器,单击“验证配置”。如下图所示:

因为我们需要验证的是群集中的所有节点,所以我们需要把所有节点都添加进来,如下图所示: 点击“下一步”之后,我们需要“运行所有测试”,如下图所示:

给出验证清单,也就是所要进行验证的项目。点击,下一步之后,开始出现下面的验证过程:

银行大额集群性授信业务风险暴露 模版

银行大额集群性授信业务风险暴露 应急处置管理办法 第一章总则 第一条为进一步规范和加强银行股份有限公司(以下简称“本行”)针对大额集群性授信业务风险暴露应急处置能力,有效防范、管理大额集群性授信业务风险,根据《银行突发金融风险应急处置管理办法》有关规定,结合本行实际,制定本管理办法(以下简称“办法”)。 第二条本办法所称大额集群性授信业务风险暴露,是 指 对于本行集团性客户(含集团客户、集群性商户、供应链客户、担保公司、互保圈客户等集群性客户群体)、相关授信行业、相关授信区域由于受重大不利政策影响,或因授信、担保主体发生重大风险事项,可能使本行出现大面积、群发性授信业务风险的授信业务风险事件。 第三条大额集群性授信业务风险暴露应急处置应遵循以

下原则:(一)各司其职,团结协作。相关部门按照职责分工,积极筹划落实各项应急管理措施,相互协调,共同控制和化解风险。 (二)及早预警,及时处理。对大额集群性授信业务风险暴露情况做到早发现、早报告,并采取果断措施,及时控制和化解风险,防止风险扩散和蔓延。大额集群性授信业务风险暴露事件处理应坚持快速、高效、低成本的原则。 (三)防化结合,重在防范。相关部门应加强大额集群性授信业务风险的监测,及时了解信息,提高应对大额集群性授信业务风险的能力,并定期开展业务排查,以提前发现潜在风险隐患,指导授信管理工作,尽早采取相应措施防范和化解风险。 第二章大额集群性风险事件 第四条集团性客户风险事件主要包括以下几种类型: (一)集团客户风险事件。由于集团客户母公司、核心企业或重要关联人发生重大不利变化,可能使本行该集团客户成员企业发生大面积、群发性授信业务风险的授信业务风险事件。 (二)集群性商户风险事件。由于集群性商户所在的单一

VMware vSphere中创MSCS群集+MSSQL2008群集

VMware vSphere创建Windows Server 2008 R2 + SQL Server 2008 R2群集1.打开WMware vSphere Client,登录vCenter; 2.进入vCenter控制台,点击地址栏“清单”-“虚拟机和模板”; 3.从左边列表中选择win2008r2模板,点击“部署为新虚拟机”,打开【部署模板】向导;

4.【名称和位置】界面,“名称”栏键入第一台虚拟机名称,并在“清单位置”选择VM数据中心位置, 点击“下一步”; 5.【主机/群集】界面,选择虚拟机安装到哪台主机或群集上,点击“下一步”;

6.【存储器】界面,“选择虚拟磁盘格式”选为“Thin Provision”,并选择虚拟机存储位置,点击“下一 步”; 7.【客户机自定义】界面,直接点击“下一步”;

8.【即将完成】界面显示部署信息,点击“完成”确认创建新虚拟机; 9.等待vCenter创建新虚拟机完成后,对该虚拟机的属性进行编辑; 1)编辑“网络适配器”,根据虚拟机的IP地址选择“网络连接”-“网络标签”;

2)由于Windows故障转移群集需要两块网卡,所以需添加一块网络适配器; 3)Windows Server 2008 R2 + SQL Server 2008 R2群集需使用至少三块共享磁盘(仲载、MSDTC、

数据),所以需依次添加三块虚拟硬盘,点击【虚拟机属性】界面“添加”按键打开【添加硬件】向导,选择“硬盘”,点击“下一步”; 4)此虚拟机为群集的第一个节点虚拟机,应选择“创建新的虚拟磁盘”,点击“下一步”; 5)调整磁盘容量,选择“厚置备置零”,“位置”必须是两台群集虚拟机都能找到的位置,本教程的

服务器集群技术+网络存储技术基础精辟讲解

深入讲解服务器集群技术(精辟) 在发展初期,一路处理器便可为一台服务器及其所有应用提供动力。接着就发展到了多处理时代,这时两路或多路处理器共享一个存储池,并能处理更多更大的应用。然后出现了服务器网络,该网络中的每台服务器都专门处理不同的应用集。现在,发展到了服务器集群,两台或多台服务器像一台服务器一样工作,提供更高的可用性和性能,这已经远远超出了您的想像。应用可从一台服务器转移到另一台服务器,或同时运行在若干台服务器上――所有这一切对用户都是透明的。 集群并不是新事物,但在软件和硬件方面,直到最近它们还是专有的。信息系统经理对集群进行了更加仔细的考虑,这是因为现在他们可以使用大规模生产的标准硬件实现集群,如RAID、对称多处理系统、网络和I/O网卡及外设。集群技术在未来将会获得更大的发展,现在,不断推出新的集群选件,而真正的集群标准尚在制定之中。 何为集群? 简单的说,集群就是两台或多台计算机或节点在一个群组内共同工作。与单独工作的计算机相比,集群能够提供更高的可用性和可扩充性。集群中的每个节点通常都拥有自己的资源(处理器、I/O、内存、操作系统、存储器),并对自己的用户集负责。 故障切换功能提供丝捎眯裕旱币桓鼋诘惴⑸ 收鲜保 渥试茨芄?quot;切换"到集群中一个或多个其它节点上。一旦发生故障的节点恢复全面运行,通过前瞻性地将一台服务器的功能"切换"到集群中其它服务器上,可以实现升级,停止该服务器的运行以增加组件,然后将其放回到集群中,再将其功能从其它服务器转回该服务器。利用分布式讯息传递(DMP)可提供额外的可扩充性,DMP是一种集群内通信技术,该技术允许应用以对最终用户透明的方式扩展到单个对称多处理(SMP)系统以外。 集群中的每个节点必须运行集群软件以提供服务,如故障检测、恢复和将服务器作为约个系统进行管理的能力。集群中的节点必须以一种知道所有其它节点状态的方式连接。这通常通过一条由于局域网路径相分离的通信路径来实现,并使用专用网卡来确保节点间清楚的通信。该通信路径中继系统间的一?quot;心跳",这样,如果一个资源发生故障因而无法发送心跳,就会开始故障切换过程。实际上,最可靠的配置采用了使用不同通信连接(局域网、SCSI和RS232)的冗余心跳,以确保通信故障不会激活错误的故障切换。 集群级别 今天,对于集群购买者来说,幸运的是有多款不同档次的集群可供选择,它们可提供广泛的可用性。当然,可用性越高,价格也越高,管理复杂性也越大。 共享存储

主成分分析和聚类分析

北京建筑工程学院 理学院信息与计算科学专业实验报告 课程名称《数据分析》实验名称《主成分分析和聚类分析》实验地点:基础楼C-423日期__2016.5.5_____ 姓名张丽芝班级信131 学号201307010108___指导教师王恒友成绩 (1)熟悉利用主成分分析进行数据分析,能够使用SPSS软件完成数据的主成分分析; (2)熟悉利用聚类分析进行数据分析,能够运用主成分分析的结果,做进一步分析,如聚类分析、回归分析等,能够使用SPSS软件完成该任务。 【实验要求】 根据各个题目的具体要求,分别运用SPSS软件完成实验任务。 【实验内容】 1、表4.9(数据见exercise4_5.txt)给出了1991年我国30个省市、城镇居民的月平均 消费数据,所考察的八个指标如下:(单位均为元/人) X1: 人均粮食支出; X2:人均副食支出; X3: 人均烟酒茶支出; X4: 人均其他副食支出; X5:人均衣着商品支出; X6: 人均日用品支出; X7: 人均燃料支出; X8: 人均非商品支出。 (1)求样本相关系数矩阵R。 (2)从R出发做主成分分析,求出各主成分的贡献率及前两个主成分的累积贡献率; 2、(1)对题1中的数据,按照原有的八个指标,对30个省份进行聚类,给出分为3类的聚类结果。 (2)利用题1得到的前2个主成分指标,分别按最短距离法(最近邻居距离)、最长距离法(最远邻居距离)、类平均距离法(组间平均距离)、重心距离法;其中距离均采用欧式平方距离,对样本进行谱系聚类分析,并画出谱系聚类图;给出分为3类的聚类结果。并与(1)的结果进行比较 【实验步骤】(此部分主要包括实验过程、方法、结果、对结果的分析、结论等) 1 1)

windows2012故障转移群集

Windows server 2012 Hyper-V故障转移群集 和终端用户相比,企业用户对于业务的连续性和可靠性更为在意。相对而言,企业一般不会将追逐单一硬件的性能排在第一位。 如何衡量业务是否持续可用,一般使用"x 个9"这种方式来定义。如我们常说的"3 个9",即表示年可用性为99.9%,也即意味着一年只能有76 个小时的系统停机时间。对于单台物理服务器而言,这意味着该设备一年内不能出现硬件损坏的情况,否则更换配件和重新上架的时间过长,很容易导致可用性等级超出这个标准。 像"5 个9",甚至"6 个9"这种高可用性是如何实现的呢?可想而知,通过单台物理服务器来实现这种目标将是非常苛刻且成本高昂的。 常见的可用性与相应的可允许停机时间如表8-1 所示。 为了满足企业对业务持续可用的追求,降低年故障停机时间,系统、网络、存储各大厂商都引入了"群集"的概念。"群集"的作用是通过多台硬件同时运行来实现的,当故障发生时,通过快速且自动化的切换故障服务器,从而实现业务的持续运行。和传统的硬件故障或网络故障发生后,需要人为参与排障不同的是,群集技术是不需要人为参与的,可以做到全自动运行。当故障发生时第一时间转移故障节点,从而极大限度的提升业务持续可用的能力。 Windows Server 2012 R2 作为新一代的Cloud OS,其Hyper-V 角色自然也拥有"群集" 的能力。Windows 下的群集技术被称之为"故障转移群集",Hyper-V 角色的故障转移群集目的很明确:当群集内某一台Hyper-V 主机出现故障无法提供服务时,可由群集内的其他主机快速接管任务,继续为用户提供持续可用的服务。

群集技术:三款主流服务器集群软件

群集技术:三款主流服务器集群软件 【导读】:在双机热备的架构中,除了要考虑切换时间外,要根据每个系统的作业环境,包括网路系统是单网或是双网,数据库的安装和作业内容及用户端的设备是经由广域网路、区域网路接入不同用户有不同的需求,而要求有不同的切换模式,所以选择不同的切换模式,可以使用户端的改变达到最少的程度。ROSE HA根据不同的行业及各行业不同的需求设计多种备援模式以弹性的调适用户的最佳组合及选择。LifeKeeper提供了基于Windows NT (2000),Linux,UNIX多平台操作系统的容错软件并同时支持远程灾难备份LifeKeeper提供数据、应用程序和通信资源的高度可用性。LanderCluster产品系列包括双节点产品和多节点产品LanderCluster-MN。主要解决用户关键业务系统的高可用性、可管理性、系统整合、系统配置优化的问题。 1、ROSE HA 服务器集群软件 在双机热备的架构中,除了要考虑切换时间外,要根据每个系统的作业环境,包括网路系统是单网或是双网,数据库的安装和作业内容及用户端的设备是经由广域网路、区域网路接入不同用户有不同的需求,而要求有不同的切换模式,所以选择不同的切换模式,可以使用户端的改变达到最少的程度。 ROSE HA根据不同的行业及各行业不同的需求设计多种备援模式以弹性的调适用户的最佳组合及选择。 ROSE HA系统运作方式

在正常的运作情形之下,主机之间透过冗余侦测线路互相侦测,当任一主机有错误产生时,ROSE HA提供严谨的判断与分析,确认主机出错之后,才完全启动备援接管动作。 ※支持各种操作系统平台 ※支持众多的UNIX平台(如:IBM、DEC、HP、NCR、SUN、SGI、NEC、SIEMENS 等) ※支持众多的PC平台的Unix系统(如:SCO/Unix、Solraris X86等) ※支持各种数据库:MS-SQL、Oracle 、Informix、Sysbase、Excheng 、Lotus/Nose、 DB2等 接管动作包括 ※文件系统( File System) ※数据库( Database) ※网络地址( IP Address) ※应用程序(AP) ※系统环境(OS) ※容错备援运作过程

相关文档
最新文档