当前位置: 首页 > news >正文

浙江瑞通建设集团网站湛江制作公司网站

浙江瑞通建设集团网站,湛江制作公司网站,邱县做网站,信息化网站建设有什么用目录 1、HAProxy介绍 2、HAProxy编译安装 Centos 基础环境 Ubuntu 基础环境 编译安装HAProxy 验证HAProxy版本 HAProxy启动脚本 配置文件 启动haproxy 验证haproxy状态 查看haproxy的状态页面 1、HAProxy介绍 HAProxy是法国开发者 威利塔罗(Willy Tarreau) 在2000年…目录 1、HAProxy介绍 2、HAProxy编译安装 Centos 基础环境 Ubuntu 基础环境 编译安装HAProxy 验证HAProxy版本 HAProxy启动脚本 配置文件 启动haproxy 验证haproxy状态 查看haproxy的状态页面 1、HAProxy介绍 HAProxy是法国开发者 威利塔罗(Willy Tarreau) 在2000年使用C语言开发的一个开源软件是一款具备高并发(一万以上)、高性能的TCP和HTTP负载均衡器支持基于cookie的持久性自动故障切换支持正则表达式及web状态统计目前最新TLS版本为2.0 历史版本 历史版本更新功能1.4 1.5 1.6 1.7 1.8 1.9 2.0 2.1 2.2-dev 1.8多线程HTTP/2缓存…… 1.7服务器动态配置多类型证书…… 1.6DNS解析支持HTTP连接多路复用…… 1.5开始支持SSLIPV6会话保持…… 从2013年HAProxy 分为社区版和企业版企业版将提供更多的特性和功能以及全天24小时的技术支持等服务。 企业版 企业版网站[https://www.haproxy.com/] 社区版 社区版网站[http://www.haproxy.org/] github[https://github.com/haproxy] 版本对比 功能社区版企业版高级HTTP / TCP负载平衡和持久性支持支持高级健康检查支持支持应用程序加速支持支持高级安全特性支持支持高级管理支持支持HAProxy Dev Branch新功能支持24*7 支持服务支持实时仪表盘支持VRRP和Route Health Injection HA工具支持ACL映射和TLS票证密钥同步支持基于应用程序的高级DDoS和Bot保护(自动保护)支持Bot(机器人)监测支持Web应用防火墙支持HTTP协议验证支持实时集群追踪支持 HAProxy功能 支持功能 TCP 和 HTTP反向代理 SSL/TSL服务器 可以针对HTTP请求添加cookie进行路由后端服务器 可平衡负载至后端服务器并支持持久连接 支持所有主服务器故障切换至备用服务器 支持专用端口实现监控服务 支持停止接受新连接请求而不影响现有连接 可以在双向添加修改或删除HTTP报文首部 响应报文压缩 支持基于pattern实现连接请求的访问控制 通过特定的URI为授权用户提供详细的状态信息 支持http反向代理 支持动态程序的反向代理 支持基于数据库的反向代理 不具备的功能 正向代理--squidnginx 缓存代理--varnish web服务--nginx、tengine、apache、php、tomcat UDP--目前不支持UDP协议 单机性能--相比LVS性能较差 2、HAProxy编译安装 编译安装HAProxy 2.0 LTS版本更多源码包下载地址http://www.haproxy.org/download/ 解决lua环境 HAProxy 支持基于lua实现功能扩展lua是一种小巧的脚本语言于1993年由巴西里约热内卢天主教大学Pontifical Catholic University of Rio de Janeiro里的一个研究小组开发其设计目的是为了嵌入应用程序中从而为应用程序提供灵活的扩展和定制功能。 Lua 官网http://www.lua.org Lua 应用场景 游戏开发独立应用脚本Web 应用脚本扩展和数据库插件如MySQL Proxy安全系统如入侵检测系统 Centos 基础环境 参考链接[http://www.lua.org/start.html] 由于CentOS7 之前版本自带的lua版本比较低并不符合HAProxy要求的lua最低版本(5.3)的要求因此需要编译安装较新版本的lua环境然后才能编译安装HAProxy过程如下 #当前系统版本 [rootnode1 ~]# lua -v Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio#安装基础命令及编译依赖环境 [rootnode1 ~]# yum install gcc readline-devel [rootnode1 ~]# wget http://www.lua.org/ftp/lua-5.3.5.tar.gz [rootnode1 ~]# tar xf lua-5.3.5.tar.gz -C /usr/local/src [rootnode1 ~]# cd /usr/local/src/lua-5.3.5 [rootnode1 lua-5.3.5]# make linux test#查看编译安装的版本 [rootnode1 lua-5.3.5]# src/lua -v Lua 5.3.5 Copyright (C) 1994-2018 Lua.org, PUC-Rio Ubuntu 基础环境 #安装基础命令及编译依赖环境 # apt install gcc iproute2 ntpdate tcpdump telnet traceroute nfs-kernel-server nfs-common lrzsz tree openssl libssl-dev libpcre3 libpcre3-dev zlib1g-dev openssh-server libreadline-dev libsystemd-dev# cd /usr/local/src # wget http://www.lua.org/ftp/lua-5.3.5.tar.gz # tar xvf lua-5.3.5.tar.gz # cd lua-5.3.5 # make linux test# pwd /usr/local/src/lua-5.3.5 # ./src/lua -v Lua 5.3.5 Copyright (C) 1994-2018 Lua.org, PUC-Rio或安装系统自带的lua # apt install lua5.35.3.3-1ubuntu0.18.04.1 # lua5.3 -v Lua 5.3.3 Copyright (C) 1994-2016 Lua.org, PUC-Rio 编译安装HAProxy #HAProxy 1.8及1.9版本编译参数 make  ARCHx86_64 TARGETlinux2628 USE_PCRE1 USE_OPENSSL1 USE_ZLIB1 USE_SYSTEMD1  USE_CPU_AFFINITY1  PREFIX/usr/local/haproxy#HAProxy 2.0以上版本编译参数本文使用的是社区版2.2.9 [rootnode1 ~]# yum -y install gcc openssl-devel pcre-devel systemd-devel [rootnode1 ~]# tar xf haproxy-2.2.9.tar.gz -C /usr/local/src/ [rootnode1 ~]# cd /usr/local/src/haproxy-2.2.9/ [rootnode1 haproxy-2.2.9]# cat README [rootnode1 haproxy-2.2.9]# ll Makefile -rw-rw-r-- 1 root root 41604 2月   7 00:02 Makefile [rootnode1 haproxy-2.2.9]# cat INSTALL#参考INSTALL文件进行编译安装 [rootcentos7 haproxy-2.2.9]# make ARCHx86_64 TARGETlinux-glibc USE_PCRE1 USE_OPENSSL1 USE_ZLIB1 USE_SYSTEMD1 USE_LUA1 LUA_INC/usr/local/src/lua-5.3.5/src/ LUA_LIB/usr/local/src/lua-5.3.5/src/ [rootcentos7 haproxy-2.2.9]# make install PREFIX/apps/haproxy [rootcentos7 haproxy-2.2.9]# ln -s /apps/haproxy/sbin/haproxy /usr/sbin/#查看生成的文件 [rootnode1 haproxy-2.2.9]# tree /apps/haproxy/ /apps/haproxy/ ├── doc │   └── haproxy │       ├── 51Degrees-device-detection.txt │       ├── architecture.txt │       ├── close-options.txt │       ├── configuration.txt │       ├── cookie-options.txt │       ├── DeviceAtlas-device-detection.txt │       ├── intro.txt │       ├── linux-syn-cookies.txt │       ├── lua.txt │       ├── management.txt │       ├── netscaler-client-ip-insertion-protocol.txt │       ├── network-namespaces.txt │       ├── peers.txt │       ├── peers-v2.0.txt │       ├── proxy-protocol.txt │       ├── regression-testing.txt │       ├── seamless_reload.txt │       ├── SOCKS4.protocol.txt │       ├── SPOE.txt │       └── WURFL-device-detection.txt ├── sbin │   └── haproxy └── share└── man└── man1└── haproxy.1 6 directories, 22 files 验证HAProxy版本 #验证HAProxy版本 [rootnode1 ~]# which haproxy /usr/sbin/haproxy [rootnode1 ~]# haproxy -v HA-Proxy version 2.2.9-a947cc2 2021/02/06 - https://haproxy.org/ Status: long-term supported branch - will stop receiving fixes around Q2 2025. Known bugs: http://www.haproxy.org/bugs/bugs-2.2.9.html Running on: Linux 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64[rootnode1 ~]# haproxy -V HA-Proxy version 2.2.9-a947cc2 2021/02/06 - https://haproxy.org/ Status: long-term supported branch - will stop receiving fixes around Q2 2025. Known bugs: http://www.haproxy.org/bugs/bugs-2.2.9.html Running on: Linux 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64 Usage : haproxy [-f cfgfile|cfgdir]* [ -vdVD ] [ -n maxconn ] [ -N maxpconn ][ -p pidfile ] [ -m max megs ] [ -C dir ] [-- cfgfile*]-v displays version ; -vv shows known build options.-d enters debug mode ; -db only disables background mode.-dM[byte] poisons memory with byte (defaults to 0x50)-V enters verbose mode (disables quiet mode)-D goes daemon ; -C changes to dir before loading files.-W master-worker mode.-Ws master-worker mode with systemd notify support.-q quiet mode : dont display messages-c check mode : only check config files and exit-n sets the maximum total # of connections (uses ulimit -n)-m limits the usable amount of memory (in MB)-N sets the default, per-proxy maximum # of connections (0)-L set local peer name (default to hostname)-p writes pids of all children to this file-de disables epoll() usage even when available-dp disables poll() usage even when available-dS disables splice usage (broken on old kernels)-dG disables getaddrinfo() usage-dR disables SO_REUSEPORT usage-dr ignores server address resolution failures-dV disables SSL verify on servers side-dW fails if any warning is emitted-sf/-st [pid ]* finishes/terminates old pids.-x unix_socket get listening sockets from a unix socket-S bind[,bind options...] new master CLI [rootnode1 ~]# haproxy -vv HA-Proxy version 2.2.9-a947cc2 2021/02/06 - https://haproxy.org/ Status: long-term supported branch - will stop receiving fixes around Q2 2025. Known bugs: http://www.haproxy.org/bugs/bugs-2.2.9.html Running on: Linux 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64 Build options :TARGET   linux-glibcCPU     genericCC       gccCFLAGS   -m64 -marchx86-64 -O2 -g -Wall -Wextra -Wdeclaration-after- statement -fwrapv -Wno-unused-label -Wno-sign-compare -Wno-unused-parameter - Wno-clobbered -Wno-missing-field-initializers -Wtype-limitsOPTIONS USE_PCRE1 USE_OPENSSL1 USE_LUA1 USE_ZLIB1 USE_SYSTEMD1DEBUG   Feature list : EPOLL -KQUEUE NETFILTER PCRE -PCRE_JIT -PCRE2 -PCRE2_JIT POLL -PRIVATE_CACHE THREAD -PTHREAD_PSHARED BACKTRACE -STATIC_PCRE -STATIC_PCRE2 TPROXY LINUX_TPROXY LINUX_SPLICE LIBCRYPT CRYPT_H GETADDRINFO OPENSSL LUA FUTEX ACCEPT4 -CLOSEFROM ZLIB -SLZ CPU_AFFINITY TFO NS DL RT - DEVICEATLAS -51DEGREES -WURFL SYSTEMD -OBSOLETE_LINKER PRCTL THREAD_DUMP - EVPORTSDefault settings :bufsize 16384, maxrewrite 1024, maxpollevents 200Built with multi-threading support (MAX_THREADS64, default1). Built with OpenSSL version : OpenSSL 1.0.2k-fips  26 Jan 2017 Running on OpenSSL version : OpenSSL 1.0.2k-fips  26 Jan 2017 OpenSSL library supports TLS extensions : yes OpenSSL library supports SNI : yes OpenSSL library supports : SSLv3 TLSv1.0 TLSv1.1 TLSv1.2 Built with Lua version : Lua 5.3.5 Built with network namespace support. Built with zlib version : 1.2.7 Running on zlib version : 1.2.7 Compression algorithms supported : identity(identity), deflate(deflate), raw-deflate(deflate), gzip(gzip) Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT IP_FREEBIND Built with PCRE version : 8.32 2012-11-30 Running on PCRE version : 8.32 2012-11-30 PCRE library supports JIT : no (USE_PCRE_JIT not set) Encrypted password support via crypt(3): yes Built with gcc compiler version 4.8.5 20150623 (Red Hat 4.8.5-44)Available polling systems :epoll : pref300, test result OKpoll : pref200, test result OKselect : pref150, test result OK Total: 3 (3 usable), will use epoll.Available multiplexer protocols : (protocols marked as default cannot be specified using proto keyword)fcgi : modeHTTP       sideBE        muxFCGIdefault : modeHTTP       sideFE|BE     muxH1h2 : modeHTTP       sideFE|BE     muxH2default : modeTCP        sideFE|BE     muxPASS Available services : none Available filters : [SPOE] spoe [COMP] compression [TRACE] trace [CACHE] cache [FCGI] fcgi-app HAProxy启动脚本 [rootnode1 ~]# cat /usr/lib/systemd/system/haproxy.service [Unit] DescriptionHAProxy Load Balancer Aftersyslog.target network.target[Service] ExecStartPre/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg  -c -q ExecStart/usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /var/lib/haproxy/haproxy.pid ExecReload/bin/kill -USR2 $MAINPID[Install] WantedBymulti-user.target#默认缺少配置文件无法启动 [rootnode1 ~]# systemctl daemon-reload [rootnode1 ~]# systemctl start haproxy Job for haproxy.service failed because the control process exited with error code. See systemctl status haproxy.service and journalctl -xe for details.[rootnode1 ~]# tail /var/log/messages Feb 23 10:10:01 node1 systemd: Started Session 2 of user root. Feb 23 10:17:43 node1 systemd: Starting Cleanup of Temporary Directories... Feb 23 10:17:43 node1 systemd: Started Cleanup of Temporary Directories. Feb 23 10:18:06 node1 systemd: Reloading. Feb 23 10:18:15 node1 systemd: Starting HAProxy Load Balancer... Feb 23 10:18:15 node1 haproxy: [ALERT] 053/101815 (2171) : Cannot open configuration file/directory /etc/haproxy/haproxy.cfg : No such file or directory Feb 23 10:18:15 node1 systemd: haproxy.service: control process exited, codeexited status1 Feb 23 10:18:15 node1 systemd: Failed to start HAProxy Load Balancer. Feb 23 10:18:15 node1 systemd: Unit haproxy.service entered failed state. Feb 23 10:18:15 node1 systemd: haproxy.service failed. 配置文件 #查看配置文件范例 [rootnode1 ~]# tree /usr/local/src/haproxy-2.2.9/examples/ /usr/local/src/haproxy-2.2.9/examples/ ├── acl-content-sw.cfg ├── content-sw-sample.cfg ├── errorfiles │   ├── 400.http │   ├── 403.http │   ├── 408.http │   ├── 500.http │   ├── 502.http │   ├── 503.http │   ├── 504.http │   └── README ├── haproxy.init ├── option-http_proxy.cfg ├── socks4.cfg ├── transparent_proxy.cfg └── wurfl-example.cfg1 directory, 15 files#创建自定义的配置文件 [rootnode1 ~]# mkdir /etc/haproxy [rootnode1 ~]# vim /etc/haproxy/haproxy.cfg globalmaxconn 100000chroot /apps/haproxystats socket /var/lib/haproxy/haproxy.sock mode 600 level admin#uid 99#gid 99user haproxygroup haproxydaemon#nbproc 4#cpu-map 1 0#cpu-map 2 1#cpu-map 3 2#cpu-map 4 3pidfile /var/lib/haproxy/haproxy.pidlog 127.0.0.1 local2 infodefaultsoption http-keep-aliveoption forwardformaxconn 100000mode httptimeout connect 300000mstimeout client 300000mstimeout server 300000mslisten statsmode httpbind 0.0.0.0:9999stats enablelog globalstats uri     /haproxy-statusstats auth   haadmin:123456 listen web_portbind 192.168.150.11:80mode httplog globalserver web1  127.0.0.1:8080 check inter 3000 fall 2 rise 5 启动haproxy [rootnode1 ~]# mkdir /var/lib/haproxy [rootnode1 ~]# useradd -r -s /sbin/nologin -d /var/lib/haproxy haproxy [rootnode1 ~]# systemctl enable --now haproxy 验证haproxy状态 haproxy.cfg文件中定义了chroot、pidfile、user、group等参数如果系统没有相应的资源会导致haproxy无法启动具体参考日志文件 /var/log/messages [rootnode1 ~]# systemctl status haproxy ● haproxy.service - HAProxy Load BalancerLoaded: loaded (/usr/lib/systemd/system/haproxy.service; enabled; vendor preset: disabled)Active: active (running) since 二 2021-02-23 10:23:05 CST; 30s ago Process: 2215 ExecStartPre/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -c -q (codeexited, status0/SUCCESS) Main PID: 2217 (haproxy)CGroup: /system.slice/haproxy.service├─2217 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /var/lib/haproxy/haproxy.pid└─2221 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /var/lib/haproxy/haproxy.pid2月 23 10:23:05 node1.kongd.com systemd[1]: Starting HAProxy Load Balancer... 2月 23 10:23:05 node1.kongd.com systemd[1]: Started HAProxy Load Balancer. 2月 23 10:23:05 node1.kongd.com haproxy[2217]: [NOTICE] 053/102305 (2217) : New worker #1 (2221) forked 2月 23 10:23:05 node1.kongd.com haproxy[2217]: [WARNING] 053/102305 (2221) : Server web_port/web1 i...ue. 2月 23 10:23:05 node1.kongd.com haproxy[2217]: [NOTICE] 053/102305 (2221) : haproxy version is 2.2....cc2 2月 23 10:23:05 node1.kongd.com haproxy[2217]: [NOTICE] 053/102305 (2221) : path to executable is /...oxy 2月 23 10:23:05 node1.kongd.com haproxy[2217]: [ALERT] 053/102305 (2221) : proxy web_port has no ...le! Hint: Some lines were ellipsized, use -l to show in full.[rootnode1 ~]# pstree -p |grep haproxy|-haproxy(2217)---haproxy(2221) 查看haproxy的状态页面 浏览器访问 http://haproxy-server:9999/haproxy-status
http://www.w-s-a.com/news/599010/

相关文章:

  • 重庆做网站优化推广的公司企业网站如何进行定位
  • 高密市赏旋网站设计有限公司山东广饶县建设局网站
  • 成都哪里有网站开发公司网业分离是什么
  • 购物导购网站开发女孩学建筑学好找工作吗
  • 做网站沈阳掌握夏邑进入公众号
  • 怎么做自动提卡网站谷歌推广怎么做
  • 大同网站建设熊掌号wordpress 首页单页
  • 青岛网站美工成都优秀网站建设
  • 聊城大型门户网站建设多版本wordpress
  • 建网站的公司 快云wordpress的搜索
  • 贷款网站模版东莞网站建设哪家专业
  • 做做网站已更新878网站正在建设中
  • dz旅游网站模板网站上做百度广告赚钱么
  • 青岛外贸假发网站建设seo优化名词解释
  • 四川建设厅网站施工员证查询网站建设行业政策
  • 网站全站出售dw怎么设计网页
  • 合肥网站建设方案服务网站建设推荐郑国华
  • 襄阳网站建设需要多少钱台州网站设计公司网站
  • 东莞专业拍摄做网站照片如何在百度上发布自己的广告
  • 网站建设费 科目做网站建设最好学什么
  • php商城网站建设多少钱深圳市建设
  • 有什么做糕点的视频网站黄岛做网站
  • 做视频课程网站建设一个普通网站需要多少钱
  • 专做化妆品的网站合肥做网站建设公司
  • 唐山企业网站网站建设费计入那个科目
  • 企业网站制作运营彩虹云主机官网
  • 如何建设废品网站如何在阿里云云服务器上搭建网站
  • 如何建立网站后台程序wordpress 后台管理
  • 山东外贸网站建设怎么样wordpress首页左图右文
  • 志丹网站建设wordpress 形式修改