玩转Linux之搭建高可用负载均衡群集综合案例

Posted Friends of the wind

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了玩转Linux之搭建高可用负载均衡群集综合案例相关的知识,希望对你有一定的参考价值。

在这里插入图片描述

要求

  1. 通过keepalived确保lvs、nginx、dns以及网关的高可用
  2. 通过lvs的dr模式实现httpd负载均衡
  3. 通过nginx实现tomcat负载均衡
  4. 通过nfs提供共享存储
  5. 通过www.benet.com访问httpd网站;www.accp.com访问tomcat网站

推荐步骤

温馨提示:实验环境,关闭防火墙与selinux

一、 部署FTP,通过其安装软件。服务器1安装ftp服务,并在/var/ftp下创建目录centos,并将系统盘下所有内容复制到其下。

  1. 挂载光盘(省略),创建FTP共享目录/var/ftp/centos/
  2. 安装FTP服务
  3. 复制内容到/var/ftp/centos
  4. 启动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

二、 软件安装

  1. 服务器一和服务器二上源代码安装nginx,网站目录为/usr/local/nginx/html
    详见轻松搭建Nginx服务
  2. 服务器一和服务器二Yum安装dns与keepalived
配置yum仓库,以FTP方式安装
进入仓库目录:cd /etc/yum.repos.d/
清空默认文件:rm -f *
自定义文件:vim a.repo
yum -y install bind  keepalived
  1. 服务器三和服务器四源代码编译安装tomcat,分别设置网站目录为/web/webapp1 ;/web/webapp2主页内容先设置成不一样
    详见搭建Nginx+Tomcat群集
  2. 服务器三和服务器四yum安装httpd 主页内容先设置成不一样
服务器三设置web内容
echo "web1" > /var/www/html/index.html
服务器四设置web内容
echo "web2" > /var/www/html/index.html

三、keepalived设置(服务器一、二)

  1. 启动路由转发
编辑配置文件
vim /etc/sysctl.conf
重载配置
sysctl -p

编辑配置文件内容:
在这里插入图片描述
重载配置:
在这里插入图片描述

  1. 加载lvs模块
modprobe ip_vs
  1. 设置两个热备实例组VI-1和VI-2

  2. VI-1设置三个漂移地址192.168.1.254(lvs)和192.168.1.253(nginx)、192.168.1.252(dns)

  3. VI-2设置漂移地址192.168.2.254(内网网关)

  4. 192.168.1.254做为lvs的vip,并设置lvs的dr模式
    注意:先查看网卡名称,有的电脑第二块网卡是ens36、有的是ens37,注意红线标记部位
    服务器一:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    服务器二:
    在这里插入图片描述
    在这里插入图片描述
    图三内容一样,省略。

四、nginx设置(服务器一、二)

  1. 创建tomcat_server服务器组,包含两台httpd服务器
    详见搭建Nginx+Tomcat群集
  2. 设置nginx反向代理
    详见搭建Nginx+Tomcat群集

五、阶段测试

测试机网络配置:
在这里插入图片描述

  1. LVS负载均衡 http://192.168.1.254 刷新测试
    在这里插入图片描述
  2. Nginx负载均衡 http://192.168.1.253刷新测试
    在这里插入图片描述
  3. 高可用 断开服务器一网卡再重复以上依然能显示上述内容

六、nfs服务器设置

  1. 创建/webapp,网页为index.html
  2. 创建/webjsp.网页为index.jsp
  3. 分别共享发布两个目录
创建目录
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文件内容:
在这里插入图片描述

  1. 在服务器三、四分别挂载目录
    将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组合搭建负载均衡+高可用群集

玩转Linux系统之搭建Nginx+Tomcat群集实现负载均衡

玩转Linux系统之基于DR模式的LVS负载均衡群集

玩转Linux系统之搭建LVS负载均衡群集及排错

Linux集群:搭建高可用集群

高可用篇之Keepalived (HAProxy+keepalived 搭建高可用负载均衡集群)