LNMT的多机部署和双机热备

简介: LNMT的多机部署和双机热备



一、环境

三台主机分别为

192.168.28.3 tomcat

192.168.28.4  nfs

192.168.28.5 tomcat

192.168.28.6 nginx,keepalived

192.168.28.7 nginx,keepalived

二、配置tomcat

两台tomcat配置把解压包拖进主机解压移动

tar xf apache-tomcat-8.5.16.tar.gz 
tar xf apache-tomcat-8.5.16.tar.gz 
mv apache-tomcat-8.5.16 /usr/local/tomcat
mv apache-tomcat-8.5.16 /usr/local/tomcat
ln -s /usr/local/tomcat/bin/startup.sh /usr/bin/qd1
ln -s /usr/local/tomcat/bin/shutdown.sh /usr/bin/tz1

###创建挂载目录
/usr/local/tomcat
mkdir webapps1
###修改tomcat的访问目录
vim /usr/local/tomcat/conf/server.xml
###修改host字段插入
<Context path="" docBase="/usr/local/tomcat/webapps1" />

三、配置nfs共享

mkdir /opt/web1
mkdir /opt/web2
vim /etc/exports
systemctl restart nfs
exportfs

##安装nfs服务

yum -y install nfs

##创建共享目录

mkdir /opt/web1

mkdir /opt/web2

##配置nfs的配置文件vim /etc/exports

systemctl restart nfs

回到两台Tomcat的上查看共享目录

[root@localhost tomcat]# mkdir webapps1
showmount -e 192.168.28.4
mount 192.168.28.4:opt/web2 /usr/local/tomcat/webapps1
echo tomcat2 > webapps1/index.jsp
qd1

##查看挂载情况

df

###分别书写测试页面

echo tomcat1 > webapps1/index.jsp

echo tomcat2 > webapps1/index.jsp

##启动Tomcat

qd1

qd0

##查看端口

netstat -anptu |grep java

测试页面

四、配置nginx

1、两台都需要折磨配置

192.168.28.6

192.168.28.7

#安装
yum -y install epel-release.noarch 
yum -y install nginx
vim /etc/nginx/nginx.conf

2、在http下面插入这两条信息

在server字段插入下方这句话

启动nginx

访问一下测试页面

查看调度器

五、配置keepalived

1、安装

192.168.28.6

192.168.28.7

yum -y install keepalived
vim /etc/keepalived/keepalived.conf 
systemctl restart keepalived.service 
 scp /etc/keepalived/keepalived.conf 192.168.28.7:/etc/keepalived/keepalived.conf 
! Configuration File for keepalived
global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 192.168.200.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL            ###从的编号要改动一下 LVS_DEVEL1
   vrrp_skip_check_adv_addr
   #vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}
vrrp_instance VI_1 {
    state MASTER                  ###从改为BACKUP
    interface ens33               ###网卡名
    virtual_router_id 51
    priority 100                  ###从的优先级要比主低
    advert_int 1
   authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.28.200          ###VIP用来访问的虚拟IP
    }
}
virtual_server 192.168.28.200 8080 {       ###vip对应的真是IP 在下面
    delay_loop 6
    lb_algo rr 
    persistence_timeout 50
    protocol TCP
    real_server 192.168.28.3 8080 {        ###这是Tomcat服务器的IP
        weight 1
        HTTP_GET {
            url { 
              path /testurl/test.jsp
            }
url { 
              path /testurl2/test.jsp
            }
            url { 
              path /testurl3/test.jsp
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
    real_server 192.168.28.5 8080 {       ###这是Tomcat服务器的IP
        weight 1
        HTTP_GET {
            url { 
              path /testurl/test.jsp
            }
            url { 
              path /testurl2/test.jsp
}
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

2、重新启动一下keepalived查看IP

systemctl restart keepalived.service 
ip a

VIP页面访问测试

静态页面

动态页面

六、验证双机热备

模拟调度器主宕机systemctl  stop keepalived,使用调度器备访问

1、查看调度器备的IP,ip漂移说明keepalived生效

2、访问静态页面

3、 访问动态页面

 

相关文章
|
缓存 负载均衡 关系型数据库
Pgpool-II实现高可用+读写分离+负载均衡(一)---- 规划及安装
Pgpool-II是一款工作在PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件。提供了连接池、复制、负载均衡、限制过多连接、看门狗、查询缓存等功能。
|
3月前
|
负载均衡 jenkins 应用服务中间件
大规模部署下的 Jenkins 高可用性与负载均衡
【8月更文第31天】随着软件开发流程的加速,持续集成/持续交付(CI/CD)工具的重要性日益凸显。Jenkins 作为最受欢迎的 CI/CD 平台之一,为企业提供了强大的自动化构建和部署功能。然而,在大规模部署场景下,单一的 Jenkins 实例可能无法满足高可用性和性能的需求。本文将探讨如何设计和实施 Jenkins 高可用集群,以支持大型组织的需求,并通过负载均衡技术来提高系统的稳定性和响应速度。
266 0
|
4月前
|
NoSQL 关系型数据库 MySQL
多机部署:打造内网服务器集群
在多机部署教程中,了解如何配置分布式应用如Laravel以使用Redis同步用户状态。关键步骤包括:修改MySQL的`bind-address`至内网IP,重启服务;同样修改Redis的`bind`,重启服务;以及调整Elasticsearch的`network.host`和`discovery.seed_hosts`,并重启。通过这些步骤,确保服务间能内网通信,实现多服务器状态同步。
142 2
|
缓存 NoSQL 应用服务中间件
高性能软件负载OpenResty整合Reids集群配置
高性能软件负载OpenResty整合Reids集群配置
332 1
|
6月前
|
消息中间件 分布式计算 Hadoop
kafaka单节点安装部署kafaka多节点安装部署
kafaka单节点安装部署kafaka多节点安装部署
61 3
|
6月前
|
Kubernetes 容器
搭建K8S环境单机K8S集群
搭建K8S环境单机K8S集群
158 0
|
负载均衡 关系型数据库 网络安全
Pgpool-II实现高可用+读写分离+负载均衡(二)---- 配置篇
Pgpool-II是一款工作在PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件。提供了连接池、复制、负载均衡、限制过多连接、看门狗、查询缓存等功能。本篇介绍详细配置。
|
负载均衡 关系型数据库 PostgreSQL
Pgpool-II实现高可用+读写分离+负载均衡(八)---- 维护工具
Pgpool提供了一些维护工具,用于日常观察Pgpool运行状态、上线、下线节点等操作。主要有:pcp_stop_pgpool,pcp_node_count,pcp_node_info,pcp_health_check_stats,pcp_proc_count,pcp_proc_info,pcp_detach_node,pcp_attach_node,pcp_recovery_node,pcp_promote_node,pcp_pool_status,pcp_watchdog_info,pcp_reload_config
|
缓存 负载均衡 关系型数据库
Pgpool-II实现高可用+读写分离+负载均衡(三)---- 日常使用篇
Pgpool-II是一款工作在PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件。提供了连接池、复制、负载均衡、限制过多连接、看门狗、查询缓存等功能。本系列的前两篇讲解了Pgpool-II的安装及配置,本篇介绍日常使用。
|
负载均衡 应用服务中间件 开发工具
nginx负载均衡优化和高可用
nginx负载均衡优化和高可用
163 0