博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS7 上部署Haproxy及Nginx 搭建Web群集
阅读量:6271 次
发布时间:2019-06-22

本文共 2990 字,大约阅读时间需要 9 分钟。

HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理,可以运行于大部分主流的Linux操作系统上。

本次实验使用三台服务器搭建Web群集,Haproxy作为调度服务器,两台Nginx服务器作为节点服务器。

实验环境

主机 | 系统 | IP地址 | 只要软件

主机 系统 IP地址 主要软件
haproxy服务器 CentOS-7-x86_64 192.168.100.101 haproxy
Nginx 服务器 CentOS-7-x86_64 192.168.100.102 nginx
Nginx服务器 CentOS-7-x86_64 192.168.100.103 nginx
客户端 Windows 192.168.100.100 IE浏览器

安装nginxf服务器

  • 安装便编译环境
    yum -y install pcre-devel zlib-devel gcc gcc-c++ make  -yuseradd -M -s /sbin/nologin nginx //为其创建管理用户tar zxvf nginx-1.12.0.tar.gz -C /opt/ //解压./configure \--prefix=/usr/local/nginx \  //安装路径--user=nginx \               //指定管理用户--group=nginx  //为其编译    //指定管理组make && make install //安装 cd /usr/local/nginx/html/ //存放首页路径vim index.html //修改它也行从新生成一个也可也echo "this is nginx 1!!" > tast.html //但访问的是后面要加tast如 http://127.0.0.1/tastln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/  //创建软连接,方便管理nginx -t                                            //检查配置文件是否正确  nginx                                           //启动服务netstat -ntap | grep 80                             //查看服务是否正确开启关闭防火墙systemctl disable firewalld.service systemctl stop firewalld.servicesetenforce 0

    自测 两台同要的同样的配置

    CentOS7 上部署Haproxy及Nginx 搭建Web群集CentOS7 上部署Haproxy及Nginx 搭建Web群集

    调度服务器配置
  • 安装haproxy软件 编译环境
    yum -y install pcre-devel bzip2-devel gcc gcc-c++ make tar zxf haproxy-1.5.19.tar.gzcd haproxy-1.5.19/make TARGET=linux26     //安装64位系统make install

    配置haproxy服务器

    mkdir /etc/haproxycp haproxy-1.5.19/examples/haproxy.cfg /etc/haproxy/haproxy.cfg cd /etc/haproxy/vim haproxy.cfg  //修改其配置文件global    log 127.0.0.1   local0    // 日志格式 和系统日志保存在一起    log 127.0.0.1   local1 notice //notice 日志级别    #log loghost    local0 info    maxconn 4096   //最大链接数    chroot /usr/share/haproxy  //删除    uid 99    gid 99    daemon    #debug    #quietdefaults    log     global      mode    http    option  httplog  //写的日志文件格式安装httpd 的格式写    option  dontlognull      retries 3   //尝试次数 3次 如果链接不上就认为不可用    redispatch   //删除     maxconn 2000    contimeout      5000   //最大链接    clitimeout      50000    srvtimeout      50000   //超时将listen部分修改为以下内容listen  webcluster 0.0.0.0:80    //指定节点服务     option httpchk GET /test.html  //GET 提交方式 访问时候后面加test.html    balance roundrobin    server inst1 192.168.100.102:80 check inter 2000 fall 3      server inst2 192.168.100.103:80 check inter 2000 fall 3cp /opt/haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy //启动脚本service haproxy start //启动服务然后就可以访问  多次涮新,nginx1和nginx2网页轮换显示。

    haproxy的日志优化

  • Haproxy的日志默认输出到系统的syslog中。查看起来不是很方便,为了更好的管理haproxy的日志,我们需要将日志单独定义出来
    vim /etc/haproxy/haproxy.cfg log /dev/log    local0 info     //信息提示个告警分离开log /dev/log    local0 notice  // 删除原有的 替换service haproxy restart

touch /etc/rsyslog.d/haproxy.conf

vim /etc/rsyslog.d/haproxy.conf //插入下面的话

if ($programname == 'haproxy' and $syslogseverity-text == 'info') //更具类型 形似 进行离

then -/var/log/haproxy/haproxy-info.log
&~
if ($programname == 'haproxy' and $syslogseverity-text == 'notice')
then -/var/log/haproxy/haproxy-notice.log
&~

systemctl restart rsyslog.service

CentOS7 上部署Haproxy及Nginx 搭建Web群集
CentOS7 上部署Haproxy及Nginx 搭建Web群集

转载于:https://blog.51cto.com/13660858/2132211

你可能感兴趣的文章
设计模式 - 模板方法模式(template method pattern) 具体解释
查看>>
mysql判断一个字符串是否包含某子串 【转】
查看>>
a bad dream
查看>>
FD_CLOEXEC用法及原因_转
查看>>
element UI 的学习一,路由跳转
查看>>
RabbitMQ三种Exchange模式(fanout,direct,topic)的性能比较
查看>>
Spring JavaBean属性值的注入方式( 属性注入, 特殊字符注入 <![CDATA[ 带有特殊字符的值 ]]> , 构造器注入 )...
查看>>
【Linux】Linux下统计当前文件夹下的文件个数、目录个数
查看>>
Hibernate_14_数据连接池的使用
查看>>
Codeforces Round #271 (Div. 2) D. Flowers (递推 预处理)
查看>>
jacky自问自答-java并发编程
查看>>
Struts2+JSON数据
查看>>
zTree实现单独选中根节点中第一个节点
查看>>
Cocos2D-x设计模式发掘之中的一个:单例模式
查看>>
很强大的HTML+CSS+JS面试题(附带答案)
查看>>
用树莓派实现RGB LED的颜色控制——C语言版本号
查看>>
VC2012编译CEF3-转
查看>>
java 自己定义异常,记录日志简单说明!留着以后真接复制
查看>>
Android 使用AIDL实现进程间的通信
查看>>
机器学习(Machine Learning)&深度学习(Deep Learning)资料
查看>>