博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在centos7上实现nginx+tomcat负载均衡
阅读量:6591 次
发布时间:2019-06-24

本文共 3015 字,大约阅读时间需要 10 分钟。

  • 概述

通常情况下,一个Tomcat站点由于可能出现单点故障及无法应付过多客户复杂多样的请求等问题,不能单独应用于生产环境下,所以需要一套更可靠的解决方案来完善web站点架构。

nginx是一款优秀的http服务器软件,它能够支持多达50000个并发连接数的响应,拥有强大的静态资源处理能力,运行稳定,并且内存,CPU等系统资源消耗非常低。目前有很多大型网站都应用nginx作为后端网站程序的反向代理及负载均衡。

本案例我们将已nginx作为负载均衡器,反向代理,tomcat作为节点服务器。

  • 案例环境
主机 IP地址
nginx服务器 192.168.177.132
tomcat服务器1 192.168.177.145
tomcat服务器2 192.168.177.135

tomcat服务器

安装jdk(1.8版本)
# tar xf apache-tomcat-8.5.23.tar.gz /opt# tar xf jdk-8u144-linux-x64.tar.gz /opt//解压安装包
# mv apache-tomcat-8.5.23/ /usr/local/tomcat8# mv jdk1.8.0_144/ /usr/local/java//便于管理
# vim /etc/profile   //设置环境变量export JAVA_HOME=/usr/local/javaexport JRE_HOME=/usr/local/java/jreexport PATH=$PATH:/usr/local/java/binexport CLASSPATH=./:/usr/local/java/lib:/usr/local/java/jre/lib# source /etc/profile
# java -version   //查看java版本信息   java version "1.8.0_131"   OpenJDK Runtime Environment (build 1.8.0_131-b12)   OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

在centos7上实现nginx+tomcat负载均衡

安装tomcat
# ln -s /usr/local/tomcat8/bin/startup.sh /usr/bin/tomcatup# ln -s /usr/local/tomcat8/bin/shutdown.sh /usr/bin/tomcatdown//放在/usr/bin下便于识别命令
# tomcatup     //开启服务# netstat -anpt | grep 8080   //查看tomcat端口是否开启# http://192.168.177.145:8080/         //测试默认测试页是否正常显示(节点)# vim /usr/local/tomcat8/webapps/ROOT/index.jsp //修改默认网页内容(站点)    

this is 145!!!

在centos7上实现nginx+tomcat负载均衡

在centos7上实现nginx+tomcat负载均衡
在centos7上实现nginx+tomcat负载均衡
在centos7上实现nginx+tomcat负载均衡
在centos7上实现nginx+tomcat负载均衡
在centos7上实现nginx+tomcat负载均衡
==注==:两台tomcat服务器配置完全一样

nginx服务器

手工编译安装
# tar zxvf nginx-1.12.0.tar.gz -C /opt# yum install pcre-devel zlib-devel gcc gcc-c++ -y    //安装环境包# useradd -M -s /sbin/nologin nginx  //创建管理nginx的用户# cd /opt/nginx-1.12.0/     ./configure \    --prefix=/usr/local/nginx \    --user=nginx \   //指定运行的用户    --group=nginx \   //指定运行的组    --with-http_stub_status_module   //启用统计状态# make && make install# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/    //让系统识别命令# nginx -t   //验证语法
编写便于service管理的脚本
# cd /etc/init.d/  vim nginx#!/bin/bash# chkconfig: - 99 20# description: Nginx Service Control ScriptPROG="/usr/local/nginx/sbin/nginx"PIDF="/usr/local/nginx/logs/nginx.pid"case "$1" in  start)    $PROG    ;;  stop)    kill -s QUIT $(cat $PIDF)    ;;  restart)    $0 stop    $0 start    ;;  reload)    kill -s HUP $(cat $PIDF)    ;;  *)        echo "Usage: $0 {start|stop|restart|reload}"        exit 1esacexit 0# chmod +x /etc/init.d/nginx   //执行权限# chkconfig --add nginx# chkconfig --level 35 nginx on# service nginx stop# netstat -ntap | grep 80# service nginx start# netstat -ntap | grep 80
修改配置文件
# vim /usr/local/nginx/conf/nginx.conf  #keepalive_timeout  0;    keepalive_timeout  65;    #gzip  on;     添加:    upstream tomcat_server {                             #添加              server 192.168.177.145:8080 weight=1;   //权重相同,页面会反复在以下两个页面间来回切换              server 192.168.177.135:8080 weight=1;                }    server {        listen       80;.....省略location / {            # root   html;            # index  index.html index.htm;            proxy_pass http://tomcat_server;  //添加一行 ,把nginx的默认站点通过 proxy_pass方法代理到设定好的tomcat_server负载均衡服务器上           }# service nginx  restart   //启用nginx服务//

在centos7上实现nginx+tomcat负载均衡

在centos7上实现nginx+tomcat负载均衡
在centos7上实现nginx+tomcat负载均衡

转载于:https://blog.51cto.com/13620936/2158410

你可能感兴趣的文章
优酷吞下土豆
查看>>
Linux设备驱动简析—PC重启源码分析
查看>>
python--1
查看>>
Gradle笔记
查看>>
怎么一步步编写简单的PHP的Framework(十九)
查看>>
spring与struts2 mvc共存web.xml简单配置
查看>>
常用禁止属性
查看>>
Android集成微信支付
查看>>
2015年终总结
查看>>
Spring常用注解
查看>>
关于svn目录地址迁移
查看>>
/proc/cpuinfo文件分析(查看CPU信息)
查看>>
Python 爬虫的工具列表
查看>>
VS2013解决error LNK2019: 无法解析的外部符号 mfcs120ud.lib
查看>>
源码编译依赖关系一例小结
查看>>
《搭建Centos7之一》
查看>>
Service通信详解
查看>>
RunLoop已入门?不来应用一下?
查看>>
java 函数库
查看>>
Maclean写的Oracle入门书
查看>>