Date: 11月 29, 2018
循序渐进:如何创建没有共享存储的双节点MySQL群集,第1部分
运行MySQL集群的主要优势显然是高可用性(HA)。要从这种类型的解决方案中获得最大收益,您需要尽可能消除尽可能多的潜在单点故障。传统观点认为,如果没有某种类型的共享存储,您无法形成集群,这在技术上代表了集群架构中的单点故障。但是,有解决方案。适用于Linux的SteelEye Protection Suite(SPS)允许您通过在群集节点之间提供实时数据复制来将存储作为单点故障排除。让我们看一个典型的场景:您构建一个利用本地复制存储来保护MySQL数据库的集群。
为了创建一个没有共享存储的2节点MySQL群集,我们假设您正在实验室环境中使用SPS的评估副本。我们还假设您已确认主服务器和辅助服务器以及网络都满足运行此类设置的要求。(您可以在SIOS SteelEye Protection Suite for Linux MySQL with Data Replication Evaluation Guide中找到这些要求的详细信息。)
创建没有共享存储的双节点MySQL群集的第一步
在开始设置群集之前,您需要配置存储。要复制的数据需要驻留在单独的文件系统或逻辑卷上。请记住,目标磁盘的大小,无论是使用分区还是逻辑卷,都必须等于或大于源。在此示例中,我们假设您正在使用磁盘分区。(但是,LVM也完全受支持。)首先,对本地存储进行分区以与SteelEye DataKeeper一起使用。在主服务器上,标识要用作MySQL存储库的空闲未使用磁盘分区或创建新分区。使用fdisk实用程序对磁盘进行分区,然后格式化分区并将其临时安装在/ mnt。将/ var / lib / mysql /中的任何现有数据移动到此新磁盘分区中(假设默认的MySQL配置)。卸载然后重新安装/ var / lib / mysql中的分区。您不需要将此分区添加到/ etc / fstab,因为它将由SPS自动挂载。在辅助服务器上,像在主服务器上一样配置磁盘。
安装MSQL
接下来你将处理MySQL。在主服务器上,安装mysql和mysql-server RPM软件包(如果系统上尚不存在)并应用任何必需的依赖项。验证您的本地磁盘分区是否仍安装在/ var / lib / mysql中。如有必要,请初始化一个示例MySQL数据库。确保MySQL数据目录(/ var / lib / mysql)中的所有文件都具有正确的权限和所有权,然后从命令行手动启动MySQL守护程序。(注意:不要通过service命令或/etc/init.d/脚本启动MySQL。)连接mysql客户端以验证MySQL是否正在运行。更新并验证MySQL配置的root密码。然后创建一个MySQL配置文件,例如此处显示的示例文件:—- #cat /var/lib/mysql/my.cnf [mysqld] datadir = / var / lib / mysql socket = / var / lib / mysql /mysql.sock pid-file = / var / lib / mysql / mysqld.pid user = root port = 3306#默认使用旧密码格式与mysql 3.x#clients(使用mysqlclient10兼容包的那些)兼容。old_passwords = 1#建议禁用符号链接以防止出现各种安全风险; #这样做,取消注释这一行:#symbolic-links = 0 [mysqld_safe] log-error = / var / log / mysqld.log pid-file = / var / run / mysqld / mysqld.pid [client] user = root password = SteelEye —-在本例中,我们将此文件放在稍后要复制的同一目录中(/var/lib/mysql/my.cnf)。删除原始MySQL配置文件(在/ etc中)。在辅助服务器上,如有必要,安装mysql和mysql-server RPM软件包,应用所有依赖项,并确保MySQL数据目录(/ var / lib / mysql)中的所有文件都具有正确的权限和所有权。
安装SPS for Linux
接下来,安装SPS for Linux。为了便于安装,SIOS为SPS for Linux提供了统一的安装脚本(称为“设置”)。有关如何获取此软件的说明,请参阅SPS for Linux评估许可证密钥附带的电子邮件。在主服务器和辅助服务器上下载软件和评估许可证密钥。在每台服务器上,运行安装程序脚本,该脚本将安装少量必备RPM,核心群集软件以及所需的任何可选ARK。在这种情况下,您需要安装MySQL ARK(steeleye-lkSQL)和DataKeeper(即数据复制)ARK(steeleye-lkDR)。通过/ opt / LifeKeeper / bin / lkkeyins命令应用许可证密钥,并通过其启动脚本/ opt / LifeKeeper / lkstart启动SPS for Linux。此时,您已在两个节点上安装,许可和运行SPS,并且已配置要保护的磁盘和MySQL数据库。在下一篇文章中,我们将查看无共享群集过程中的其余步骤:创建以下内容
- 主服务器和目标服务器之间的通信(Comm)路径,即心跳
- 一个IP资源
- 镜像和启动数据复制
- MySQL数据库资源
- MySQL IP地址依赖
有兴趣了解如何为您的项目创建没有共享存储的双节点MySQL群集,与我们聊天或阅读我们的成功案例。经Linuxclustering许可转载