ubuntu 下安装nginx + tomcat实现负载均衡

来源:互联网 发布:离婚率 知乎 编辑:程序博客网 时间:2024/06/04 01:01

一、 安装虚拟机

下载vmware player(这个是免费的),进行安装。

二、 安装启动ubuntu系统

  1. 下载ubuntu 32(由于未知原因64位我的安装不成功- - 呵呵)。
  2. vmware添加虚拟机,以上面下载的ISO镜像为安装镜像。
  3. 启动建好的虚拟机(全程可自动安装,其中一步耗时很久,可以点击进度条上方的小三角形,出现 “skip”按钮,跳过即可)。
  4. 更换源,我一般选的是国内清华大学的源。
  5. 执行更新 :”sudo apt-get update” (不更新apt-get install 是不好使的,后面就会碰到麻烦)

三、 安装配置JDK

  1. 从官网下载JDK1.8
  2. 将下载的JDK移动到/usr/local/src目录
  3. 解压JDK:”tar -zxvf 文件名”。
  4. 创建java和javalib快捷链接: “ln -r JDK目录 java”。(如果后面不指定目录,则在当前目录下创建,这个创建的快捷链接后面在配置环境变量的时候就可以直接引用了)
  5. 配置环境变量 :“ vi ~/.bashrc ”在最后加入以下:
#set java environmentexport JAVA_HOME=/usr/local/src/javaexport JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=/usr/local/src/javalibexport PATH=${JAVA_HOME}/bin:$PATH

四、 安装启动Tomcat

  1. 从官网下载Tomcat8
  2. 将下载的Tomcat8移动到/usr/local/src目录
  3. 解压Tomcat8 “tar -zxvf 文件名”
  4. 把打包好的war包放到tomcat下的webapps目录下(没有项目这步就省略吧,不过就不好检测负载均衡是否成功了。检测负载均衡要准备两个tomcat,可以在一台机子两个tomcat设置不同的端口,也可以用两台设备,随你喜欢了,关键是自己可以看出访问的是哪一个地址,例如在项目首页写上不同的内容或者直接打印出服务器IP)。
  5. 进入tomcat目录底下的bin目录,输入 命令行”./starup.sh”,启动成功。

五、 安装配置nginx

  1. 安装nginx: “sudo apt-get install nginx” 好了,安装完了。没想到吧!
  2. 首先找到nginx安装目录,我不知道它安装到哪去了,所以用命令查找:”where is nginx”,列出位置在/etc/nginx下,cd进去就好了
  3. 配置nginx:”vi nginx.conf” 我是这样配置的 :
#user nginx;  worker_processes  1;  error_log  /var/log/nginx/error.log warn;  pid        /var/run/nginx.pid;  events {      worker_connections  1024;  }  http {      include       /etc/nginx/mime.types;      default_type  application/octet-stream;      log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '                        '$status $body_bytes_sent "$http_referer" '                        '"$http_user_agent" "$http_x_forwarded_for"';      access_log  /var/log/nginx/access.log  main;      sendfile        on;      #tcp_nopush     on;      keepalive_timeout  65;      #gzip  on;      upstream testnginx.com{    # 修改这里      server localhost:8080 weight=10;     server 172.17.109.86:8080 weight=5;     }      server {          # 修改这里           listen       8125;          # 修改这里           server_name  localhost;             charset utf-8;             location / {                 root   html;                 index  index.html index.htm;                 proxy_pass        http://testnginx.com;                 proxy_set_header  X-Real-IP  $remote_addr;                 client_max_body_size  100m;          }             location ~ ^/(WEB-INF)/ {              deny all;              }              error_page   500 502 503 504  /50x.html;             location = /50x.html {            root   /var/www/html/;             }         }     }  

如上只要修改 upstream 里的服务器地址、nginx 地址和监听端口就可以正常使用,文件中已标明。

具体配置可以参考这里
http://blog.csdn.net/tjcyjd/article/details/50695922
4. 使配置文件生效: “nginx -s reload”
5. 访问nginx: 输入你的nginx的地址+监听窗口 ,例如我这里是”localhost:8125”就会跳到配置的tomcat地址去了,加入项目名”localhost:8125/testNginx” 就能看到第四步发布的项目了,配置的两个地址来回切换,说明配置成功。

六、 过程遇到的问题:

  1. error:无法打开软件包的 info 文件 /var/lib/dpkg/available
    • 你可以先到 /var/lib/dpgk目录下看看,有没有available_old这个文件,如果有,执行下面的命令即可解决:sudo cp -p ./available_old ./available
    • 如果没有这个文件,那么就执行下面两条命令即可:
      a、sudo dpkg –clear-avail
      b、sudo apt-get update
  2. 配置好后访问不到项目。
    • 注意访问的是nginx的地址,不是upstream 后面的名字。
原创粉丝点击