Linux集群系列之一——集群基础概念

集群

场景一

LAMP 
   http,web object简单无状态连接 
   200,50dynamic 
      prefork,2M 
      10M 
         50*10+150*2 M 

apache:进程切换,查询mysql, 网络IO,磁盘IO

200--->1000 
     800,200 
     1600+2000 
解决方式
Scale ON  :向上扩展   换更好的硬件,如换主机 
注意:Scale On向上扩展,硬件增长比例与性能增长比例是不成线性的。而且相对于成本是高昂的。

Scale Out:  向外扩展  

需要解决的问题

如何分配调度多台主机:
DNS解析

问题:DNS缓存以及DNS缓存服务器的缓存,以及每台主机都必须有独立IP。

方案

---->Load Balancing:LB  负载均衡 

进行调度,分配,分发(调度算法):

Round Robin: 轮调 
同一个客户端请求,并发的资源可能来自多台服务器。
服务器的硬件,性能有所差异.
WRR:weight Round Robin 加权轮调 
考虑公平以及效率,权重weight。能者多劳。

场景二

不同服务器之间数据的同步
独立出来一台主机做为MYSQL服务器使用。
不同服务器中的数据保存在同一mysql服务器中,解决数据同步问题。
注意:发帖中的附件不能保存在数据库中,附件保存在其他存储设备中,数据库里面仅是一个指针指向附件具体存储的位置。
为了是附件也能在不同服务器进行访问,数据同步,可以在独立出来一台主机作为NFS服务器使用,附件则保存在NFs中,多台服务器都可以直接访问和存储。
网页的页面文件不应该放在NFS上,页面文件要放在本地服务器上,这样减少请求响应的时间。每台本地服务器上都存放页面文件的话,页面更新困难。
为了解决页面文件的更新困难问题,使用一台作为主的页面文件主机,每次只是更新这一台,并通知其他服务器,让其他主机主动过来参照更新页面文件。
实现 :rsync 只复制有差异的文件 ,可以远程
同步复制文件机制:
 例行计划任务+通知机制(更新即通知)
 
 机制: rsync+inotify 
 实时监控,页面一有更新,就通知,从服务器就来复制。
集群
Cluster 
LB:   load Balancing: 负载均衡集群 
HA:High Availiable 高可用 

注意:负载均衡集群具有高可用的能力,但不是高可用集群。高可用集群的主机之间要进行通信,发送heartbeat,以及宕机后,快速切换服务。
 而负载均衡集群的高可用能力是通过上面的调度服务器调度来实现。
  调度服务器如何知道后端服务器的是否在线或宕机,而进行调度分配?
   对后端服务器的健康检查;
   health check:健康检查   
   检查多次,检查在是否可用,不可用,则重新调度,即从集群中移除,如果检查发现,有可用的集群服务器,就将其加入到集群服务器中,接受调度分配。
  '检查活到死,死到活'

当服务器增多,调度器的资源有限,可能会成为整个系统的瓶颈。
为了解决上述问题,进行功能切分。不同功能进行不同集群。使调度器的效率很高。
   单一调度器,可能会出现宕机,损坏等,所以要为调度器配备一个备用的调度服务器。    
   
   primary-------standby 
standy:具备和primary配置一样,IP地址进行切换,自己服务启动。
primary 和 standby时刻通信,发送heartbeat(心跳数),一旦宕机,立即启动,进行切换。   

调度器:

高可用和负载均衡:
负载均衡集群以提高服务的并发处理能力为着眼点的,高可用集群是提高系统始终在线能力为着眼点的。
LB:增加处理能力的,并发处理能力。
HA:增加系统的服务可用性
可用性= 正常在线时间/正常在线时间+故障处理时间   

 在线时间/(在线时间+故障时间)
 99%,99.9%提高了10倍的可用性 
 99.99% 99.999%
