haproxy+keepalived 部署脚本

废话不多说,直接上脚本,编译安装的版本为:haproxy-1.5.2.tar.gz,keepalived-1.2.13.tar.gz

install.sh

#!/bin/bash

pack_source="/usr/local/src"
pack_target="/usr/local/haproxy"
ha_package="haproxy-1.5.2.tar.gz"
ha_pack_dir="haproxy-1.5.2"
keep_package="keepalived-1.2.13.tar.gz"
keep_pack_dir="keepalived-1.2.13"

if [ -f "/usr/local/sbin/haproxy" ];then
         echo "ERROR,haproxy already install ,please uninstall first!"
         exit 1
fi

sudo grep -q haproxy /etc/passwd
if [ $? -ne 0 ];then
sudo useradd haproxy
fi

sudo yum install -y gcc
sudo yum install -y openssl-devel

#install haproxy
sudo mkdir -p /usr/local/haproxy

cd $pack_source
rm -rf $pack_source/$ha_pack_dir
sudo tar -zxvf $pack_source/$ha_package -C $pack_source
cd $pack_source/$ha_pack_dir
sudo make TARGET=linux26 ARCH=x86_64
sudo make install

#install keepalived
cd $pack_source
rm -rf $pack_source/$keep_pack_dir
sudo tar -zxvf $pack_source/$keep_package -C $pack_source
cd $pack_source/$keep_pack_dir
sudo ./configure
sudo make
sudo make install

#config
sudo mkdir -p /etc/keepalived
sudo mkdir -p /etc/haproxy

yes|sudo cp -f $pack_source/$ha_pack_dir/examples/haproxy.init /etc/init.d/haproxy
sudo chmod +x /etc/init.d/haproxy
sudo ln -s /usr/local/sbin/haproxy /usr/sbin

yes|sudo cp -f /usr/local/etc/rc.d/init.d/keepalived /etc/init.d/keepalived
yes|sudo cp -f /usr/local/etc/sysconfig/keepalived /etc/sysconfig/keepalivedyes|sudo cp -f /usr/local/check_haproxy.sh /etc/keepalived/check_haproxy.sh
sudo chmod +x /etc/init.d/keepalived
sudo ln -s /usr/local/sbin/keepalied /usr/sbin

#autostart
sudo chkconfig --add keepalived
sudo chkconfig keepalived on

#log
sudo mkdir -p /data/log/haproxy
sudo mkdir -p /data/log/keepalived
sudo touch /data/log/haproxy/haproxy.log
sudo touch /data/log/keepalived/keepalived.log

sudo chown -R data.deploy /devcloud

selinux=`sudo getenforce`

if [ $selinux == "Enforcing" ];then

    sudo chcon -R -t default_t /data
    sudo chcon -R -t var_log_t /data/log
    sudo chcon -R -t var_log_t /data/log/haproxy
    sudo chcon -R -t var_log_t /data/log/keepalived

else
    echo "OK"
fi

sudo sed -i "s/SYSLOGD_OPTIONS=.*/SYSLOGD_OPTIONS=\"-c 2 -r -m 0\"/g " /etc/sysconfig/rsyslog
sudo sed -i "s/KEEPALIVED_OPTIONS=.*/KEEPALIVED_OPTIONS=\"-D -d -S 0\"/g" /etc/sysconfig/keepalived
sudo sed -i "s/\#\$ModLoad imudp/\$ModLoad imudp/g" /etc/rsyslog.conf
sudo sed -i "s/\#\$UDPServerRun 514/\$UDPServerRun 514/g" /etc/rsyslog.conf
sudo sed -i "s/cron.none/cron.none;local2.none;local0.none/g" /etc/rsyslog.conf
sudo sed -i ‘$a local2.*             /data/log/haproxy/haproxy.log ‘ /etc/rsyslog.conf
sudo sed -i ‘$a local0.*             /data/log/keepalived/keepalived.log‘ /etc/rsyslog.conf
sudo service rsyslog restart

exit 0

check_haproxy.sh

#!/bin/bash
A=`ps -C haproxy --no-header | wc -l`

if [ $A -eq 0 ];then
/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg
sleep 3s
if [ `ps -C haproxy --no-header | wc -l` -eq 0 ];then
sudo service keepalived stop
fi
fi
时间: 2024-07-29 00:57:28

