服务器运维实践(一)centos7使用nginx+tomcat实现负载均衡

准备环境
虚拟机三台:
172.16.18.201(tomcat服务器)
172.16.18.202 (tomcat服务器)
172.16.18.204 (nginx服务器)
已下载好的tomcat apache-tomcat-8.5.23.tar.gz
已下载好的nginx nginx-1.10.2.tar.gz

201、202分别安装jdk1.7(yum安装)
1.查询可安装的软件包
#yum -y list java-1.7.
列出所有符合条件的软件
2.安装
#yum -y install java-1.7.0-openjdk*
3.下载好后输入java -version查询是否安装成功
看到以下信息表示安装成功
安装成功

201、202分别安装tomcat(使用早已下载好的tomcat)
1.解压并移至自己的目录
#tar -zxvf apache-tomcat-8.5.23.tar.gz
#cp -R apache-tomcat-8.5.23 /usr/tomcat
2.启动
#cd /usr/tomcat/bin
#./startup.sh
备注:若启动报错无非是没有指定JAVA_HOME,百度完成配置即可
3.关闭防火墙
centos7防火墙为firewall
查看防火墙状态
#firewall-cmd --state
此时我们看到running
关闭防火墙
#systemctl stop firewalld.service
禁止防火墙开机启动
#systemctl disable firewalld.service
4.访问
在浏览器输入http://172.16.18.201:8080、http://172.16.18.201:8080
看到tomcat经典的猫就说明已经完成

204安装nginx并配置负载均衡(使用下载好的nginx软件包)
1.gcc 、zlib、PCRE pcre-devel安装
安装nginx必备软件(别问为什么,哈哈)
#yum install gcc-c++
#yum install -y zlib zlib-devel
#yum install -y pcre pcre-devel
2.安装nginx
解压
#tar -zxvf nginx-1.10.2.tar.gz
配置
一定要进入解压后的nginx-1.10.2目录才能进行。
#cd /nginx-1.10.2
#./configure
编译安装
#make&&make install
3.配置负载均衡
#vi /usr/local/nginx/conf/nginx.conf
其余的不用管,只配置http这一块

http {
    include       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  logs/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    #gzip  on;
	##这个很重要
	upstream api.smartlock.com{
        server 172.16.18.201:8080 weight=1; ##tomcat服务器1
        server 172.16.18.202:8080 weight=1; ##tomcat服务器2
    }
    server {
        listen       80; ##监听端口
        server_name  172.16.18.204; ##服务名
        charset utf-8;
        access_log  /data/nginx_logs/access.log ; ##访问日志
		error_log 	/data/nginx_logs/error.log ; ##错误日志
        location /{
           proxy_set_header    Host $host:80; 
           proxy_set_header    REMOTE-HOST $remote_addr;
           proxy_set_header    X-Real-IP $remote_addr;
           proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
           ##下面的api.smartlock.com和上面配置的upstream名字对应
           proxy_pass          http://api.smartlock.com; 
           client_max_body_size     10m;
           client_body_buffer_size  256k;
           proxy_connect_timeout    600;
           proxy_send_timeout       600;
           proxy_read_timeout       600;
           proxy_buffer_size        32k;
           proxy_buffers            4 64k;
           proxy_busy_buffers_size  128k;
           proxy_temp_file_write_size 512k;
        }
        ##禁止访问项目根目录
         location ~^/WEB-INF/{ 
                deny all;
        }

完成后保存退出。
4.关闭本台虚拟机防火墙,同上
5.启动nginx
#cd /usr/local/nginx/sbin
#./nginx
备注:修改配置文件后使用./nginx -s reload 即可在不重启nginx的情况下刷新配置使其生效。
6.浏览器输入http://172.16.18.204看到tomcat猫表示配置成功。
备注:补充一下,centos7很多服务都需要关闭setlinux才可以运行
查看状态
#getenforce
如果显示enforcing则先设置为允许
#setenforce 0
开机禁止enforce则要修改配置文件
#vi /etc/selinux/config

这里写图片描述
将enforcing修改为disabled即可。
7.配置nginx开机启动
笔者查看了大部分方法,其中一种方法最简单
#vi /etc/rc.local
在该文件后加:/usr/local/sbin/nginx,如下图。
这里写图片描述
保存退出。
增加该文件可执行权限
#chmod 777 /etc/rc.local
重启虚拟机后再在浏览器输入http://172.16.18.204发现配置nginx自动启动成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值