```language
高可用:HA
web 
   primary:IP,web app, 页面----- standby:IP,web app,页面  
   
                   NFS (瓶颈)
LAMP场景:
共享存储:
提高资源利用:
整合起来,web  和 mail 互为高可用 。运行的服务是分开的。

host1:IP1  web       host2:IP2   mail 
注意:某个资源只能被某个节点所占用
node:节点   主机 

host1: 
host2:
host3:   
  多个调度服务器互为高可用集群,要设置优先级,以及时时发送heartbeat,使用多播,组播的方式。还有集群事务信息。
  
DC:推选的事务协调员,如果挂了,就重新推选。

共享存储:
   1.RAID   DAS   块级别
   2.NFS    NAS   文件级别 

NAS 1000mbps 12.5MB/s 
DAS  320Mbps    
   


DAS:Direct Attached Storage直接附加存储
NAS:Network Attached Storage 网络附加存储。   
  
RAID与NFS
NFS对前端服务器而言,NFs就是文件共享服务器。数据请求是在文件级别上完成的。网络上是以文件
RAID,是磁盘阵列,是通过主板上的总线连接到RAID上,相当于本地存储设备,数据是在块级别上交换的。

磁盘:块级别  
    一个文件包含多个块。

    注意:通过DAS机制,若两个进程工作在一台主机上同时处理同一个文件,可以通过加锁,防止同时处理同一个文件。
    当两个进程工作在两个主机上,都同时处理DAS上的主机同一文件。
注意:两个主机同时加载同一个文件到各自内存里,修改后,将文件写回到DAS里,如果交叉,会是存储混乱。
NFS自身可以锁定两个同时写的操作。阻塞另一台主机的写操作。

如果由于没有及时传递heartbear信息,结果切换到备用的调度服务器,而主调度服务器还在写数据到DAS中,而standby也同时写同一个文件。左右就不协调了,称为split-brain:脑裂

解决办法:

1.STONITH:(Shoot The Other Node In The Head)
通过电源交换机(切断主机的电源)
2.fencing:隔离
   拒绝某一节点访问某一资源的机制,使服务器和存储设备断开。

 隔离级别:
    1.节点级别:STONTIN
    2.资源级别

注意:为了防止脑裂,集群分裂,高可用集群至少有3个节点,奇数个节点,仲裁机制,少数服从多数。

补充:
脑裂:本来一个大脑的两半球互相配合,变成了分裂成两个独立的大脑,都认为对方已死。在集群环境中,有这么几种可能造成"Split-Brain"现象:
        1、在集群环境中的节点间的心跳线同时断掉后,集群系统所处于的一种特殊状态。例如节点1和2组成一个集群,突然1和2间的心跳同时都断了,如果此前节点1正在运行应用,心跳都断掉后2开始去接管应用,强行加载数据,此时就是split-brain。
       2、集群中节点因为处理器忙或者其他原因暂时停止响应时,其他节点可能误认为该节点“已死”。
后果:节点间争夺共享磁盘(即资源)的访问权,都对共享文件系统产生读写操作,从而导致共享磁盘文件系统损坏。 
解决办法:使用硬盘心跳,scsi reservation,以及最极端的power fence。

HP:高性能集群(HBC)

High Performance 
   向量机 
   
   
数据存储,以及磁盘IO可能会产生瓶颈。

化整为零--->合并整合
每台计算机只处理所有数据的一部分,且每台计算机上只存储一部分数据。
每个节点既是计算节点,也是存储节点。

分布式存储:
   分布式文件系统
   
并行计算(处理)集群:
    分布式文件系统
    将大大任务切割为是小任务,分别进行处理的机制。
HP:科学运算集群
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,651评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,468评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,931评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,218评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,234评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,198评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,084评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,926评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,341评论 1 311
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,563评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,731评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,430评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,036评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,676评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,829评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,743评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,629评论 2 354

推荐阅读更多精彩内容

  • Linux服务器集群系统各概念辨析 计算机集群 WEB的负载均衡、集群、高可用解决方案 计算机集群 计算机集群简称...
    Zhang21阅读 3,288评论 0 18
  • 《老男孩Linux运维》Nginx Documentation 集群简介 集群就是指一组(若干)相互独立的计算机,...
    Zhang21阅读 3,395评论 0 51
  • 一、什么是负载均衡 首先我们先介绍一下什么是负载均衡:负载平衡(Load balancing)是一种计算机网络技术...
    小流江海阅读 1,007评论 0 2
  • 【摘要】 面对大量用户访问、高并发请求,海量数据,可以使用高性能的服务器、大型数据库,存储设备,高性能Web服务器...
    静修佛缘阅读 4,559评论 0 24
  • 有时候,我真的觉得自己一无是处。 有时候,我真的想做出成绩让他们高兴高兴。 有时候,我真的觉得我有那个能力让他们安...
    染染夏光阅读 331评论 2 2