Mysql NDB Cluster 集群(CentOS 7)安装笔记
NDB集群核心概念
NDBCLUSTER(也称为NDB)是一个内存存储引擎,提供高可用性和数据保存功能。
NDBCLUSTER存储引擎可以配置一系列故障转移和负载平衡选项,但从集群级别的存储引擎开始是最容易的。NDB集群的NDB存储引擎包含一整套数据,仅依赖于集群本身中的其他数据。
在许多情况下,“节点”一词用于表示计算机,但在讨论NDB集群时,它意味着一个进程。可以在一台计算机上运行多个节点;对于运行一个或多个集群节点的计算机,我们使用集群主机一词。
有三种类型的集群节点,在最小的NDB集群配置中,必须至少有三个节点,每种类型一个:
- 管理节点:这种类型的节点的作用是管理NDB集群中的其他节点,执行提供配置数据、启动和停止节点以及运行备份等功能。由于此节点类型管理其他节点的配置,因此应在任何其他节点之前首先启动这种类型的节点。管理节点使用命令ndb_mgmd启动。
- 数据节点:这种类型的节点存储集群数据。数据节点的数量与碎片副本的数量一样多,乘以碎片数量。例如,使用两个片段副本,每个副本有两个片段,您需要四个数据节点。一个片段副本足以存储数据,但不提供冗余;因此,建议使用两个(或更多)片段副本来提供冗余,从而提供高可用性。数据节点使用命令ndbd 或ndbmtd 开始.
- NDB集群表通常完全存储在内存中,而不是磁盘上(这就是为什么我们将NDB集群称为内存数据库)。然而,一些NDB集群数据可以存储在磁盘上;
- SQL节点:这是一个访问集群数据的节点。就NDB集群而言,SQL节点是使用NDBCLUSTER存储引擎的传统MySQL服务器。SQL节点是一个mysqld进程,从–ndbcluster和–ndb-connectstring选项开始,本章其他地方对此进行了解释,可能还带有额外的MySQL服务器选项。SQL节点实际上只是一种专门的API节点,它指定了访问NDB集群数据的任何应用程序。
API节点的另一个例子是ndb_restore实用程序,用于恢复集群备份。可以使用NDB API编写此类应用程序。
期望在生产环境中采用三节点设置是不现实的。这种配置不提供冗余;要从NDB集群的高可用性功能中受益,您必须使用多个数据和SQL节点。也强烈建议使用多个管理节点。
后面希望有更多人关注,会做一系列的专题来出一些实际使用案例,供大家参考使用。
安装要求
- 安装环境:CentOS 7
- 软件名称:mysql-cluster-gpl-7.6.31-linux-glibc2.12-x86_64
- 软件安装位置:/usr/local/mysql
- 数据存放位置:/var/mysql/data
- 日志存放位置:/var/mysql/logs
集群设计
- 管理节点:172.16.0.133
- SQL节点1:172.16.0.134
- SQL节点2:172.16.0.135
- 数据节点1:172.16.0.136
- 数据节点2: 172.16.0.137
安装前的系统配置
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum