首页 数据库 mysql教程 MYSQL + MHA +keepalive + VIP安装配置(三)-----keepalived安装_MySQL

MYSQL + MHA +keepalive + VIP安装配置(三)-----keepalived安装_MySQL

Jun 01, 2016 pm 01:16 PM
web服务器 检测

一、概述

keepalived介绍:Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web 服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人 工做的只是修复故障的web服务器。

二、环境

vip:192.168.1.203/204mysql-master:192.168.1.231mysql-slave:192.168.1.232
登录后复制

三、keepalived安装

安装步骤两台机mysql-master、mysql-slave一样,如下:

1、下载地址:http://www.keepalived.org/software/keepalived-1.2.12.tar.gz

shell>wget http://www.keepalived.org/software/keepalived-1.2.12.tar.gz
登录后复制

2、安装环境

yum -y install openssl-devel
登录后复制

 否则会报如下错误

configure: error:!!! OpenSSL is not properly installed on your system. !!!!!! Can not include OpenSSL headers files.
登录后复制

3、安装

shell>tar -zxvfkeepalived-1.2.12.tar.gzshell>cd keepalived-1.2.12shell>./configure --prefix=/opt/keepalived --with-kernel-dir=/usr/src/kernels/2.6.32-431.el6.x86_64/shell>make shell>make install
登录后复制

 说明:

 --prefix:安装路径

 --with-kernel-dir:这个是重要的参数,这个参数并不表示我们要把Keepalived统进内核,而是指使用内核源码里面的头文件,也就是include目录。

  2.6.32-431.el6.x86_64可以通过

shell>uname -r 命令查看到
登录后复制

 4、配置

# cp /opt/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/# cp /opt/keepalived/etc/sysconfig/keepalived /etc/sysconfig/# mkdir /etc/keepalived# cp /opt/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/# cp /opt/keepalived/sbin/keepalived /usr/sbin/
登录后复制

 5、启动/停止

shell>service keepalived startshell>service keepalived stopshell>service keepalived restart
登录后复制

四、keepalived配置

1、mysql-master:192.168.1.231的配置

shell>vim /etc/keepalived/keepalived.conf
登录后复制
登录后复制

 配置如下:

