玩转Linux之搭建高可用负载均衡群集综合案例
Posted Friends of the wind
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了玩转Linux之搭建高可用负载均衡群集综合案例相关的知识,希望对你有一定的参考价值。
要求
- 通过keepalived确保lvs、nginx、dns以及网关的高可用
- 通过lvs的dr模式实现httpd负载均衡
- 通过nginx实现tomcat负载均衡
- 通过nfs提供共享存储
- 通过www.benet.com访问httpd网站;www.accp.com访问tomcat网站
推荐步骤
温馨提示:实验环境,关闭防火墙与selinux
一、 部署FTP,通过其安装软件。服务器1安装ftp服务,并在/var/ftp下创建目录centos,并将系统盘下所有内容复制到其下。
- 挂载光盘(省略),创建FTP共享目录/var/ftp/centos/
- 安装FTP服务
- 复制内容到/var/ftp/centos
- 启动FTP服务
创建FTP共享目录
mkdir -p /var/ftp/centos
以本地安装为例,/mnt为挂载到的本地目录
rpm -ivh /mnt/Packages/vsftpd-3.0.2-21.el7.x86_64.rpm
复制,复制目录必须加-r,f是若有重名文件不提醒用户,直接覆盖
cp -rf /mnt/* /var/ftp/centos/
systemctl start vsftpd
二、 软件安装
- 服务器一和服务器二上源代码安装nginx,网站目录为/usr/local/nginx/html
详见轻松搭建Nginx服务 - 服务器一和服务器二Yum安装dns与keepalived
配置yum仓库,以FTP方式安装
进入仓库目录:cd /etc/yum.repos.d/
清空默认文件:rm -f *
自定义文件:vim a.repo
yum -y install bind keepalived
- 服务器三和服务器四源代码编译安装tomcat,分别设置网站目录为/web/webapp1 ;/web/webapp2主页内容先设置成不一样
详见搭建Nginx+Tomcat群集 - 服务器三和服务器四yum安装httpd 主页内容先设置成不一样
服务器三设置web内容
echo "web1" > /var/www/html/index.html
服务器四设置web内容
echo "web2" > /var/www/html/index.html
三、keepalived设置(服务器一、二)
- 启动路由转发
编辑配置文件
vim /etc/sysctl.conf
重载配置
sysctl -p
编辑配置文件内容:
重载配置:
- 加载lvs模块
modprobe ip_vs
-
设置两个热备实例组VI-1和VI-2
-
VI-1设置三个漂移地址192.168.1.254(lvs)和192.168.1.253(nginx)、192.168.1.252(dns)
-
VI-2设置漂移地址192.168.2.254(内网网关)
-
192.168.1.254做为lvs的vip,并设置lvs的dr模式
注意:先查看网卡名称,有的电脑第二块网卡是ens36、有的是ens37,注意红线标记部位
服务器一:
服务器二:
图三内容一样,省略。
四、nginx设置(服务器一、二)
- 创建tomcat_server服务器组,包含两台httpd服务器
详见搭建Nginx+Tomcat群集 - 设置nginx反向代理
详见搭建Nginx+Tomcat群集
五、阶段测试
测试机网络配置:
- LVS负载均衡 http://192.168.1.254 刷新测试
- Nginx负载均衡 http://192.168.1.253刷新测试
- 高可用 断开服务器一网卡再重复以上依然能显示上述内容
六、nfs服务器设置
- 创建/webapp,网页为index.html
- 创建/webjsp.网页为index.jsp
- 分别共享发布两个目录
创建目录
mkdir /webapp /webjsp
创建网页
vim /webapp/index.html
vim /webjsp/index.jsp
共享发布
vim /etc/exports
systemctl start nfs
systemctl start rpcbind
vim /etc/exports配置文件内容:
vim /webapp/index.html文件内容:
vim /webjsp/index.jsp文件内容:
- 在服务器三、四分别挂载目录
将192.168.2.5的/webapp挂载到/var/www/html上
将192.168.2.5的/webjsp挂载到/web/webapp1上
将192.168.2.5的/webjsp挂载到/web/webapp2上
mount 192.168.2.5:/webapp /var/www/html/
mount 192.168.2.5:/webjsp /web/webapp1/
mount 192.168.2.5:/webapp /var/www/html/
mount 192.168.2.5:/webjsp /web/webapp2/
七、dns服务器配置
1.创建两个区域benet.com和accp.com
2.创建两个A记录:
www.benet.com—192.168.1.254
www.accp.com----192.168.1.253
详见轻松搭建Nginx服务
八、将客户机的首选dns服务器设置为192.168.1.254;客户机上分别通过两个域名访问httpd和tomcat;http://www.benet.com;http://www.accp.com
鸣谢
由于本节知识多,故往期教程里有的省略,如有疑问请您留言,我是您的朋友Friends of the wind
以上是关于玩转Linux之搭建高可用负载均衡群集综合案例的主要内容,如果未能解决你的问题,请参考以下文章
玩转Linux之LVS与keepalived组合搭建负载均衡+高可用群集