haproxy+keepalived 部署脚本的相关文章

haproxy+keepalived部署

VIP1:10.90.11.196 VIP2:10.90.11.195 DIP1:10.90.11.96 DIP2:10.90.11.95 keepalived部署 Director1.Director2: yum install keepalived -y vim /etc/keepalived/keepalived.conf 10.90.11.96 10.90.11.95 global_defs {#notification_email {# [email protected]#}#noti

Haproxy+keepalived高可用、负载均衡安装部署方案

1     环境说明 前端两台haproxy+keepalived互为主从,提供高可用:另外基于不同域名访问不同的虚拟ip实现负载均衡 1.1     环境描述 服务器A(主.从):eth0:10.241.51.245   eth1:192.168.1.9 服务器B(从.主):eth2:10.241.51.246   eth1:192.168.1.10 服务器C(web01):eth0:10.241.51.247 服务器D(web02):eth0:10.241.51.248 VIP1:10.24

Haproxy+Keepalived高可用环境部署梳理(主主和主从模式)

Nginx.LVS.HAProxy 是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,通常会结合Keepalive做健康检查,实现故障转移的高可用功能. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59

haproxy+keepalived实现高可用负载均衡web集群

haproxy+keepalived实现高可用负载均衡web集群 负载均衡集群的概念 负载均衡是设计分布式系统架构必须要考虑的因素之一,它指的是通过调度分发的方式尽可能将"请求"."访问"的压力负载平均分摊到集群中的各个节点,避免有些节点负载太高导致访问延迟,而有些节点负载很小导致资源浪费.这样,每个节点都可以承担一定的访问请求负载压力,并且可以实现访问请求在各节点之间的动态分配,以实现负载均衡,从而为企业提供更高性能,更加稳定的系统架构解决方案. 高可用集群的概念

基于HAProxy+Keepalived高可用负载均衡web服务的搭建

一 原理简介 1.HAProxyHAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理.HAProxy运行在时下的硬件上,完全可以支持数以万计的并发连接.并且它的运行模式使得它可以很简单安全的整合进当前的架构中, 同时可以保护web服务器不被暴露到网络上.2.KeepalivedKeepalived 是一个基于VRRP协议来实现的LVS服务高

高性能业务架构解决方案(HAproxy+Keepalived)

高性能业务架构解决方案(HAproxy+Keepalived) 一. 概况 1.1 应用场景 1.2 LVS/Nginx/HAProxy特点 二. 相关理论 2.1 Keepalived工作原理 2.2 HAproxy工作原理 三. 架构拓扑 四. 资源规划 五. 实施部署 5.1初始化配置 5.2 HAproxy配置 5.3 Keepalived部署 5.3.1 Keepalived的安装 5.3.2 配置keepalived 5.3.3 检测脚本 5.4 后端WEB服务器 5.5 测试 5.

haproxy+keepalived搭建WEB群集

haproxy+keepalived搭建WEB群集 前面已经学习了两款web群集软件Nginx和lvs,他们都有各自的特点,本章将介绍另外一款群集软件haproxy,我们将对其的调度算法.群集环境.以及群集的配置展开讲解. haporxy是目前比较流行的调度工具,之前学习的lvs配置相对来说比较复杂,nginx不能实现健康检查性能也没有haproxy好.官方站点位于htp://haproxy.1wt.eu/. 今天我们将介绍使用haproxy搭建一套web群集 一.案例概述 1.案例前知识点 1

HAproxy + keepalived 实现双机热备

一.HAProxy简介: HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理.HAProxy运行在时下的硬件上,完全可以支持数以万计的并发连接.并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上. HAProxy实现了一种事件驱动.单一进程模型,此模型支持非常大的并发连接数.多进程或

haproxy+keepalived搭建nginx+lamp集群

haproxy+keepalived搭建nginx+lamp集群 实验拓扑: 实验环境: 主机 Ip地址 软件 haproxy主调度器 192.168.100.154 keepalived-1.2.13.tar.gz haproxy-1.4.24.tar.gz haproxy从调度器 192.168.100.155 keepalived-1.2.13.tar.gz haproxy-1.4.24.tar.gz Nginx1 192.168.100.152 nginx-1.6.2.tar.gz Ng