基于docker+nginx+keepalived(vip)集群

450 阅读1分钟
nginx->实现负载均衡(upstream)
keepalived(vip)->实现高可用(主从)

一、安装docker

二、安装nginx

  • 参考www.cnblogs.com/shulipeng/p…

  • 此文中缺少nginx.conf可以打个文件copy过来

    location / { root /usr/share/nginx/html; index index.html index.htm; } p.s.由于参考链接中的启动命令没有做root目录的映射,所以这个root 要改成docker容器里对应的root目录,当然也可在启动的docker命令里增加此映射

三、安装keepalived

  • 参考www.cnblogs.com/shulipeng/p…

  • keepalived.conf中要注意把

    #网卡名字,替换成网卡名字(ip add或ifconfig可查到网卡名称) interface eno16777736

四、VIP(对于keepalived的补充)

  • 一般设置vip的方式有两种。
  • 一种是配置本地:vim /etc/sysconfig/network-scripts/
  • 另一种是基于keepalived,本文是基于keepalived的方式

五、问题

问题一、SECURITY VIOLATION - scripts are being executed but script_security not enabled

vrrp_script脚本没有被执行的问题,一般考虑几方面
- 是否有权限 chmod -R 775 nginx_check.sh 脚本文件 - 另一个比较大的坑
就是如果nginx_check.sh文件是在windows创建的然后上传到linux服务器的,这样也会一直不能执行。要:set ff看看是不是set ff=unix如果不是 :

p.s. 记住一个最直接的判断方法,直接./nginx_check.sh执行一下这个文件就可以发现是不是这个文件有问题