全球旧事资料 分类
OracleRAC集群简介
对于RAC来说,最重要的还是要理解内部原理和体系结构。安装不是非常难的事情。排错和维护都离不开体系结构以及内部原理。集群分类1、高性能计算计算任务分配到不同计算机节点来提高整体计算能力,主要应用在科学计算领域。主要利用的是并行计算。2、负载均衡集群(LB)把业务的负载流量尽可能的平均合理的分配到集群的各个节点上,每个节点都可以处理一部分负载,并且可以根据负载情况进行动态的平衡。负载均衡算法不是简单的平均,而是根据每个节点的可用资源或网络的特殊情况来进行优化分配。因此分配合理才是负载均衡的核心。3、高可用性(HA)侧重于提高系统的可用性,集成硬件和软件的容错性来实现整体服务的高可用性。如果某个节点发生故障,另外的节点代替他。RAC是真正的LB和HA的复合体。从某种意义上说,只有最终应用(数据库)才能实现真正意义上的LB,而绝大多数的集群都是HA。集群环境的特殊问题1、并发控制集群环境中,存在共享存储的问题。集群中各个节点对共享存储是对等的,所有节点对数据有相同的访问权限,因此需要某种机制来控制节点对数据的访问。在RAC中,采用的是DLM(DistributeLockMa
ageme
t)机制来进行实例间的并发控制。2、健忘症(Am
esia)如果集群环境的配置文件不是集中存放,每个节点都有一个本地副本,集群正常运行的时候,用户可以在任何节点修改集群的配置,并且这些更改都会自动同步到其他节点。如果节点1因为正常的维护需要关机,节点2修改了配置,然后关闭节点2启动节点1,因为之前节点2做的配置修改没有同步到节点1,所以将节点1启动以后,他仍然使用旧的配置文件,造成配置丢失。
f3、脑裂(splitbrai
)集群中,节点之间需要通过某种机制(心跳)了解彼此的健康情况,以确保各个节点协调工作。假设只是心跳出现故障,各个节点还在正常的工作,每个节点都认为其他节点宕机,自己是整个集群的唯一健在者,因此需要获得整个集群的“控制权”。存储是共享的,这就意味着灾难,这种情况就是“脑裂”。投票算法可以解决这个问题每个节点会在投票区记录自己的票数(自己收到了多少节点的心跳,一个心跳是一票),各个节点会读取其与节点的票数。如果一个集群分成了两个partitio
,一个partitio
是3个节点,一个partitio
是2个节点。那么3个节点的partitio
里面所有的节点的票数都是3,两个节点的partitio
里面所有节点的票数都是2拥有两个节点的partitio
会被踢出,自动重启。如r
好听全球资料 返回顶部