一,查看本地centos的版本:

[root@localhost lib]# cat /etc/redhat-release
CentOS Linux release 8.1.1911 (Core)

说明:架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest

对应的源码可以访问这里获取: https://github.com/liuhongdi/

说明:作者:刘宏缔 邮箱: 371125307@qq.com

二,director机器上安装:

1,确保ip_forward值为1,如果不是,手动修改为1

[root@14c53ada11c2 /]# more /proc/sys/net/ipv4/ip_forward

1

2,安装ipvsadm

[root@14c53ada11c2 /]# yum install ipvsadm

3, 配置虚拟ip:

[root@14c53ada11c2 /]# ip addr add 172.17.0.108 dev eth0:0

4,添加lvs规则:

先添加虚拟ip

[root@14c53ada11c2 /]# ipvsadm -A -t 172.17.0.108:80 -s rr

后添加realserver,两台,ip分别是:172.17.0.2/172.17.0.4

[root@14c53ada11c2 /]# ipvsadm -a -t 172.17.0.108:80 -r 172.17.0.2:80 -g -w 1
[root@14c53ada11c2 /]# ipvsadm -a -t 172.17.0.108:80 -r 172.17.0.4:80 -g -w 1

说明:如果有多台机器,按此格式继续添加

三,realserver上配置:

说明:每台机器上均需要做以下操作:

1,添加虚拟ip到本机的lo网络接口上:

[root@a63bd60008fe /]# ip addr add 172.17.0.108 dev lo:0

2,配置以下四项的取值:

[root@a63bd60008fe /]# echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
[root@a63bd60008fe /]# echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
[root@a63bd60008fe /]# echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
[root@a63bd60008fe /]# echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

3,realserver上安装nginx,并启动:

[root@a63bd60008fe /]# yum install nginx
[root@a63bd60008fe /]# /usr/sbin/nginx

四,测试

从浏览器访问:

http://172.17.0.108/

说明:两台realserver上的nginx,其中一台的nginx默认页面做了处理,header的背景色从#900改成了#090,

为的是察看效果,

多刷新几次后可以看到后端nginx的切换。

说明:后端的多个realserver中,可以把其中一台的nginx关闭,则轮循不会再分发到此realserver

可以用下面的命令测试

[root@cb8a9d5de4fa html]# ps auxfww
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 118 0.0 0.0 103292 2164 ? Ss 08:33 0:00 nginx: master process /usr/sbin/nginx
nginx 119 0.0 0.2 122024 7748 ? S 08:33 0:00 \_ nginx: worker process
nginx 120 0.0 0.2 122024 7748 ? S 08:33 0:00 \_ nginx: worker process
[root@cb8a9d5de4fa html]# kill 118

最新文章

  1. 父div高度不能根据子div高度自动变化的解决方案
  2. 每天一个linux命令(21):find命令之xargs
  3. ES6 对象解构
  4. http://debugjs.com/
  5. C 到C++的升级
  6. IOS杂笔- 7(类方法load与initialize的区别 浅析)
  7. javascript 动态改变onclick事件
  8. Install MySQL on Mac OS X——MAC安装MySQL
  9. NBUT 1120 Reimu's Teleport (线段树)
  10. 你的iOS静态库该减肥了
  11. 【转】解决HttpServletResponse输出的中文乱码问题
  12. 5. repeater图片放大
  13. css样式图片、渐变、相关小知识
  14. 重读LPTHW-Lesson37
  15. MySQL validate_password 插件
  16. 最大值减去最小值小于或等于num的子数组数量
  17. DNS远程和DNS日志
  18. Prototype模式
  19. 《C++ Primer》学习笔记:迭代器介绍
  20. websocket简单实现在线聊天

热门文章

  1. ES 实现实时从Mysql数据库中读取热词,停用词
  2. [极客大挑战 2019]Secret File wp
  3. Python中的相对路径的表示方法
  4. Kubernetes调度流程与安全(七)
  5. Mysql查看最大连接,修改
  6. matlab中如何定义函数
  7. list、set、map的区别和联系
  8. Helm部署和体验jenkins
  9. EM 算法 Expectation Maximization
  10. 【数量技术宅|量化投资策略系列分享】股指期货IF分钟波动率统计策略