小白到运维工程师自学之路 第三十七集 (mha高可用集群)

news/2024/11/30 7:33:25/

一、概述

        MHA(Master High Availability)是一个开源的MySQL高可用性解决方案,它可以自动监测MySQL主节点的状态,并在主节点发生故障时自动将从节点提升为新的主节点,从而实现MySQL的高可用性。MHA集群通常由多个MySQL实例组成,其中一个是主节点,其余的是从节点。MHA集群可以在主节点故障时自动进行故障转移,从而保证MySQL服务的高可用性和可靠性。MHA集群的优点包括:自动化管理、高可用性、快速故障转移、易于部署和维护等。

二、工作原理

1. MHA的主要组件包括manager节点、monitor节点和各个MySQL节点。manager节点是MHA的控制节点,用于管理和监控MySQL集群的状态;monitor节点是用于监控MySQL主节点状态的节点;各个MySQL节点包括主节点和备用节点。

2. MHA的manager节点会定期向monitor节点发送心跳包,以检测monitor节点是否正常工作。如果monitor节点出现故障,manager节点会自动将monitor节点的角色切换到另一个可用的monitor节点。

3. 当MySQL主节点出现故障时,monitor节点会检测到主节点的状态变化,并向manager节点发送通知。manager节点会根据预定义的切换策略,自动将备用节点切换为新的主节点,从而实现MySQL服务的高可用性。

4. 在切换过程中,MHA会自动执行一系列的操作,包括停止原来的主节点、启动新的主节点、更新DNS记录等。这些操作可以确保MySQL服务的连续性和数据一致性。

三、准备工作

1、三台虚拟机能互相通联

2、每台虚拟机关闭防火墙

3、每台虚拟机安装MHA、SSH、Mariadb

四、配置

1、配置IP节点

vim /etc/hosts    打开自带的域名服务
写入192.168.1.250  syh1
192.168.1.251  syh2
192.168.1.252  syh3

 2、配置免密登录

ssh-keygen -t rsa   生成密钥(每一台服务器都要生成)ssh-copy-id -i .ssh/id_rsa.pub root@syh1  复制密钥(在主、从服务器中复制管理服务器的密钥)scp .ssh/authorized_keys root@syh2:.ssh/  将密钥上传到syh2、syh3

生成密钥

复制密钥

 上传密钥

 测试(ok 成功了)

3、配置主从复制

首先配置主服务器(syh2)

yum -y install epel-release                          安装epel源
yum -y install mariadb mariadb-server                安装mariadb
rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm        安装mha
 vim /etc/my.cnf    修改配置文件server-id = 1                ID为1  表示这是主服务器
log-bin = master-log         启用这个二进制文件
relay-log = relay-log
skip_name_resolve

systemctl start mariadb   启动服务
mysql        进入数据库grant replication slave on *.* to ‘slave’@'%' identified by '123'; 授权用户给从库使用 密码是123MariaDB [(none)]> grant all on *.* to ‘mha’@'%' identified by '123'; 授权用户给mariadb使用密码是123show master status;        查看主服务器的位置信息

 配置从服务器

yum -y install mariadb mariadb-server epel-release  安装mariadb epelrpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm       安装mha
vim /etc/my.cnf  配置从服务器server-id = 2            id为2 表示这是从服务器         
relay-log = relay-log    开启这个二进制文件         
log-bin = master-log         
read_only = ON               
relay_log_purge = 0           
skip_name_resolve              
log_slave_updates = 1

 

systemctl start mariadb   开启服务
mysql   进入数据库change master to master_host='192.168.1.251',master_user='slave',master_password='123',master_log_file='master-log.000003',master_log_pos=529;    指定主服务器的信息start slave;  开启从服务器grant all on *.* to ‘slave’@'%' identified by '123'; 授权给mha服务器使用

 配置manager管理服务器

