xsw222 发表于 2018-11-14 12:19:38

案例Nginx+tomcat负载均衡群集

  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也具有上述特征。)
  # mkdir /tom
  # mount.cifs //192.168.100.1/tomcat /tom
  Password:
  # ls /tom
  apache-tomcat-7.0.54.tar.gzjdk-7u65-linux-x64.gznginx-1.6.0.tar.gz
  # tar zxvf /tom/jdk-7u65-linux-x64.gz -C /opt
  # cd /opt
  # mv jdk1.7.0_65/ /usr/local/java
  # cd /etc/profile.d/
  # vi java.sh   编写一个脚本
  export JAVA_HOME=/usr/local/java设置Java根目录
  export PATH=$PATH:$JAVA_HOME/bin在PATH环境变量中添加Java根目录下的bin/子目录
  # source java.shjava.sh脚本导入到环境变量,使其生效
  # 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)
  # tar zxvf /tom/apache-tomcat-7.0.54.tar.gz -C /opt
  # mv /opt/apache-tomcat-7.0.54/ /usr/local/tomcat7
  # /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.
  # netstat -antp | grep 8080tomcat默认运行8080端口,通过netstat查看
  tcp      0      0 :::8080             :::*         LISTEN      3471/java
  第二步:测试tomcat的web安装情况

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

  Nginx服务器配置
  首先:Nginx的配置及运行需要pcre、zlib等软件包的支持,以便提供相应的库和头文件,确保Nginx的按章顺利完成。
  # mkdir /abc
  # mount.cifs //192.168.100.1/tomcat /abc将所需安装包共享到abc目录下
  Password:
  # yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++
  # useradd -s /bin/false www建立www用户
  # tar zxvf /abc/nginx-1.6.0.tar.gz -C /opt
  # cd /opt/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
  # make && make install
  # vim /usr/local/nginx/conf/nginx.conf 修改Nginx的配置文件以实现负载均衡
  #keepalive_timeout0;
  keepalive_timeout65;
  #gzipon;
  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;
  indexindex.html index.htm;
  proxy_pass http://tomcat_server;         //添加//
  }
  # /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
  # nginx启用
  # netstat -antp | grep nginx
  tcp      0      0 0.0.0.0:80         0.0.0.0:*         LISTEN      5318/nginx
  最后通过访问nginx服务器地址192.168.100.30来查看负载均衡情况



页: [1]
查看完整版本: 案例Nginx+tomcat负载均衡群集