ubuntu16.04 部署配置LVS主从
实验环境---ubuntu16.04
四台机器:10.211.55.13—55.16
具体实验环境配置如下:
10.211.55.102 LVS_VIP
10.211.55.13 LVS_MASTER
10.211.55.14 LVS_SALVE
10.211.55.15 WEB1
10.211.55.16 WEB2
安装LVS与Keepalived
sudo apt install ipvsadm
打开ip forward功能:文件/etc/sysctl.conf
打开后修改里面“net.ipv4.ip_forward = 1”
执行如下命令使设置生效:
sudo sysctl -p
sudo apt install ipvsadm
打开ip forward功能:文件/etc/sysctl.conf
打开后修改里面“net.ipv4.ip_forward = 1”
执行如下命令使设置生效:
sysctl -p
接下来开启keepalived服务:LVS MASTER. LVS SLAVE都要操作如下:55.13 55.14
sudo systemctl start keepalived.service
查看keepalived进程:
[root@lvs keepalived-1.2.7]# sudo ps aux|grep keepalived
root 18485 0.0 0.0 42164 972 ? Ss 11:43 0:00 keepalived -D
root 18486 0.0 0.2 46464 2376 ? S 11:43 0:00 keepalived -D
root 18487 0.0 0.1 46340 1740 ? S 11:43 0:00 keepalived -D
去master查看虚拟ip是否加上:注意如果虚拟ip没有自动加上,请重启下keepalived服务。虚拟ip :55.102(自定义)
parallels@parallels-vm:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:1c:42:41:65:f6 brd ff:ff:ff:ff:ff:ff
inet 10.211.55.13/24 brd 10.211.55.255 scope global dynamic enp0s5
valid_lft 1117sec preferred_lft 1117sec
inet 10.211.55.102/32 scope global enp0s5
valid_lft forever preferred_lft forever
inet6 fdb2:2c26:f4e4:0:2d91:9984:fe45:63ca/64 scope global temporary dynamic
valid_lft 602038sec preferred_lft 83527sec
inet6 fdb2:2c26:f4e4:0:e00e:d6:1c91:3bea/64 scope global mngtmpaddr noprefixroute dynamic
valid_lft 2591853sec preferred_lft 604653sec
inet6 fe80::5806:a54:e63b:90c0/64 scope link
valid_lft forever preferred_lft forever
上述显示55.102虚拟ip加上了!
接下里配置部署两台web服务器:
配置部署10.211.55.15 web1:
配置虚拟IP启动脚本:
parallels@parallels-vm:~$ pwd
/home/parallels
parallels@parallels-vm:~$ cat realserver.sh
#Written by :NetSeek http://www.linuxtone.org
VIP=10.211.55.102
. /lib/init/vars.sh
. /lib/lsb/init-functions
case "$1" in
start)
ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP
/sbin/route add -host $VIP dev lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
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 $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"
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0
配置部署tomcat:
sudo apt-get install tomcat7 -y
启动tomcat服务:
sudo systemctl start tomcat7.service
为了测试负载均衡,我们将这个页面改下,以更好的标识这个网页是本服务器的
Tomcat7安装目录位于/usr/share/tomcat7,所以我们要编辑tomcat下的webapps/ROOT/index.html这个文件。
parallels@parallels-vm:/usr/share/tomcat7-root/default_root$ pwd
/usr/share/tomcat7-root/default_root
删掉此目录的index.html文件:sudo rm -f index.html
重新创建此目录的index.html文件,内容如下:
Sudo touch /usr/share/tomcat7-root/default_root/index.html
parallels@parallels-vm:/usr/share/tomcat7-root/default_root$ cat index.html
web1 10.211.55.15
启动虚拟IP的脚本:
sudo sh realserver.sh start
去LVS_MASTER服务器的终端查看下ipvsadm,查看WEB1(55.15)服务器加到集群里:
sudo ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 10.211.55.102:8080 rr persistent 50
-> 10.211.55.15:8080 Route 1 0 0
上述可见:55.15已经加进来了!
此时我们访问网页http://10.211.55.15:8080,出现界面显示web1 10.211.55.15;或者使用命令行测试转发情况都可以查看。
配置部署10.211.55.16 web2:
配置虚拟IP启动脚本:
parallels@parallels-vm:~$ pwd
/home/parallels
parallels@parallels-vm:~$ cat realserver.sh
#Written by :NetSeek http://www.linuxtone.org
VIP=10.211.55.102
. /lib/init/vars.sh
. /lib/lsb/init-functions
case "$1" in
start)
ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP
/sbin/route add -host $VIP dev lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
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 $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"
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0
配置部署tomcat:
sudo apt-get install tomcat7 -y
启动tomcat服务:
sudo systemctl start tomcat7.service
为了测试负载均衡,我们将这个页面改下,以更好的标识这个网页是本服务器的
Tomcat7安装目录位于/usr/share/tomcat7,所以我们要编辑tomcat下的webapps/ROOT/index.html这个文件。
parallels@parallels-vm:/usr/share/tomcat7-root/default_root$ pwd
/usr/share/tomcat7-root/default_root
删掉此目录的index.html文件:sudo rm -f index.html
重新创建此目录的index.html文件,内容如下:
Sudo touch /usr/share/tomcat7-root/default_root/index.html
parallels@parallels-vm:/usr/share/tomcat7-root/default_root$ cat index.html
Web2 10.211.55.16
启动虚拟IP的脚本:
sudo sh realserver.sh start
去LVS_MASTER服务器的终端查看下ipvsadm,查看WEB2服务器加到集群里:
sudo ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 10.211.55.102:8080 rr persistent 50
-> 10.211.55.15:8080 Route 1 0 0
-> 10.211.55.16:8080 Route 1 0 0
上述55.15 55.16两台web都已经加进来了
最后客户端测试:
浏览器输入:vip地址即10.211.55.102:8080
停掉其中一台keepalived,服务正常访问!
ubuntu16.04 部署配置LVS主从的更多相关文章
- centos6.3部署配置LVS主从
LVS是Linux Virtual Server的简写,即Linux虚拟服务器,是一个虚拟的服务器集群系统.这个项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一.它的官方网址 ...
- Ubuntu16.04 部署配置GO语言开发环境 & 注意事项
1. 安装GO 安装go语言包: $ curl -O https://storage.googleapis.com/golang/go1.10.1.linux-amd64.tar.gz 下载完成后 ...
- Ubuntu16.04安装配置和使用ctags
Ubuntu16.04安装配置和使用ctags by ChrisZZ ctags可以用于在vim中的函数定义跳转.在ubuntu16.04下默认提供的ctags是很老很旧的ctags,快要发霉的版本( ...
- Ubuntu16.04下配置ssh免密登录
Ubuntu16.04下配置ssh免密登录 环境准备:新建两台虚拟机,而且两台虚拟机上都装有Ubuntu16.04的系统,使两台虚拟机之间保持互通状态.分别为两台虚拟机命名为A,B.假设我们要使A虚拟 ...
- 基于ubuntu16.04部署IBM开源区块链项目-弹珠资产管理(Marbles)
前言 本教程基本上是对Marbles项目的翻译过程. 如果英文比较好的话,建议根据官方操作说明,一步步进行环境部署.当然你也可以参考本教程在自己的主机上部署该项目. Marbles 介绍 关于 Mar ...
- ubuntu16.04下配置JDK 1.8+安装Java EE,并实现最大子数组算法
软工第二次作业: 1.在个人电脑中安装一个集成开发环境(Microsoft Visual Studio.Eclipse或其它工具均可),要求该环境能够提供单元自动测试功能: 2.记录安装过程,并将全部 ...
- Ubuntu16.04 安装配置Caffe
Caffe已经是第三次安装配置了,为什么是第三次呢?因为我实在是低估了深度学习对于硬件的要求.第一次我在自己笔记本上配置的单核,CPU only ... 结果是,样例数据跑了4小时,这还怎么玩?第二 ...
- Linux入门(16)——Ubuntu16.04下配置sublime text 3使用markdown
sublime text 3安装两个插件: MarkDown Editing OmniMarkupPreviewer 有的人使用 MarkDown Editing markdownpreviewer ...
- Ubuntu16.04安装配置sublime text3
1.安装Sublime Text 3 首先添加sublime text 3的仓库: sudo add-apt-repository ppa:webupd8team/sublime-text-3 根据提 ...
随机推荐
- emWin酿造机过程演示,含uCOS-III和FreeRTOS两个版本
第2期:酿造机过程演示 配套例子:V6-902_STemWin提高篇实验_酿造机过程演示(uCOS-III)V6-903_STemWin提高篇实验_酿造机过程演示(FreeRTOS) 例程下载地址:h ...
- Java二叉树实现及递归与非递归遍历实现
树的遍历分两种:1.深度优先遍历 1.1 递归算法实现 2.2 非递归算法实现(使用栈存储)2.广度优先遍历(使用队列存储) import java.util.*; /** * 类功能描述: 二叉树遍 ...
- [Swift]LeetCode525. 连续数组 | Contiguous Array
Given a binary array, find the maximum length of a contiguous subarray with equal number of 0 and 1. ...
- [Swift]LeetCode669. 修剪二叉搜索树 | Trim a Binary Search Tree
Given a binary search tree and the lowest and highest boundaries as L and R, trim the tree so that a ...
- [Swift]LeetCode797. 所有可能的路径 | All Paths From Source to Target
Given a directed, acyclic graph of N nodes. Find all possible paths from node 0 to node N-1, and re ...
- SpringCloud(4)---Ribbon服务调用,源码分析
SpringCloud(4)---Ribbon 本篇模拟订单服务调用商品服务,同时商品服务采用集群部署. 注册中心服务端口号7001,订单服务端口号9001,商品集群端口号:8001.8002.800 ...
- 今天俺要说一说工厂方法模式(Factory)
前言;工厂方法模式又叫做工厂模式,它是23个设计模式中的一个,它解决的还是在软件设计中创建对象的问题,它可以更好的解决用户需求的变化. 问题;在简单工厂模式中,我们将实例化的对象全部放于Factory ...
- SQL Sever 2008 R2版本添加Northwin数据库错误解决
一.环境: OS: Windows 7 ProfessionalSQL Server 2008 R2 二.示例数据库Northwind下载(mdf) Northwind 三.附加数据库: 打开Micr ...
- 初探Java设计模式4:JDK中的设计模式
JDK中设计模式 本文主要是归纳了JDK中所包含的设计模式,包括作用和其设计类图.首先来个总结,具体的某个模式可以一个一个慢慢写,希望能对研究JDK和设计模式有所帮助.一.设计模式是什么(1)反复出现 ...
- 【Python3爬虫】12306爬虫
此次要实现的目标是登录12306网站和查看火车票信息. 具体步骤 一.登录 登录功能是通过使用selenium实现的,用到了超级鹰来识别验证码.没有超级鹰账号的先注册一个账号,充值一点题分,然后把下载 ...