概述
搭建简易的haproxy
实验环境 haproxy 服务器 192.168.74.188
Web 节点1 192.168.74.189
Web节点2 192.168.74.190
搭建Web节点
1.我们此处采用的是nginx,当然其他的类似的web都可以比如apache、tomcat
在安装nginx之前需要装一些nginx的依赖包 以及部署yum安装环境
[root@local ~]# yum install -y pcre-devel zlib-devel gcc gcc-c++ make
Yum环境的搭建这里不做介绍
2.依赖包安装之后我们开始源码安装nginx
[root@local ~]# tar xf nginx-1.14.2.tar.gz -C /usr/src/
[root@local ~]# cd /usr/src/nginx-1.14.2/
[root@local nginx-1.14.2]# ./configure --prefix=/usr/local/nginx && make && make install
3.启动nginx并且查看是否启动成功
[root@local ~]# /usr/local/nginx/sbin/nginx
[root@local ~]# ps aux | grep nginx
为了实验效果 可以修改nginx页面的neiro内阁index.heml
搭建Nfs文件共享
为了让web节点对外一致 我们这里采用nfs文件共享
1.Yum安装相关的软件包
[root@local ~]# yum -y install nfs-utils rpcbind
2.书写nfs配置文件
[root@local ~]# vim /etc/exports
/var/www/html 192.168.74.0/24(ro,sync,no_root_squash)
3.启动nfs服务
[root@local ~]# systemctl start nfs
[root@local ~]# systemctl start realmd
4.查看共享文件是否成功
[root@local ~]# showmount -e
搭建Haproxy服务器
1.安装haproxy (yum或者源码都可以这里介绍yum随后后面介绍源码)
[root@local ~]# yum install -y haproxy
2.配置文件的修改
[root@local ~]# vim /etc/haproxy/haproxy.cfg
global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000 //设定每个haproxy进程所接受的最大并发连接数
user haproxy
group haproxy
daemon
stats socket /var/lib/haproxy/stats
defaults
mode http //模式为http,mode {http|tcp|health} 。http是七层模式,tcp是四层模式,health是健康检测,返回OK
log global
option httplog //启用日志记录HTTP请求,默认haproxy日志记录是不记录HTTP请求的,只记录“时间[Jan 5 13:23:46] 日志服务器[127.0.0.1] 实例名已经pid[haproxy[25218]] 信息[Proxy http_80_in stopped.]”,日志格式很简单
option dontlognull // 启用该项,日志中将不会记录空连接。所谓空连接就是在上游的负载均衡器或者监控系统为了探测该服务是否存活可用时,需要定期的连接或者获取某一固定的组件或页面,或者探测扫描端口是否在监听或开放等动作被称为空连接;官方文档中标注,如果该服务上游没有其他的负载均衡器的话,建议不要使用该参数,因为互联网上的恶意扫描或其他动作就不会被记录下来
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
frontend webserver *:80
default_backend static
backend static
balance roundrobin
server nginx1 192.168.8.129:80 check inter 2000 rise 3 fall 3 weight 1 maxconn 2000 //服务器节点,名为nginx1,侦测的时间间隔为2000毫秒,监测正常3次后被认为后端服务器是可用的,监测失败3次后被认为后端服务器是不可用的,权重值为1 最大并发连接2000
server nginx2 192.168.8.130:80 check inter 2000 rise 3 fall 3 weight 1 maxconn 2000
server nginx3 192.168.8.131:80 check inter 2000 rise 3 fall 3 weight 1 maxconn 2000 backup
listen admin
bind :9090
server web6c 192.168.137.111:9090 check
stats enable #开启监听
stats uri /status #设置监听的url
stats auth admin:123 #认证信息
stats auth qq:123
stats realm admin xxx #设置认证的默认提示
stats hide-version #隐藏版本
stats refresh 10s
stats admin if TRUE #TRUE这个关键字表示只有经过认证成功后才能被管理
设置ulimit
[root@local ~]# ulimit -n 65535
3.启动服务并且设置开机自动启动
[root@local ~]# systemctl start haproxy
[root@local ~]# systemctl enable haproxy
4.开启网页测试
Haproxy配置rsylog日志记录
因为我们在/etc/haproxy/haproxy.cfg 配置文件中所采用的是local2
1.启用514端口 查找取消注释即可 然后需要添加
[root@local ~]# vim /etc/rsyslog.conf
$ModLoad imudp
$UDPServerRun 514
$ModLoad imtcp
$InputTCPServerRun 514
local2.* /var/log/haproxy.log
2.
[root@local ~]# vim /etc/sysconfig/rsyslog
#Options for rsyslogd
Syslogd options are deprecated since rsyslog v3.
#If you want to use them, switch to compatibility mode 2 by “-c 2”
See rsyslogd(8) for more details
SYSLOGD_OPTIONS="-r -m 0"
-r: 打开接受外来日志消息的功能,其监控514 UDP端口
-x: 关闭自动解析对方日志服务器的FQDN信息,这能避免DNS不完整所带来的麻烦
-m: 修改syslog的内部mark消息写入间隔时间(0为关闭),例如240为每隔240分钟写入一次"–MARK–"信息
-h: 默认情况下,syslog不会发送从远端接受过来的消息到其他主机,而使用该选项,则把该开关打开,所有接受到的信息都可根据syslog.conf中定义的@主机转发过去
3.重启rsyslog
[root@local ~]# systemctl restart rsyslog
最后
以上就是甜美黑夜为你收集整理的haproxy简易搭建搭建Web节点搭建Nfs文件共享搭建Haproxy服务器的全部内容,希望文章能够帮你解决haproxy简易搭建搭建Web节点搭建Nfs文件共享搭建Haproxy服务器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复