Nginx之Keepalived高可用工具

时间:2022-12-08 19:03:15

1、创建两台虚拟机,分别为主机和从机,区别两台虚拟机的IP地址

2、 将keepalived上传到linux系统当中

Nginx之Keepalived高可用工具

3、 cd /usr/local目录

Nginx之Keepalived高可用工具

4、 tar -zxvf keepalived-1.2.18.tar.gz

Nginx之Keepalived高可用工具

5、 cd keepalived-1.2.18目录

Nginx之Keepalived高可用工具

6、 yum install -y openssl openssl-devel (需要安装一个软件包)

Nginx之Keepalived高可用工具

7、 ./configure --prefix=/usr/local/keepalived 编译,将编译文件放到/usr/local/keepalived

Nginx之Keepalived高可用工具

8、 make

Nginx之Keepalived高可用工具

9、 make install

Nginx之Keepalived高可用工具

10、 在/etc/keepalived 创建目录:mkdir /etc/keepalived

Nginx之Keepalived高可用工具

11、 cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/

​12、 cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/

13、 cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

14、 ln -s /usr/local/sbin/keepalived /usr/sbin/

  (ln -s /usr/local/keepalived/sbin/keepalived /sbin/)

15、 将nginx启动脚本和keepalived.conf配置上传到/etc/keepalived

Nginx之Keepalived高可用工具


Nginx之Keepalived高可用工具

16、 主机:修改keepalived.conf配置文件  vim /etc/keepalived/keepalived.conf

  interface 配置成与主机相同的网络 ip a mcast_src_ip 配置成自己机器的IP  virtual_ipaddress {undefined    192.168.33.135 # 虚拟ip,也就是解决写死程序的ip怎么能切换的ip,也可扩展,用途广泛。可配置多个。  }

Nginx之Keepalived高可用工具

17、 启动keepalived   启动命令service keepalived start

  如果报错:Job for keepalived.service failed because the control process exited with error code. See "systemctl status keepalived.service" and "journalctl -xe" for details.

18、解决办法:rm /usr/sbin/keepalived

Nginx之Keepalived高可用工具

19、ln -s /usr/local/keepalived/sbin/keepalived /usr/sbin/

Nginx之Keepalived高可用工具

 20、再次启动

Nginx之Keepalived高可用工具

21、可以设置开机启动:chkconfig keepalived on  

22、自动重启不了,解决办法

  查看脚本是否有运行的权限,如果你是 root 登陆的话(不是的话,切换到 root 用户,对*.sh 赋可执行的权限)

  赋予权限命令:chmod 777 *.sh

  赋予所有权限:chmod +x *.sh

  然后运行就 OK 了,即有权限对文件进行删除等操作。

23、备机安装步骤同上,备机修改配置文件步骤如下

24、备机:修改keepalived.conf配置文件  vim /etc/keepalived/keepalived.conf

   state BACKUP 备机名称  interface 配置成与主机相同的网络 ip a  mcast_src_ip 配置成自己机器的IP  priority 90  权重配置   virtual_ipaddress {undefined    192.168.33.135  # 虚拟ip,也就是解决写死程序的ip怎么能切换的ip,也可扩展,用途广泛。可配置多个。  }

Nginx之Keepalived高可用工具

25、从机启动步骤同上

Nginx之Keepalived高可用工具

26、效果展示  访问虚拟IP地址192.168.33.135

Nginx之Keepalived高可用工具

27、模拟主机挂掉,高可用工具Keepalived实现自动启动备机,防止宕机

  注意:为确保区分主机与备机,在此修改了静态资源HTML的标题

Nginx之Keepalived高可用工具

   ①、挂掉主机

Nginx之Keepalived高可用工具

  ②、虚拟IP地址192.168.33.135继续访问备机

Nginx之Keepalived高可用工具

  ③、 虚拟IP访问效果

Nginx之Keepalived高可用工具

  ④、恢复主机

Nginx之Keepalived高可用工具

  ⑤、虚拟IP地址192.168.33.135继续访问主机

Nginx之Keepalived高可用工具

        ⑥、虚拟IP访问效果

Nginx之Keepalived高可用工具

29、keepalived 常用命令

  启动Keepalived:service keepalived start

  关闭Keepalived:service keepalived stop

30、注意事项

  区分主机与备机名称、

  区分主机与备机IP地址、

  区分主机与备机的权重  主机权重>备机权重