global_defs { router_id mysql-master #修改为自己的主机名 notification_email { mengtao10@163.com #接收邮件,可以有多个,一行一个} #当主、备份设备发生改变时,通过邮件通知 notification_email_from lzyangel@126.com #发送邮箱服务器 smtp_server stmp.163.com #发送邮箱超时时间 smtp_connect_timeout 30 }##################第一部分###################vrrp_instance VI_1 {	state BACKUP#都修改成BACKUP	interface eth0#绑定的网卡	virtual_router_id 60 #默认51 主从都修改为60	priority 100		#优先级,在mysql-slave上LVS上修改成80	advert_int 1	nopreempt #不抢占资源,意思就是它活了之后也不会再把主抢回来	authentication {	# 认证方式,可以是PASS或AH两种认证方式	auth_type PASS	# 认证密码	auth_pass 1111	}virtual_ipaddress {	192.168.1.203	192.168.1.204#这可以增加多个VIP	}}##################第二部分###################virtual_server 192.168.1.203 3306 {	delay_loop 6	lb_algo wrr	lb_kind DR	nat_mask 255.255.255.0	persistence_timeout 50	protocol TCPreal_server 192.168.1.231 3306 {	weight 1	notify_down /root/mysql_down.sh	TCP_CHECK {	connect_timeout 10	nb_get_retry 3	connect_port 3306	}	}}
登录后复制

 2、mysql-master:192.168.1.232的配置

shell>vim /etc/keepalived/keepalived.conf
登录后复制
登录后复制

 配置如下:

global_defs { router_id mysql-master #修改为自己的主机名 notification_email { mengtao10@163.com #接收邮件,可以有多个,一行一个} #当主、备份设备发生改变时,通过邮件通知 notification_email_from lzyangel@126.com #发送邮箱服务器 smtp_server stmp.163.com #发送邮箱超时时间 smtp_connect_timeout 30 }##################第一部分###################vrrp_instance VI_1 {	state BACKUP#都修改成BACKUP	interface eth0#绑定的网卡	virtual_router_id 60 #默认51 主从都修改为60	priority 80		 #优先级,在mysql-master上LVS上修改成100	advert_int 1	authentication {	# 认证方式,可以是PASS或AH两种认证方式	auth_type PASS	# 认证密码	auth_pass 1111	}virtual_ipaddress {	192.168.1.203	192.168.1.204#这可以增加多个VIP	}}##################第二部分###################virtual_server 192.168.1.203 3306 {	delay_loop 6	lb_algo wrr	lb_kind DR	nat_mask 255.255.255.0	persistence_timeout 50	protocol TCPreal_server 192.168.1.232 3306 {	weight 1	notify_down /root/mysql_down.sh	TCP_CHECK {	connect_timeout 10	nb_get_retry 3	connect_port 3306	}	}}
登录后复制

 3、myslq_down.sh配置,两台机都要配置这一步!!!

    这里需要注意的是,notify_down /root/mysql_down.sh这个选项,这个是是在keepalived检测不到mysql的时候要执行的脚本,从上面的配置文件来看real服务器只有本机。那么,keeaplived如果启动,客户端也只是访问本机的mysql。nopreempt这个选下也得注意,这个是不抢占资源在优先级高的机器上配置就可以。
看下这个脚本的内容:

# vim /root/mysql_down.sh#!/bin/bashpkill keepalived# chmod +x /root/mysql_down.sh #授权可执行权限
登录后复制

 脚本内容就一条命令:pkill keepalived,主要作用是如果本机的mysql挂掉了,那么同时会杀死本机的keepalived,这样另外一台就会接替他工作,虚拟IP也会被另一台接管,如果不杀死keepalived虚拟IP不会被另一台接管,mysql访问也就不会切换过去。

 注意:必须要先启动MYSQL,再启动keepalived,否则keepalived启动后会运行mysql_down.sh脚本,等于自杀。

4、mysql-master(231)启动后查看IP的绑定情况,如下:

shell> ip a1: lo: <loopback> mtu 16436 qdisc noqueue state UNKNOWN 	link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00	inet 127.0.0.1/8 scope host lo	inet6 ::1/128 scope host 	 valid_lft forever preferred_lft forever2: eth0: <broadcast> mtu 1500 qdisc pfifo_fast state UP qlen 1000	link/ether 08:00:27:cc:92:22 brd ff:ff:ff:ff:ff:ff	inet 192.168.1.232/24 brd 192.168.1.255 scope global eth0	inet 192.168.1.203/32 scope global eth0	inet 192.168.1.204/32 scope global eth0	inet6 fe80::a00:27ff:fecc:9222/64 scope link 	 valid_lft forever preferred_lft forever</broadcast></loopback>
登录后复制

五、测试

1、231、232两台机同时启动MYSQL及Keepalived.

   通过win cmd 命令行的客户端(或程序)连接VIP:192.168.1.203或204,如下:

C:/Users/Duncan>mysql -h192.168.1.203 -usunney -psunneyWelcome to the MySQL monitor.Commands end with ; or /g.Your MySQL connection id is 1440Server version: 5.5.37-log MySQL Community Server (GPL)Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql|| performance_schema || sunney || test |+--------------------+5 rows in set (0.04 sec)mysql>
登录后复制
登录后复制

注意:这时存储的数据库是mysql-master(192.168.1.231)因为他是主库。配置 priority 100 优先级高。

2、mysql-slave(232)的机同时关闭MYSQL及Keepalived.这时关闭上以上的是一样的。因为他没有走这个库。

3、mysql-master(231)同时关闭MYSQL及Keepalived,mysql-slave(232)同时启动MYSQL及Keepalived

    切换很快,大概在2到3秒之间!

   通过win cmd 命令行的客户端(或程序)连接VIP:192.168.1.203或204,如下:

C:/Users/Duncan>mysql -h192.168.1.203 -usunney -psunneyWelcome to the MySQL monitor.Commands end with ; or /g.Your MySQL connection id is 1440Server version: 5.5.37-log MySQL Community Server (GPL)Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql|| performance_schema || sunney || test |+--------------------+5 rows in set (0.04 sec)mysql>
登录后复制
登录后复制

 成功!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

i7-7700无法升级至Windows 11的解决方案 i7-7700无法升级至Windows 11的解决方案 Dec 26, 2023 pm 06:52 PM

i77700的性能运行win11完全足够,但是用户却发现自己的i77700不能升级win11,这主要是受到了微软硬性条件的限制,所以只要跳过该限制就能安装了。i77700不能升级win11:1、因为微软限制了cpu的版本。2、intel只有第八代及以上版本可以直升win11。3、而i77700作为7代,无法满足win11的升级需求。4、但是i77700在性能上是完全能流畅使用win11的。5、所以大家可以使用本站的win11直装系统。6、下载完成后,右键“装载”该文件。7、再双击运行其中的“一键

摔倒检测,基于骨骼点人体动作识别,部分代码用 Chatgpt 完成 摔倒检测,基于骨骼点人体动作识别,部分代码用 Chatgpt 完成 Apr 12, 2023 am 08:19 AM

哈喽,大家好。今天给大家分享一个摔倒检测项目,准确地说是基于骨骼点的人体动作识别。大概分为三个步骤识别人体识别人体骨骼点动作分类项目源码已经打包好了,获取方式见文末。0. chatgpt首先,我们需要获取监控的视频流。这段代码比较固定,我们可以直接让chatgpt完成chatgpt写的这段代码是没有问题的,可以直接使用。但后面涉及到业务型任务,比如:用mediapipe​识别人体骨骼点,chatgpt给出的代码是不对的。我觉得chatgpt​可以作为一个工具箱,能独立于业务逻辑,都可以试着交给c

CentOS上搭建web服务器的安全审计与事件日志管理 CentOS上搭建web服务器的安全审计与事件日志管理 Aug 05, 2023 pm 02:33 PM

CentOS上搭建Web服务器的安全审计与事件日志管理概述随着互联网的发展,Web服务器的安全审计和事件日志管理变得越来越重要。在CentOS操作系统上搭建Web服务器后,我们需要关注服务器的安全性并保护服务器免受恶意攻击。本文将介绍如何进行安全审计和事件日志管理,并提供相关代码示例。安全审计安全审计是指对服务器的安全状态进行全面的监控和检查,及时发现潜在的

最佳实践:CentOS搭建web服务器的性能调优指南 最佳实践:CentOS搭建web服务器的性能调优指南 Aug 04, 2023 pm 12:17 PM

最佳实践:CentOS搭建web服务器的性能调优指南摘要:本文旨在为CentOS搭建web服务器的用户提供一些性能调优的最佳实践,旨在提升服务器的性能和响应速度。将介绍一些关键的调优参数和常用的优化方法,并提供了一些示例代码帮助读者更好地理解和应用这些方法。一、关闭不必要的服务在CentOS搭建web服务器时,默认会启动一些不必要的服务,这些服务会占用系统资

MIT最新力作:用GPT-3.5解决时间序列异常检测问题 MIT最新力作:用GPT-3.5解决时间序列异常检测问题 Jun 08, 2024 pm 06:09 PM

今天给大家介绍一篇MIT上周发表的文章,使用GPT-3.5-turbo解决时间序列异常检测问题,初步验证了LLM在时间序列异常检测中的有效性。整个过程没有进行finetune,直接使用GPT-3.5-turbo进行异常检测,文中的核心是如何将时间序列转换成GPT-3.5-turbo可识别的输入,以及如何设计prompt或者pipeline让LLM解决异常检测任务。下面给大家详细介绍一下这篇工作。图片论文标题:Largelanguagemodelscanbezero-shotanomalydete

五种常见的web服务器是什么 五种常见的web服务器是什么 Aug 25, 2022 pm 02:03 PM

五种web服务器是:1、IIS,是允许在公共Intranet或Internet上发布信息的Web服务器;2、Apache,是Apache软件基金会的一个开放源码的网页服务器;3、WebSphere Application Server,是一种Web应用程序服务器;4、Tomcat,是基于Java的Web应用软件容器;5、Lighttpsd,是一个开源Web服务器软件。

CentOS搭建web服务器前需注意的权限与访问控制策略 CentOS搭建web服务器前需注意的权限与访问控制策略 Aug 05, 2023 am 11:13 AM

CentOS搭建web服务器前需注意的权限与访问控制策略在搭建web服务器的过程中,权限与访问控制策略是非常重要的一环。正确设置权限和访问控制策略可以保护服务器的安全性,防止非授权用户访问敏感数据或者对服务器进行不当操作。本文将介绍在CentOS系统下搭建web服务器时需要注意的权限与访问控制策略,并提供相应的代码示例。用户与组的管理首先,我们需要创建一个专

改进的检测算法:用于高分辨率光学遥感图像目标检测 改进的检测算法:用于高分辨率光学遥感图像目标检测 Jun 06, 2024 pm 12:33 PM

01前景概要目前,难以在检测效率和检测结果之间取得适当的平衡。我们就研究出了一种用于高分辨率光学遥感图像中目标检测的增强YOLOv5算法,利用多层特征金字塔、多检测头策略和混合注意力模块来提高光学遥感图像的目标检测网络的效果。根据SIMD数据集,新算法的mAP比YOLOv5好2.2%,比YOLOX好8.48%,在检测结果和速度之间实现了更好的平衡。02背景&动机随着远感技术的快速发展,高分辨率光学远感图像已被用于描述地球表面的许多物体,包括飞机、汽车、建筑物等。目标检测在远感图像的解释中

See all articles