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

一、 安装虚拟机

下载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 environment
export JAVA_HOME=/usr/local/src/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=/usr/local/src/javalib
export 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 后面的名字。

你可能感兴趣的:(ubuntu 下安装nginx + tomcat实现负载均衡)