HAproxy

Keepalived+Haproxy搭建高可用Web群集

匿名 (未验证) 提交于 2019-12-03 00:09:02
通过博文: Haproxy服务调优及配置内容详解 已经可以了解Haproxy服务的作用; 通过博文: 利用Keepalived实现双机热备详解 已经可以了解到Keepalived服务的作用; Haproxy服务是搭建群集调度的一种工具,性能好。但是现实环境中肯定需要和Keepalived服务一起使用,避免造成单点故障。 一、案例环境: 这篇博文其实跟博文: 搭建LVS(DR模式)+Keepalived高可用群集,可跟做!!! 差不多,只是把负责搭建群集环境的LVS换成了Haproxy。其实也没什么好写的,本意是不想写的。但是其中有几个知识点,必须要了解,否则这个环境不可能实现。 二、案例实施 案例实施大致步骤: 1.为了简单起见,每个服务器(不管是Web节点和是调度服务器),实际环境中,应该开启防火墙相关流量; 2.主调度服务器上安装Keepalived和Haproxy服务; 3.配置Web节点服务器,安装Web服务(APache、Nginx都可以)创建虚拟IP地址,所有配置都一样但是建议主页不要一样,这样能看出效果,实际环境中网站主页内容必须一样,可以搭建NFS服务器等来同步网页内容; 4.客户机测试访问主Haproxy服务器地址(能否访问到Web页面); 5.从调度服务器安装Keepalived和Haproxy服务; 6.客户机访问漂移IP地址(能否访问成功);

使用Haproxy搭建Web群集

匿名 (未验证) 提交于 2019-12-03 00:09:02
1.案例概述 Haproxy是目前比较流行的一种群集调度工具,同类的调度工具有很多,如LVS和Nginx。相较而言,LVS性能最好,但搭建相对复杂;Nginx的upstream模块支持群集功能,但对群集节点健康检查功能不强,性能没有Haproxy好。 2.案例前置知识 1)HTTP请求 通过URL访问网站使用的协议是HTTP协议,此类请求一般称为HTTP请求。HTTP请求的方式分为GET方式和POST方式。当使用浏览器访问某一个URL,会根据请求URL返回状态码,通常正常状态码为2x x,3x x(如200,301),如果出现异常会返回状态码为4x x,5x x(如400,500)。 2)负载均衡常用调度算法 LVS,Haproxy,Nginx最常用的调度算法有三种,如下所述。 RR:算法是最简单最常用的一种算法,即轮询调度。 LC:算法即最小连接数算法,根据后端的节点连接数大小动态分配前段请求。 SH:即基于来源访问调度算法,此算法用于一些有Session会话记录在服务器的场景,可以基于来源的IP,Cookie等做群集调度。 3.案例环境 1)编译安装nginx服务器 (1)搭建nginx1,使用nginx-1.12.0.tar.gz安装包进行编译安装。 [root@localhost ~]# yum -y install pcre-devel zlib-devel [root

搭建 RabbitMQ Server 高可用集群

旧巷老猫 提交于 2019-12-02 23:59:30
阅读目录: 准备工作 搭建 RabbitMQ Server 单机版 RabbitMQ Server 高可用集群相关概念 搭建 RabbitMQ Server 高可用集群 搭建 HAProxy 负载均衡 因为公司测试服务器暂不能用,只能在自己电脑上重新搭建一下 RabbitMQ Server 高可用集群,正好把这个过程记录下来,以便日后查看。 公司测试服务器上的 RabbitMQ 集群,我搭建的是三台服务器,因为自己电脑空间有限,这边只能搭建两台服务器用作高可用集群,用的是 Vagrant 虚拟机管理工具。 环境介绍: RabbitMQ 节点 IP 地址 工作模式 node1 192.168.1.50 DISK CentOS 7.0 - 64位 node2 192.168.1.51 DISK CentOS 7.0 - 64位 整体架构: 1. 准备工作 首先,在 node1 服务器上,修改 vi /etc/hostname : node1 在 node2 服务器上,修改 vi /etc/hostname : node2 然后在 node1 服务器上,修改 vi /etc/hosts : node1 192.168.1.50 node2 192.168.1.51 127.0.0.1 node1 ::1 node1 在 node2 服务器上,修改 vi /etc/hosts : 192

haproxy2.0 dataplaneapi 简单说明

匿名 (未验证) 提交于 2019-12-02 23:57:01
haproxy2.0 支持基于dataplaneapi 的haproxy 动态配置修改以及服务生效,早期大家为了动态 可以会基于dsn 的服务发现模式,基于confd 结合consul 动态生成配置并加载,现在支持了基于 api 的控制,还是很方便的 Usage : dataplaneapi [ OPTIONS ] API for editing and managing haproxy instances Application Options : -- scheme = the listeners to enable , this can be repeated and defaults to the schemes in the swagger spec -- cleanup - timeout = grace period for which to wait before killing idle connections ( default : 10s ) -- graceful - timeout = grace period for which to wait before shutting down the server ( default : 15s ) -- max - header - size = controls the maximum number of