yum -y install mariadb mariadb-server epel-release   安装mariadb  epelyum -y install mha4mysql-node-0.56-0.el6.noarch.rpm mha4mysql-manager-0.56-0.el6.noarch.rpm 安装mha
mkdir /etc/mha_master   
vim /etc/mha_master/mha.cnf  创建manager配置文件
[server default]
user=mha                                     mha的用户
password=123                                 用户密码
manager_workdir=/etc/mha_master/app1         管理节点上的工作路径
manager_log=/etc/mha_master/manager.log      日志路径
remote_workdir=/mydata/mha_master/app1       被管理节点的工作路径        
ssh_user=root                                管理工具连接用户的名称
repl_user=slave                              管理工具连接从用户的密码
repl_password=123                            管理工具连接用户的密码
ping_interval=1                              管理工具检测MySQL主从复制状态的时间间隔
[server1]                                    主节点
hostname=192.168.1.251                       主节点IP
ssh_port=22                                  主节点端口
candidate_master=1                           
[server2]                                    从节点
hostname=192.168.1.252                       从节点IP
ssh_port=22                                  从节点端口
candidate_master=1

masterha_check_ssh --conf=/etc/mha_master/mha.cnf  对各个节点进行检测

masterha_check_repl --conf=/etc/mha_master/mha.cnf   检查管理的MySQL复制集群的连接配置参数是否OK

 

以上就是MHA高可用集群的配置

如有错误欢迎各位大佬批评指正,我们共同进步


http://www.ppmy.cn/news/487178.html

相关文章

Yolov8优化:引入Soft-NMS,提升密集遮挡场景检测精度

1.Soft-NMS介绍 论文地址:https://arxiv.org/pdf/1704.04503.pdf NMS需要优化的参数: IoU 的阈值是一个可优化的参数,一般范围为0~0.5,可以使用交叉验证来选择最优的参数。 R-CNN会从一张图片中找出n个可能是物体的矩形框,然后为每个矩形框为做类别分类概率: 就…

中星9号接收机各厂家芯片资料大全和升级接口针脚定义

品牌 产品型号 芯片配置 海尔 2晶10芯 IC:HI2023E11085812 海尔高清OST-666 2晶6芯 IC:M88VS2000241674K.1M88TS2020 海尔高清OST-666 3晶12芯 IC:High032EHis121M88TS2020 海尔 3晶10芯 (9针接口) IC:HI2023E11085812ESMTM12L64164A-GNR1T80AB 海尔高清OST-666 2晶6芯 I…

两轮车造爆款,爱玛的时尚战略胜算几何?

市场越卷,爆款的意义越大。 电动车行业就是这样(本文仅指两轮电动车,如电动自行车、电动摩托车等出行工具),在CR2>45%、CR8>80%的市场格局下,行业竞争早已进入巷战阶段。 对头部的几个品牌&#xf…

循踪讲述:成都的夜,有一盏灯为你亮

成都的夜晚总是这样,热闹而梦幻。霓虹灯下的酒吧一条街,你看着手里冒着蒸汽的小龙虾,却心里想着那个人。那个曾经一起在脚手架上挥汗如雨,携手走过平淡岁月,然后在灯红酒绿的生活里逐渐远离的人。 他,一个手…

ios设备解锁---iToolab UnlockGo mac

怎么解锁iPhone / iPad呢?iToolab UnlockGo可以快速从iPhone,iPad和iPod touch删除屏幕密码,只需几分钟!能够删除iCloud激活锁,从iPhone,iPad和iPod touch解锁iCloud激活锁并能够进入您的设备! …

解决MacBook合盖锁屏

一、在App Store下载软件Amphetamine 二、打开软件后点击偏好设置-触发器,新增一个触发器 三、其中,取消选择“当显示器睡眠时允许系统睡眠”,新增触发条件-显示器,显示器数量输入1,添加触发条件,点击保存 …

苹果M1 iPad Pro 有什么新功能?

5 月 27 日消息 流行的 iOS 相机应用 Halide 开发者 Sebastiaan de With 今天分享了新的 11 和 12.9 英寸 iPad Pro 的摄像头分析,并发现了其隐藏的微距功能。iPad Pro 的摄像头采用了与 iPhone 摄像头不同的镜头设计,这使得它能够对离传感器更近的东西进…

研究人员成功绕过iPad的iOS激活锁

近日数个报道均指出,有安全研究人员通过此前未知的Bug成功绕过了苹果的激活锁保护机制,最先发现此漏洞的为安全研究人员Hemanth Joseph,他在11月份购买一份从eBay拍得的iPad上成功通过此方法绕过激活锁。 简而言之,Joseph发现了通…