zoukankan      html  css  js  c++  java
  • Linux----------集群介绍

    一、Cluster概念

    业务系统扩展方式:
    Scale UP:向上扩展,增强设备的性能
    Scale Out:向外扩展,增加设备,调度分配问题,即Cluster

    1.1 集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源,这些单个的计算机系统就是集群的节点(node)。集群提供了以下关键的特性。

    (一) 可扩展性。集群的性能不限于单一的服务实体,新的服务实体可以动态的加入到集群,从而增强集群的性能。

    (二) 高可用性。集群通过服务实体冗余使客户端免于轻易遭遇到“out of service”警告。当一台节点服务器发生故障的时候,这台服务器上所运行的应用程序将在另一节点服务器上被自动接管。消除单点故障对于增强数据可用性、可达性和可靠性是非常重要的。

    (三) 负载均衡。负载均衡能把任务比较均匀的分布到集群环境下的计算和网络资源,以便提高数据吞吐量。

    (四) 错误恢复。如果集群中的某一台服务器由于故障或者维护需要而无法使用,资源和应用程序将转移到可用的集群节点上。这种由于某个节点中的资源不能工作,另一个可用节点中的资源能够透明的接管并继续完成任务的过程叫做错误恢复。

    1.2 分布式与集群的联系与区别如下:

    (一) 分布式是指将不同的业务分布在不同的地方。

    (二) 而集群指的是将几台服务器集中在一起,实现同一业务。

    (三) 分布式的每一个节点,都可以做集群,而集群并不一定就是分布式的。而分布式,从狭义上理解,也与集群差不多,但是它的组织比较松散,不像集群,有一定组织性,一台服务器宕了,其他的服务器可以顶上来。分布式的每一个节点,都完成不同的业务,一个节点宕了,这个业务就不可访问了。

    1.3 集群主要分成三大类:

    HA:高可用集群(High Availability Cluster)。

    LBC:负载均衡集群/负载均衡系统(Load Balance Cluster)

    HPC:科学计算集群(High Performance Computing Cluster)/高性能计算(High Performance Computing)集群。

    1.4 分布式系统:

    分布式存储:云盘

    分布式计算:hadoop,Spark

    1.5 Cluster分类

    硬件:
    F5 Big IP
    A10
    Citrix Netscaler

    软件:
    lvs: Linux Virtual Server,负载调度器
    nginx: 支持四层调度,七层负载均衡
    haproxy : 专业的代理服务器,支持四层调度
    ats: apache traffic server
    perbal : perl编写
    pound

    1.51 cluster工作的协议层

    基于工作的协议层划分:

    传输层(通用):DPORT
    LVS:
    nginx: stream
    haproxy: mode tcp

    应用层(专用):针对特定协议,自定义的请求模型
    proxy server:
    http: nginx,httpd,haproxy(mode http),..
    fastcgi: nginx,httpd,...
    mysql: mysql-proxy,...

    1.6 Cluster相关

    回话保持:负载均衡
    (1) session sticky:同一用户调度固定服务器
    Source IP:LVS sh算法(对某一特定服务而言)
    Cookie
    (2) session replication:每台服务器拥有全部session
    session multicast cluster
    (3) session server:专门的session服务器
    Memcached,Redis

    1.7 HA集群实现方案

    keepalived : vrrp协议
    ais:应用接口规范
    heartbeat
    cman+rgmanager(RHCS)
    coresync_pacemaker

  • 相关阅读:
    在Docker中启动Nacos-Server
    maven配置阿里云公共仓库
    Centos7动态IP改静态后SSH很慢
    Vue+NodeJS的跨域请求Session不同
    一款非常简洁漂亮方便调用的jQuery前端分页
    springmvc后台接收List参数的几种办法
    net use命令详解(转)
    c#开发windows服务
    c# base64转字符串
    关于web api 验证
  • 原文地址:https://www.cnblogs.com/wangchengshi/p/10916826.html
Copyright © 2011-2022 走看看