设为首页 收藏本站
查看: 982|回复: 0

[经验分享] 案例Nginx+tomcat负载均衡群集

[复制链接]

尚未签到

发表于 2018-11-14 12:19:38 | 显示全部楼层 |阅读模式
  Tomcat属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。一般来说,tomcat虽然和Apache或者nginx这些web服务器一样,具有处理HTML页面的功能,然而由于其处理静态HTML的能力远不及Apache或者nginx,所以tomcat通常是作为一个servlet和JSP容器,单独运行在后端。
  要求:
  通过搭建一台Nginx服务器用客户端访问两台tomcat服务,来证明Nginx服务的负载均衡
  环境:
  准备三台Linux服务器
  Nginx服务器eth0:192.168.100.30
  Tomcat服务器一eth0:192.168.100.1,
  web页面内容Welcome to test site,http://www.test1.com
  Tomcat服务器二eth0:192.168.100.20,
  web页面内容Welcome to test site,http://www.test2.com
  主要软件包:
  apache-tomcat-7.0.54.tar.gz
  jdk-7u65-linux-x64.gz
  nginx-1.6.0.tar.gz
  (两台tomcat服务器配置相同显示网页不同,用以区分Nginx服务的负载均衡。)
  第一步:在安装tomcat之前必须先安装JDK,目的用于适应JAVA。(编写好的Java源程序经过编译可形成Java字节码只要安装了jdk,就可以利用JVM解释这些字节码文件,从而保证了Java的跨平台性。在兼容性方面,jdk作为解释字节码文件并据此调用操作系统api实现对应功能的Java虚拟机,与操作系统类型和平台位数密切相关,因此存在不同类型的版本,而tomcat也具有上述特征。)
  [root@root /]# mkdir /tom
  [root@root /]# mount.cifs //192.168.100.1/tomcat /tom
  Password:
  [root@root /]# ls /tom
  apache-tomcat-7.0.54.tar.gz  jdk-7u65-linux-x64.gz  nginx-1.6.0.tar.gz
  [root@root /]# tar zxvf /tom/jdk-7u65-linux-x64.gz -C /opt
  [root@root /]# cd /opt
  [root@root opt]# mv jdk1.7.0_65/ /usr/local/java
  [root@root opt]# cd /etc/profile.d/
  [root@root profile.d]# vi java.sh   编写一个脚本
  export JAVA_HOME=/usr/local/java  设置Java根目录
  export PATH=$PATH:$JAVA_HOME/bin在PATH环境变量中添加Java根目录下的bin/子目录
  [root@root profile.d]# source java.sh  java.sh脚本导入到环境变量,使其生效
  [root@root profile.d]# java -version  查看版本
  java version "1.6.0_22"
  OpenJDK Runtime Environment (IcedTea6 1.10.4) (rhel-1.41.1.10.4.el6-x86_64)
  OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)
  [root@root profile.d]# tar zxvf /tom/apache-tomcat-7.0.54.tar.gz -C /opt
  [root@root profile.d]# mv /opt/apache-tomcat-7.0.54/ /usr/local/tomcat7
  [root@root profile.d]# /usr/local/tomcat7/bin/startup.sh  启动tomcat
  Using CATALINA_BASE:   /usr/local/tomcat7
  Using CATALINA_HOME:   /usr/local/tomcat7
  Using CATALINA_TMPDIR: /usr/local/tomcat7/temp
  Using JRE_HOME:        /usr/local/java
  Using CLASSPATH:       /usr/local/tomcat7/bin/bootstrap.jar:/usr/local/tomcat7/bin/tomcat-juli.jar
  Tomcat started.
  [root@root profile.d]# netstat -antp | grep 8080  tomcat默认运行8080端口,通过netstat查看
  tcp        0      0 :::8080             :::*           LISTEN      3471/java
  第二步:测试tomcat的web安装情况
DSC0000.jpg

  第三步:加入测试页面
  [root@root profile.d]# mkdir -pv /web/test  创建web目录
  mkdir: 已创建目录 "/web"
  mkdir: 已创建目录 "/web/test"
  [root@root profile.d]# vim /web/test/index.jsp
  
  
  
  JSP test1 page
  
  
  
  
  
  [root@root profile.d]# vi /usr/local/tomcat7/conf/server.xml
  
  添加下面这段
  
  
  注解:docBase:web应用的文档基准目录
  reloadable 设置监视“类”是否变化
  path=""设置默认“类”
  第四步:访问tomcat服务器的192.168.100.10的8080端口查看页面
DSC0001.jpg

  Nginx服务器配置
  首先:Nginx的配置及运行需要pcre、zlib等软件包的支持,以便提供相应的库和头文件,确保Nginx的按章顺利完成。
  [root@root ~]# mkdir /abc
  [root@root ~]# mount.cifs //192.168.100.1/tomcat /abc  将所需安装包共享到abc目录下
  Password:
  [root@root ~]# yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++
  [root@root ~]# useradd -s /bin/false www  建立www用户
  [root@root ~]# tar zxvf /abc/nginx-1.6.0.tar.gz -C /opt
  [root@root ~]# cd /opt/nginx-1.6.0/  编译安装
  [root@root nginx-1.6.0]# ./configure \
  > --prefix=/usr/local/nginx \
  > --user=www \
  > --group=www \
  > --with-file-aio \
  > --with-http_stub_status_module \
  > --with-http_gzip_static_module \
  > --with-http_flv_module \
  > --with-http_ssl_module
  [root@root nginx-1.6.0]# make && make install
  [root@root nginx-1.6.0]# vim /usr/local/nginx/conf/nginx.conf 修改Nginx的配置文件以实现负载均衡
  #keepalive_timeout  0;
  keepalive_timeout  65;
  #gzip  on;
  upstream tomcat_server {                             //添加//
  server 192.168.100.10:8080 weight=1;
  server 192.168.100.20:8080 weight=1;
  }
  server {
  listen       80;
  .....省略
  location / {
  root   html;
  index  index.html index.htm;
  proxy_pass http://tomcat_server;         //添加//
  }
  [root@root nginx-1.6.0]# /usr/local/nginx/sbin/nginx -t检查配置(结尾处的successful表示成功)
  nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
  nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
  [root@root nginx-1.6.0]# nginx  启用
  [root@root nginx-1.6.0]# netstat -antp | grep nginx
  tcp        0      0 0.0.0.0:80         0.0.0.0:*         LISTEN      5318/nginx
  最后通过访问nginx服务器地址192.168.100.30来查看负载均衡情况
DSC0002.jpg

DSC0003.jpg



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-634994-1-1.html 上篇帖子: nginx四层负载均衡配置 下篇帖子: nginx关闭favicon.ico日志
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表