使用kubeadm在CentOS上搭建Kubernetes集群(多主)

匿名 (未验证) 提交于 2019-12-02 23:43:01
环境说明: | 主机名称 | IP地址 | 部署软件 | 备注 | | -------- | -------------- | ------------------------------------- | ------ | | M-kube12 | 192.168.10.12 | master+etcd+docker+keepalived+haproxy | master | | M-kube13 | 192.168.10.13 | master+etcd+docker+keepalived+haproxy | master | | M-kube14 | 192.168.10.14 | master+etcd+docker+keepalived+haproxy | master | | N-kube15 | 192.168.10.15 | docker+node | node | | N-kube16 | 192.168.10.16 | docker+node | node | | VIP | 192.168.10.100 | | VIP | # 1、关闭防火墙,SELinux,安装基础包 yum install -y net-tools conntrack-tools wget vim ntpdate libseccomp libtool-ltdl lrzsz

docker部署haproxy负载均衡rabbitmq集群

匿名 (未验证) 提交于 2019-12-02 23:43:01
创建rabbitmq容器 docker network create rabbtimanet 创建三节点rabbitmq容器 rabbitmq1 : docker run -d --name=rabbitmq1 -p 5672:5672 -p 15672:15672 -e RABBITMQ_NODENAME=rabbitmq1 -e RABBITMQ_ERLANG_COOKIE='YZSDHWMFSMKEMBDHSGGZ' -h rabbitmq1 --net=rabbtimanet rabbitmq:management rabbitmq2 : docker run -d --name=rabbitmq2 -p 5673:5672 -p 15673:15672 -e RABBITMQ_NODENAME=rabbitmq2 -e RABBITMQ_ERLANG_COOKIE='YZSDHWMFSMKEMBDHSGGZ' -h rabbitmq2 --net=rabbtimanet rabbitmq:management rabbitmq3 : docker run -d --name=rabbitmq3 -p 5674:5672 -p 15674:15672 -e RABBITMQ_NODENAME=rabbitmq3 -e RABBITMQ_ERLANG_COOKIE=

编译安装HAProxy1.8.20

匿名 (未验证) 提交于 2019-12-02 23:38:02
一、安装前准备 官网下载安装包: http://www.haproxy.org/download/1.8/src/haproxy-1.8.20.tar.gz [root@centos src]$cd /usr/local/src/ [root@centos src]$ls haproxy-1.8.20.tar.gz [root@centos src]$yum install -y gcc gcc-c++ glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel net-tools vim iotop bc zip unzip zlib-devel lrzsz tree screen lsof tcpdump wget ntpdate 二、开始安装 [root@centos src]$tar xvf haproxy-1.8.20.tar.gz [root@centos src]$cd haproxy-1.8.20/ [root@centos haproxy-1.8.20]$make ARCH=x86_64 TARGET=linux2628 USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1 USE_SYSTEMD=1 USE_CPU_AFFINITY=1 PREFIX=/usr

利用ansible书写playbook搭建HAProxy+Keepalived+PXC负载均衡和高可用的PXC环境续

微笑、不失礼 提交于 2019-12-02 22:52:08
ansible、playbook、haproxy、keepalived、PXC haproxy+keepalived双主模式调度pxc集群 HAProxy介绍 反向代理服务器,支持双机热备支持虚拟主机,但其配置简单,拥有非常不错的服务器健康检查功能, 当其代理的后端服务器出现故障, HAProxy会自动将该服务器摘除,故障恢复后再自动将该服务器加入 引入了frontend,backend;frontend根据任意 HTTP请求头内容做规则匹配,然后把请求定向到相关的backend. Keepalived介绍 Keepalived是一个基于VRRP协议来实现的WEB 服务高可用方案,可以利用其来避免单点故障。 一个WEB服务至少会有2台服务器运行Keepalived,一台为主服务器(MASTER), 一台为备份服务器(BACKUP),但是对外表现为一个虚拟IP,主服务器会发送特定的消息给备份服务器, 当备份服务器收不到这个消息的时候,即主服务器宕机的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性。 一、环境准备: proxy 192.168.1.241(外网IP: 139.9.219.* ) 跳板机(堡垒主机)、安装ansible、数据库客户端 pxc-0001 192.168.1.181 PXC数据库服务器角色 pxc-0002 192.168.1.182

Haproxy redirect www to non-www

梦想的初衷 提交于 2019-12-02 22:46:14
I'm currently using Haproxy to balance several express.js nodes. I know that it's possible to redirect using express.js, but I was hoping to do so with Haproxy. I was wondering how I can do a permanent redirect from www.mysite.com to mysite.com? redirect prefix http://example.com code 301 if { hdr(host) -i www.example.com } Please see the documentation of the redirect prefix rule for more information. If you are using a newer version of HAProxy, i.e. at least 1.6, you can use a more generic syntax which allows to redirect any host, not just explicitly named http-request redirect prefix http://