LVS+DR源码安装
内部邀请码:C8E245J (不写邀请码,没有现金送)
国内私募机构九鼎控股打造,九鼎投资是在全国股份转让系统挂牌的公众公司,股票代码为430719,为“中国PE第一股”,市值超1000亿元。
http://tmxk.org/thread-610-1-1.html
lvs+DR置文档:(64位机器)
#create by laoseng
#lvs最好的是用url进行健康检测。但是端口方便,一般用。在配置文件,其中的url字符串是md5加密的值.学习补充!lvs重启后恢复需要15s
环境:
系统版本:Centos5.4(64位)
软件版本:ipvsadm-1.24.tar.gz,keepalived-1.1.17.tar.gz
lvs1(Master):
eth0: 192.168.1.131
eth1:192.168.2.131
vip: ip:192.168.1.133
lvs2(Backup):
eth0: 192.168.1.132
eth1:192.168.2.132
vip: 暂时无
#建议内网外ip分配采用最后8位相同的方式,这样便于管理
web:
realServer1 eth0:192.168.1.134
realServer2 eth0:192.168.1.135
mkdir -p /tool/laoseng/lvs
cd /tool/laoseng/lvs
wget http://www.linuxvirtualserver.or ... ipvsadm-1.24.tar.gz
wget http://www.keepalived.org/software/keepalived-1.1.17.tar.gz
modprobe ip_vs #把ip_vs模块加载到内核
lsmod|grep ip_vs
cat /etc/redhat-release
uname -r
yum install -y kernel-devel
ln -s /usr/src/kernels/2.6.32-220.el6.i686 /usr/src/linux
2.6.32-220.el6.i686
#安装ipvsadm软件
cd /tool/laoseng/lvs
tar zxvf ipvsadm-1.24.tar.gz
cd ipvsadm-1.24
make
make install
cd ../
#安装keepalived软件
cd /tool/laoseng/lvs
tar zxvf keepalived-1.1.17.tar.gz
cd keepalived-1.1.17
./configure
make
make install
cd ..
#查看安装状况并复制到启动目录下:
ls -l /usr/local/sbin/keepalived
ls -l /usr/local/etc/rc.d/init.d/keepalived
ls -l /usr/local/etc/sysconfig/keepalived
ls -l /usr/local/etc/keepalived
cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
cp /usr/local/sbin/keepalived /usr/sbin/
service keepalived start
#配置转发及其防火墙
sed -i 's#net.ipv4.ip_forward = 0#net.ipv4.ip_forward=1#' /etc/sysctl.conf
sysctl -p
#配置文档keepalived.conf
vim /etc/keepalived/keepalived.conf
#====================lvs1上的======start=======================
! Configuration File for keepalived
global_defs { #全局配置
notification_email {
1572665580@qq.com #通知邮件。
}
notification_email_from 1572665580@qq.com
smtp_server 127.0.0.1 #连接本机的mail
smtp_connect_timeout 30
router_id LVS_laoseng01 #唯一的lvs1和lvs2应该配置不同名字。这里设置lvs1VS_laoseng01 lvs2:LVS_laoseng02
}
vrrp_instance VI_1 { #一个实例,一个实例代表一个服务
state MASTER #lvs1和lvs2上设置不同,lvs1:MASTER lvs2:BACKUP
interface eth0 #获取数据的网卡,一般生产环境上是外网的ip。
lvs_sync_daemon_inteface eth1
virtual_router_id 51
priority 150 #备份服务上优先级要低于100,如改为90
advert_int 1 #检测的间隔,按秒。
authentication { #检测密钥,就是接头暗号。
auth_type PASS
auth_pass 1111
}
virtual_ipaddress { #是对外服务的ip。就是让用户访问的。VIP.就是以后网站对外提供服务的ip。域名需要绑定此ip
#192.168.200.16
192.168.1.133
}
}
virtual_server 192.168.1.133 80 { #那个vip提供转发,就是接受到用户请求后转发的ip
delay_loop 6 #轮训
lb_algo wrr #算法
lb_kind DR
nat_mask 255.255.255.0
persistence_timeout 50 #会话保持 50秒
protocol TCP #tcp服务
real_server 200.166.188.108 80 { #转发给的真是的webip
weight 1
TCP_CHECK {
connect_timeout 8 #超时时间
nb_get_retry 3 #尝试次数。
delay_before_retry 3 #延迟。
connect_port 80 #连接端口。
}
}
real_server 200.166.188.109 80 {
weight 1
TCP_CHECK {
connect_timeout 8
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
#====================lvs1上的======end=========================
#lvs2上配置更改根据上边。
#启动服务
/etc/init.d/keepalived start
#查看进程和lvs状态
ps -ef |grep keepalived
ipvsadm -L -n
#==========start======================在web realserver服务器=================================
#在每个web端执行脚本ipvs_rs可以放到/usr/local/sbin/
#!/bin/bash
# Written by laoseng (1572665580@qq.com)
# description: Config realserver lo and apply noarp
WEB_VIP=192.168.1.133
. /etc/rc.d/init.d/functions #加载系统的函数库。
case "$1" in
start)
ifconfig lo:0 $WEB_VIP netmask 255.255.255.255 broadcast $WEB_VIP #绑定ip.linux上一个网卡可以绑定多个,lo:0中的0只能到255
/sbin/route add -host $WEB_VIP dev lo:0 #添加一个主机路由到lo:0上
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore #下边的四行是抑制arp响应。通过的arp欺骗来完成。让lvs选择发给谁,而不是让他们自动响应。
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p >/dev/null 2>&1
echo "RealServer Start OK"
;;
stop)
ifconfig lo:0 down
route del $WEB_VIP >/dev/null 2>&1
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
echo "RealServer Stoped"
;;
status)
# Status of LVS-DR real server.
islothere=`/sbin/ifconfig lo:0 | grep "$WEB_VIP"`
isrothere=`netstat -rn | grep "lo:0" | grep "$web_VIP"`
if [ ! "$islothere" -o ! "isrothere" ];then
# Either the route or the lo:0 device
# not found.
echo "LVS-DR real server Stopped."
else
echo "LVS-DR Running."
fi
;;
*)
# Invalid entry.
echo "$0: Usage: $0 {start|status|stop}"
exit 1
;;
esac
exit 0
#==========end======================在web realserver服务器===================================
#查看ip状态
ifconfig
#解决694 udp端口
iptables -A INPUT -p udp --dport 694 -j APPCPT;
LVS+DR源码安装的更多相关文章
- Python并发编程-redis-3.0.5 源码安装
1.简介 Remote Dictionary Server(Redis)是一个基于 key-value 键值对的持久化数据库存储系统.redis 和 Memcached 缓存服务很像,但它支持存储的 ...
- mono-3.4.0 源码安装时出现的问题 [do-install] Error 2 [install-pcl-targets] Error 1 解决方法
Mono 3.4修复了很多bug,继续加强稳定性和性能(其实Mono 3.2.8 已经很稳定,性能也很好了),但是从http://download.mono-project.com/sources/m ...
- 搭建LNAMP环境(七)- PHP7源码安装Memcached和Memcache拓展
上一篇:搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展 一.安装Memcached 1.yum安装libevent事件触发管理器 yum -y install libe ...
- 搭建LNAMP环境(二)- 源码安装Nginx1.10
上一篇:搭建LNAMP环境(一)- 源码安装MySQL5.6 1.yum安装编译nginx需要的包 yum -y install pcre pcre-devel zlib zlib-devel ope ...
- 搭建LNAMP环境(一)- 源码安装MySQL5.6
1.yum安装编译mysql需要的包 yum -y install gcc-c++ make cmake bison-devel ncurses-devel perl 2.为mysql创建一个新的用户 ...
- Greenplum 源码安装教程 —— 以 CentOS 平台为例
Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...
- salt源码安装软件和yum安装软件
上面简单列出了源码安装的sls文件书写思路. 涉及到一些固定的思路:如, 1,拷贝 解压安装时候需要依赖tar.gz存在 如果已安装则无需再次安装. 2,启动脚本 加入chk时候需要文件存在,如果已添 ...
- 搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展
上一篇:搭建LNAMP环境(五)- PHP7源码安装Redis和Redis拓展 一.安装MongoDB 1.创建mongodb用户组和用户 groupadd mongodb useradd -r -g ...
- 搭建LNAMP环境(三)- 源码安装Apache2.4
上一篇:搭建LNAMP环境(二)- 源码安装Nginx1.10 1.yum安装编译apache需要的包(如果已经安装,可跳过此步骤) yum -y install pcre pcre-devel zl ...
随机推荐
- GB2312 简体中文编码表
GB 2312中对所收汉字进行了“分区”处理,每区含有94个汉字/符号.这种表示方式也称为区位码. 01-09区为特殊符号. 16-55区为一级汉字,按拼音排序. 56-87区为二级汉字,按部首/笔画 ...
- 【原创】基于ZYNQ7000的交叉编译工具链Qt+OpenCV+ffmpeg等库支持总结(二)
承接上文http://www.cnblogs.com/bombe1013/p/3294301.html,我们接下来说说Qt的移植与安装. 很喜欢Qt这个库以及Qt creater这个IDE,其实个人觉 ...
- JPA详解
2006 年 5 月 2 日,EJB 3.0 规范最终版由 JCP(Java Community Process) 正式公布,标准号为 JSR(Java Specification Request)2 ...
- 了解AngularJS $resource
原文: https://learnable.com/books/angularjs-novice-to-ninja/preview/understanding-angularjs-resource-e ...
- apache开源项目--PDFBox
PDFBox是Java实现的PDF文档协作类库,提供PDF文档的创建.处理以及文档内容提取功能,也包含了一些命令行实用工具. 主要特性包括: 从PDF提取文本 合并PDF文档 PDF 文档加密与解密 ...
- HDU 2602 Find a way BFS搜索
题意:找到总时间最少的KFC 分析:两遍BFS 找KFC比较一下 注:有些地方的KFC可能到达不了,wa了一次 #include <iostream> #include <cstdi ...
- vi中如何去除高亮显示的单词
在vi命令行模式下输入:set nohlsearch 单词不高亮显示:set hlsearch 单词高亮显示: 如果再次打开仍然显示,则可以随便搜索一个不存在的单词,然后保存,重新打开高亮不在显示:
- Unicode中跟汉字相关的一些内容的总结陈词
UniHan 这几天琢磨着怎么方便的给汉字注音, 因为要知道具体哪些Unicode是给汉字用的, 就读了读Unicode的官方文档. 目前unicode已经发展到了7.0. 不看不知道, 发现Unic ...
- mysql fetch 系列函数
浏览器输出内容同上. 当使用 MYSQL_BOTH 或省略该参数是,将同时具有 MYSQL_NUM 与 MYSQL_ ASSOC 的特性. MySQL mysql_fetch_array 函数取得查询 ...
- [转载]mac下homebrew的使用
该文转自:https://www.zybuluo.com/phper/note/87055 mac系统也是基于unix的系统,所以也继承类很多unix的特性,包括软件的编译,安装等.ubuntu下有快 ...