keepalived+nginx/mysql双主

本文详细介绍了如何使用keepalived+nginx实现主从和双主模式的配置,包括编译安装nginx和keepalived,配置keepalived的各个模块,以及设置VIP漂移。同时,还讲解了mysql的双主配置,包括yum安装、配置文件修改及主从关系建立。最后,通过测试验证了配置的正确性。
摘要由CSDN通过智能技术生成

目录

keepalived+nginx

编译安装nginx

编译安装keepalived

配置keepalived+nginx主从模式

keepalived配置文件介绍

主从配置 

keepalived启动与测试

配置keepalived+nginx双主模式

keepalived+mysql双主

yum安装mysql5.7

配置mysql双主

配置keepalived+mysql双主


keepalived+nginx

编译安装nginx

下载源码 ——> 官网nginx: download

#存放用户编译软件所用的源码目录
cd /usr/local/src  
wget https://nginx.org/download/nginx-1.22.0.tar.gz

安装编译所需依赖

yum install gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl openssl-devel -y

编译安装nginx

tar -zxf nginx-1.22.0.tar.gz 
cd nginx-1.22.0
./configure --prefix=/usr/local/nginx
make && make install
#检查是否安装成功
/usr/local/nginx/sbin/nginx -t

启动

#启动
/usr/local/nginx/sbin/nginx 
#快速停止
/usr/local/nginx/sbin/nginx -s stop
#优雅的关闭,在退出前完成已经接受的连接请求
/usr/local/nginx/sbin/nginx -s quit 
#重读配置文件
/usr/local/nginx/sbin/nginx -s reload
#启动后尝试访问,网页访问需关闭防火墙或打开对应端口
本机访问 curl localhost

#开机自启(不添加为系统服务时,用此方法设置开机自启)
ll /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local
vim /etc/rc.local
/usr/local/nginx/sbin/nginx
systemctl status rc-local
systemctl start rc-local

 添加为系统服务

vim /usr/lib/systemd/system/nginx.service

[Unit]
Description=nginx - web server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target

重新加载系统服务

systemctl daemon-reload

现在可以使用systemctl启动了

#开启Nginx服务
systemctl start nginx
#查看Nginx服务状态
systemctl status nginx
#设置开机启动
systemctl enable nginx

编译安装keepalived

软件下载 官网下载——>Keepalived for Linux

编译安装需要先安装依赖

yum install -y gcc  openssl-devel wget

从官网下载下载需要的版本,并解压

cd /usr/local/src
wget https://keepalived.org/software/keepalived-2.2.7.tar.gz --no-check-certificate
tar  zxf  keepalived-2.2.7.tar.gz

编译安装

cd /usr/local/src/keepalived-2.2.7
./configure --prefix=/usr/local/keepalived
make && make install

将keepalived添加到系统服务中(注意路径)

#复制/sbin/keepalived到/usr/sbin下
cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

#keepalived默认会读取/etc/keepalived/keepalived.conf配置文件
mkdir /etc/keepalived
cp /usr/local/keepalived/etc/keepalived/keepalived.conf.sample /etc/keepalived/keepalived.conf

#复制sysconfig文件到/etc/sysconfig下
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

#复制keepalived 服务启动脚本到默认的地址/etc/init.d下
cp /usr/local/src/keepalived-2.2.7/keepalived/etc/init.d/keepalived /etc/init.d/
chmod 755 /etc/init.d/keepalived

启动测试

[root@masker ~]# service keepalived start
Starting keepalived (via systemctl):                       [  OK  ]
#提示正确或者OK,则表示安装成功
#设置开机自启
chkconfig keepalived on
chkconfig --list

配置keepalived+nginx主从模式

keepalived配置文件介绍

基础三个模块,global_defs全局模块,vrrp_instance配置vip模块,vrrp_script 脚本模块,用来检测nginx服务。

注:vrrp_script定义脚本后,在vrrp_instance模块必须加上track_script 参数。

global_defs模块参数

  • notification_email : keepalived在发生诸如切换操作时需要发送email通知地址,后面的 smtp_server 相比也都知道是邮件服务器地址。也可以通过其它方式报警,毕竟邮件不是实时通知的。

  • router_id : 机器标识,通常可设为hostname。故障发生时,邮件通知会用到。

vrrp_instance模块参数

  • state : 指定instance(Initial)的初始状态, MASTER 或者BACKUP,不是唯一性的,跟后面的优先级priority参数有关。

  • interface : 实例绑定的网卡,因为在配置虚拟IP的时候必须是在已有的网卡上添加的,(注意自己系统,我的默认是ens33,有的是eth0)

  • mcast_src_ip : 发送多播数据包时的源IP地址,这里注意了,这里实际上就是在那个地址上发送VRRP通告,这个非常重要,一定要选择稳定的网卡端口来发送,这里相当于heartbeat的心跳端口,如果没有设置那么就用默认的绑定的网卡的IP,也就是interface指定的IP地址

  • virtual_router_id : 这里设置VRID,这里非常重要,相同的VRID为一个组,他将决定多播的MAC地址

  • priority: 设置本节点的优先级,优先级高的为master(1-255)

  • advert_int : 检查间隔,默认为1秒。这就是VRRP的定时器,MASTER每隔这样一个时间间隔,就会发送一个advertisement报文以通知组内其他路由器自己工作正常

  • authentication : 定义认证方式和密码,主从必须一样

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值