您的位置:首页 > 运维架构 > Nginx

使用Haproxy搭建Web群集(内含源码包)

2018-08-22 21:28 706 查看
HAProxy是一款专业提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件,HAProxy是完全免费的、借助HAProxy可以快速并且可靠的提供基于TCP和HTTP应用的代理解决方案。



实验环境:一台CentOS7虚拟机作为Haproxy作为调度器,IP地址为192.168.100.120
一台CentOS7虚拟机作为第一台Nginx服务器,IP地址为192.168.100.100
一台CentOS7虚拟机作为第二台Nginx服务器,IP地址为192.168.100.110
一台win7作为客户机进行访问,地址为192.168.100.5

nginx软件包链接:https://pan.baidu.com/s/13ZjTuWPassNW2zKPXYuODA 密码:cd2k
haproxy软件包链接:https://pan.baidu.com/s/1eG-CrWVLxLKTj7XMSUXzSA 密码:u656

一、搭建一台Nginx服务器



安装Nginx所需要的环境包



将Nginx安装包解压到/opt目录下



在Nginx目录下建立一个管理用户名为nginx



将安装路径,管理用户和管理组添加到所要下载的模块中



编译文件并执行安装



在/usr/local/sbin目录下建立软链接方便管理



在这台Nginx服务器上建立一个测试首页



开启nginx服务



关闭防火墙,便于客户机进行访问



在本地进行自测,首页可以访问的到,到这第一台Nginx配置完成

二、手工编译第二台Nginx服务器,过程和第一台一模一样,这里就不在演示



这里唯一不同的地方就是网站首页内容,是为了方便进行测试

三、配置Haproxy调度器



安装Haproxy所需要的环境包



将Haproxy安装包解压到/opt目录下





在/opt/haproxy/目录下对文件编译和安装



在etc目录下建一个存放主配置文件的目录,接着将配置文件复制一份到这个目录下





在配置文件下,注释掉chroot/usr/share/haproxy 和 redispatch两条语句,接着删除所有的listen模块,在最后加上自己规定的listen模块,在这个模块中指定自己的节点服务器



这里为了便于管理,可以将启动脚本添加到系统的init.d目录下并且赋予其执行权限,接着为了可以让系统可以管理这个服务可以添加到chkconfig中





开启服务并且关闭防火墙





最后用客户机访问这台调度器,可以看到我可以访问到两台节点服务器

Haproxy日志
Haproxy的日志默认输出到系统的syslog中,查看起来不是很方便,为了更好地管理Haproxy的日志,在生产环境中一般单独定义出来





到主配置文件中进行更改,主要是将Haproxy的info及notice日志分别记录到不同的日志文件中



重启服务是文件生效



为了便于管理,将Haproxy相关配置独立定义到haproxy.conf,并放到/etc/rsyslog.d/下,rsyslog启动时会自动加载此目录下的所有配置文件



在文件中加入以上内容,这里表示的是将Haproxy的info日志记录到/var/log/haproxy/haproxy-info.log下,将notice日志文件记录到/var/log/haproxy/haroxy-notice.log下,配置完成后保存退出



重启rsyslog服务



使用客户机进行访问后便会生成这个日志文件,如果不先访问这台服务器是不会生成这个文件的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux nginx haproxy