• Keepalived+LVS+MysqlCluster(7.1.10)架构方案(一)


     Keepalived+Mysql-Cluster架构概述

    Mysql-cluster本身实现了高可用,但是其sql节点并没有实现负载均衡,单独使用会出现单点故障,因此用Keepalivedmysqld节点提供负载均衡与高可用性,防止单点故障,此外性能也能得到很大的提升!


    Mysql-Cluster简介

    简单的说,MySQL Cluster 实际上是在无共享存储设备的情况下实现的一种完全分布式

    数据库系统,其主要通过NDB Cluster(简称NDB)存储引擎来实现。MySQL Cluster 刚刚

    诞生的时候可以说是一个可以对数据进行持久化的内存数据库,所有数据和索引都必须装载

    在内存中才能够正常运行,但是最新的MySQL Cluster 版本已经可以做到仅仅将所有索引和索引数据装载在内存中即可,实际的数据可以不用全部装载到内存中,架构如下图所示:

    由上图可知MySQL Cluster 一组计算机构成,每台计算机上均运行着多种进程,包括MySQL服务器,NDB Cluster 的数据节点,管理服务器,三个节点的功能如下:

    1  管理(MGM)节点:这类节点的作用是管理MySQL Cluster内的其他节点,如提供配  置数据、启动并停止节点、运行备份等。由于这类节点负责管理其他节点的配置,    应在启动其他节点之前首先启 动这类节点。MGM 点是用命令“ndb_mgmd”启动的。

    2  数据节点:这类节点用于保存 Cluster的数据。数据节点的数目与 副本的数目相关,是片段的倍数。例如,对于两个副本,每个副本有两个片段,那么就有4个数据节点。不过没有必要设置多个副本。数据节点是用命令“ndbd”启动的。

    3  SQL节点:这是用来访问 Cluster数据的节点。对于MySQL Cluster,客户端节点是使用NDB Cluster存储引擎的传统MySQL服务器。通常,SQL节点是使用命令“mysqld –ndbcluster”启动的,或将“ndbcluster”添加到“my.cnf”后使用“mysqld”启动


      Mysql-cluster的优缺点

    优点:

    a)         99.999 %的高可用性

    b)         快速的自动失效切换

    c)         灵活的分布式体系结构,没有单点故障

    d)         高吞吐量和低延迟

    e)         可扩展性强,支持在线扩容

     

     

    缺点:

    a)         存在很多限制,比如:不支持外键,数据行不能超过8K(不包括BLOBtext中的数据)

    b)         部署、管理、配置很复杂

    c)         占用磁盘空间大,内存大

    d)         备份和恢复不方便

    e)         重启的时候,数据节点将数据load到内存需要很长时间


  • 相关阅读:
    mongodb添加登录验证--副本集环境
    kibana添加认证及权限--elasticsearch集群版
    Rabbitmq之exchange
    Elasticsearch集群下安装IK中文分词器
    cerebro安装--Elastic Stack之三
    elasticsearch-head安装方法--Elastic Stack之二
    动画小记——点击头像逐渐放大
    埋点
    picasso Failed to decode stream.
    记Sniper
  • 原文地址:https://www.cnblogs.com/feihongwuhen/p/7170054.html
Copyright © 2020-2023  润新知