本站用于记录日常工作内容,虚拟化云计算,系统运维,数据库DBA,网络与安全。
HAProxy之三----keepalived配合脚本对HAProxy、ping网关实现高可用检测调用脚本参数含义12345678910vrrp_script<SCRIPT_NAME> { #定义一个检测脚本,在global_defs之外配置 script <STRING>|<QUOTED-STRING> # shell命令或脚本路径 interval <INTEGER> # 间隔时间,单位为秒,默认1秒 timeout <INTEGER> # 超时时间 weight <INTEGER:-254..254> # 权重,监测失败后会执行权重+操作 fall <INTEGER> #脚本几次失败转换为失败 rise <INTEGER> # 脚本连续检测成果后,把服务器从失败标记为成功的次数 user USERNAME [GROUPNAME] # 执行监测的用户或组 init_fail # 设置默认标记为失败状态,监测成功之后再转换为成功状态}实战一:实现ping网关地址高可用检测1、在主机A配置keepalived调用ping脚本。 书写一个脚本,ping主机的网关IP地址,如果ping不通时,启动以下keepalived配置文件中内容。vim /etc/keepalived/ping.sh1234567#!/...
HAProxy之一----HAPproxy配置参数详解企业服务架构图及负载均衡的要求场景说明• 在企业生产环境中,每天会有很多的需求变更,比如增加服务器、新业务上线、url路由修改、域名配置等等,对于前端负载均衡设备来说,容易维护,复杂度低,是首选指标。在企业中,稳定压倒一切,与其搞得很复杂,经常出问题,不如做的简单和稳定。• 在企业中,90%以上的故障,来源于需求变更。可能是程序bug,也可能是人为故障,也可能是架构设计问题等等。• 前端负载均衡设备为重中之重,在软件选型上一定充分考虑,能满足业务的前提下,尽可能降低复杂度,提高易维护性小型架构图中型架构图 公有云Web架构 私有云web架构 什么是负载均衡:•负载均衡(Load Balance,简称LB)是一种服务或基于硬件设备等实现的高可用反向代理技术,负载均衡将特定的业务(web服务、网络流量等)分担给指定的一个或多个后端特定的服务器或设备,从而提高了公司业务的并发处理能力、保证了业务的高可用性、方便了业务后期的水平动态扩展。•https://yq.aliyun.com/articles/1803#阿里云SLB介绍为什么使用负载均衡:•Web服务器的动态水平扩展 •对用户无感知•增加业务并发访问及处理能...
HAProxy之二----HAProxy实现高级负载均衡实战和ACL控制 haproxy实现高级负载均衡实战 环境:随着公司业务的发展,公司负载均衡服务已经实现四层负载均衡,但业务的复杂程度提升,公司要求把mobile手机站点作为单独的服务提供,不在和pc站点一起提供服务,此时需要做7层规则负载均衡,运维总监要求,能否用一种服务既能实现七层负载均衡,又能实现四层负载均衡,并且性能高效,配置管理容易,而且还是开源。实验前准备:① 两台服务器都使用yum 方式安装haproxyyum -y install haproxy② iptables -F && setenforing 清空防火墙策略,关闭selinux实战一:实现haproxy的Https协议配置HAProxy支持https协议:支持ssl会话;123bind *:443 ssl crt /PATH/TO/SOME_PEM_FILEcrt 后证书文件为PEM格式,且同时包含证书和所有私钥cat demo.crt demo.key > demo.pem把80端口的请求重向定44312bind *:80redirect scheme https if !{ ssl_fc }向后端传递用户请求的协议和端口(frontend或backend)12http_request set-header X-Forwarded-Port %[dst_port]http_request add-header X-Forw...
使用 HAProxy 进行 MySQL 负载平衡应用程序通常通过在其中一个数据库节点上打开连接来连接到数据库集群或复制的设置,以便运行事务。如果数据库节点发生故障,客户端将需要重新连接到另一个数据库节点,然后才能继续为请求提供服务。有不同的方法可以提供与一个或多个 MySQL 数据库服务器的连接。一种方法是使用支持连接池、负载平衡和故障转移的数据库驱动程序,例如:JDBC driver for MySQL (MySQL Connector/J)PHP MySQL 本机驱动程序 for master slave (mysqlnd-ms)上述数据库驱动程序旨在为客户端在连接到独立MySQL服务器,MySQL群集(NDB)或MySQL复制设置时提供透明度。但是,在其他集群设置中,如 Galera Cluster for MySQL 或 MariaDB,JDBC 和 PHP 驱动程序不知道内部 Galera 状态信息。例如,Galera 捐赠节点在帮助另一个节点重新同步时可能处于只读状态(如果 SST 方法是 mysqldump 或 rsync),或者如果发生裂脑,它可能处于非主要状态。另一种解决方案是在客户端和数据库集群之间使用负载均衡器。本教程将引导您了解如何使用 ClusterControl 使用 HAProxy 部署、配置和管理 MySQL 负载平衡。白皮书的内容什么是HAProxy?MySQL 的运行状况检...
第一:我们在说什么?注意: 这是文章的英文版本,法文版见这里.Use Haproxy with Let's Encrypt - [EN] · Blog de Victor Héry (victor-hery.com)haproxy :哈代理是一个代理软件。它有很多用途,但在这里我们将使用它的能力来反向代理 HTTP 和 HTTPS。在这篇文章中,我们将考虑您有一个有效的Haproxy服务器和一个有效的配置。Let's Encrypt:让我们加密是由Mozilla基金会和思科赞助的开源项目。想法是创建一个免费的证书颁发机构,以便创建SSL证书并这样做,允许大多数人使用HTTPS和安全网站。关于SSL证书的通常成本,这是一个非常有趣的项目!除此之外,Let's Encrypt非常易于使用,这主要归功于允许非常轻松地创建证书的API。我们将在这篇文章中通过Let's Encrypt官方python客户端使用此API。编辑 : 04/04/16 : 添加有关在 HTTP haproxy 前端中使用重定向 HTTP 到 HTTPS 时的情况的说明编辑 : 09/16/16 : 使用新的二进制文件进行更新 + 添加带有一些 scritps 的 git 存储库以自动化 LE 管理概念Let's Encrypt提供了许多选项来通过其客户端创建和验证证书。如果您的 Haproxy 与 Web 服务器本地化在同一台服务器上,您可以使用 --webroot 选项,该选项允...
使用 haproxy (HTTP/HTTPS) 配置反向代理或者:让我们使用其工作是代理的软件请注意,我们将在这里将其用作HTTP / HTTPS代理,但是haproxy可以充当从邮件服务器到mysql服务器的任何内容的代理,以及全局任何使用TCP的代理。为什么会这样?在您的 Web 服务器前面拥有反向代理有几个优点。没有可公开访问的Web服务器(例如,为了保护它)预处理请求(会话数、带宽限制等)在多个 Web 服务器之间摆动请求集中公共访问(仅使用一个公共 IP,其后面有不同的 Web 服务器)一次不习惯,咱们攻具体
html {overflow-x: initial !important;}:root { --bg-color:#ffffff; --text-color:#333333; --select-text-bg-color:#B5D6FC; --select-text-font-color:auto; --monospace:"Lucida Console",Consolas,"Courier",monospace; --title-bar-height:20px; }
.mac-os-11 { --title-bar-height:28px; }
html { font-size: 14px; background-color: var(--bg-color); color: var(--text-color); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
body { margin: 0px; padding: 0px; height: auto; inset: 0px; font-size: 1rem; line-height: 1.42857; overflow-x: hidden; background: inherit; tab-size: 4; }
iframe { margin: auto; }
a.url { word-break: break-all; }
a:active, a:hover { outline: 0px; }
.in-text-selection, ::selection { text-shadow: none; background: var(--select-text-bg-color); color: var(--select-text-font-color); }
#write { margin: 0px auto; height: auto; width: inherit; word-break: normal; overflow-wrap: break-word; position: relative; white-space: normal; o...
Haproxy一些高级功能配置 一、基于cookie的会话保持cookie value:为当前server指定cookie值,实现基于cookie的会话黏性1、配置选项cookie name [ rewrite | insert | prefix ][ indirect ] [ nocache ][ postonly ] [ preserve
][ httponly ] [ secure ][ domain ]* [ maxidle <idle> ][ maxlife ]
name:cookie 的key名称,用于实现持久连接
insert:如果没有就插入新的cookie
indirect:不会向客户端发送服务器已经处理过请求的cookie信息,间接
nocache:当client和hapoxy之间有缓存时,不缓存cookie2、配置实例listen web_host
bind 192.168.32.204:80
mode http
log global
balance roundrobin
cookie SERVER-COOKIE insert indirect nocache
server web1 10.0.0.201:80 cookie web1 check inter 3000 fall 3 rise 5
server web2 10.0.0.202:80 cookie web2 check inter 3000 fall 3 rise 53、测试[root@node3 ~]# curl --cookie "SERVER-COOKIE=web1" http://192.168.32.204/index.html
web01 10.0.0.201
[root@node3 ~]# curl --cookie "SERVER-COOKIE=web2" http://192.168.32.204/index.html
web02 10.0.0.20...
HAPROXY的调度算法一、实验拓扑及环境 System OS: CentOS Linux release 7.8.2003 (Core)
内核:3.10.0-1127.el7.x86_64
web01:
node1 10.0.0.201 nginx
web02:
node2 10.0.0.202 nginx
haproxy:
node4 192.168.32.204 外网
node4 10.0.0.204 内网
客户机:
node3 192.168.32.203实验环境的部署见《二、Haproxy的部署及配置文件说明》https://www.cnblogs.com/yaokaka/二、服务器动态权重调整yum install -y socat
#Socat 是 Linux 下的一个多功能的网络工具,名字来由是Socket CAT,Socat 的主要特点就是在两个数据流之间建立通道,且支持众多协议和链接方式。如 IP、TCP、 UDP、IPv6、Socket文件等。
#查看haproxy的信息
echo "show info" | socat stdio /var/lib/haproxy/haproxy.sock
#
echo "get weight web_port/web01" | socat stdio /var/lib/haproxy/haproxy.sock
1 (initial 1)
echo "set weight web_port/web01 2" | socat stdio /var/lib/haproxy/haproxy.sock
Backend is using a static LB algorithm and only accepts weights '0%' and '100%'.三、Haproxy的调度算法1、静态算法静态算法:按照事...
一、Haproxy在centos7上的部署1、实验环境System OS: CentOS Linux release 7.8.2003 (Core)
内核:3.10.0-1127.el7.x86_642、yum安装[root@node4 ~]# yum provides haproxy
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
haproxy-1.5.18-9.el7.x86_64 : TCP/HTTP proxy and load balancer for high availability environments
Repo : base
[root@node4 ~]# yum install -y haproxy
#yum部署的haproxy版本为比较旧3、第三方安装包部署 #https://pkgs.org/download/haproxy #下载rpm包
#部署步骤
#准备工作
mkdir /app
cd /app
#Download latest cheese-release rpm from
#http://www.nosuchhost.net/~cheese/fedora/packages/epel-7/x86_64/cheese-release.html
wget http://www.nosuchhost.net/~cheese/fedora/packages/epel-7/x86_64/cheese-release-7-1.noarch.rpm
#Install cheese-release rpm:
rpm -Uvh cheese-release*rpm
#查看可以安装的haproxy版本
[root@node4 ~]# yum provides haproxy
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
haproxy-1.5.15-1.el...
总共45页,当前第1页 | 页数: - 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
最新评论