浅谈Linux安装nginx/Apache及简单实现下负载均衡

开始的准备工作:
1:准备两台服务器。这里说明下,本应该使用三台的服务器,因资源有限就拿两台服务器当成三台来用。基本的模型就是一台服务器安装Apache,另一台安装Nginx和Apache。这样相当于负载均衡服务器上也有一台web服务器。这样的处理是更好的利用有限的资源达到最终的效果。
2:下载Linux版本的Nginx 当前我用的是1.6.3.

194024_U96l_945545.png

上图就是两天服务器了,123开头的服务器用来做负载均衡服务器且同时部署一台Apache服务器,182开头的服务器也作为Apache web服务器。

由于两台的服务器配置一样,所以作为例子就只安装 配置 123这台服务器 包括安装Nginx、Apache 及配置。

 

194921_ZQdE_945545.png

195236_R0Gx_945545.png

这里安装Apache,很简单一条命令搞定。接下来需要配置下Apache的端口。默认使用的是80端口。但是当前因为后面需要安装Nginx,它默认也是使用80端口,所以这里就把Apache端口改为8080.

195740_OP60_945545.png

195853_QrKi_945545.png

200057_51qk_945545.png

配置好端口后,可以检查下Apache的状态 然后启动Apache。
curl 123.206.46.39:8080请求下 控制台就会打印出测试页面内容了。 到这一步 安装 配置Apache已经完成了
补充一点,未了看的更直观 把Apache的测试页面变为其当前的服务器IP地址
命令
echo 123.206.46.39 >/var/www/html/index.html

 

204232_cP7X_945545.png

1:接下来安装Nginx,在安装Nginx之前 先安装个lrzsz软件 方便上传文件。安装完lrzsz后 上传Nginx安装包

200919_Gkmq_945545.png

201111_rHNj_945545.png

201250_18iY_945545.png

对上传的Nginx安装包进行解压,然后开始安装, 在安装之前需要在安装下pcre 和 openssl
具体命令:
yum install pcre-devel -y
yum install openssl-devel -y
安装niginx
./configure --user=nginx --group=nginx --prefix=/appliaction/nginx-1.6.3 --with-http_stub_status_module --with-http_ssl_module

202459_amXw_945545.png

在安装过程 爆出了一个错误,这个错误之的是系统没有安装gcc ,安装上即可。
命令 yum install gcc -y
安装完后呢就能顺利的安装Nginx啦
然后编译
make
make install
全部做完后
ln -s /appliaction/nginx-1.6.3/ /appliaction/nginx  
然后就可以启动Nginx
/appliaction/nginx/sbin/nginx
停止命令  
/appliaction/nginx/sbin/nginx -s stop

203154_cWBq_945545.png

这里获取nginx这个用户失败,所以这里添加一个nginx用户。

useradd nginx -s /sbin/nologin -M

这样在重新起下就ok了

203712_idoO_945545.png

到这一步Nginx 就安装好了。
接下来就是 负载均衡的配置了。

配置nginx的负载涉及一个模块 upstream 可以查看官网的文档
upstream backend {
    server backend1.example.com       weight=5;
    server backend2.example.com:8080;
    server unix:/tmp/backend3;

    server backup1.example.com:8080   backup;
    server backup2.example.com:8080   backup;
}

server {
    location / {
        proxy_pass http://backend;
    }
}

改造后的配置为:
upstream yaffa {
    server 182.61.15.157:80  weight=5;
    server 123.206.46.39:8080  weight=5;
    server 182.61.15.159:80  weight=5  backup;
}
server {
        listen       80;
        server_name  www.yaffa.org;
        location / {
            root   html;
            index  index.html index.htm;
            proxy_pass http://yaffa;
        }
       
    }

205409_nLr3_945545.png

配置好负载均衡后:
进行语法检查 如果成功 则刷新配置文件使其生效
命令
../sbin/nginx  -t
../sbin/nginx  -s reload

205638_7yQs_945545.png

210018_UEbD_945545.png

205945_tLzK_945545.png

210649_uZCH_945545.png

可以从最后的控制台的输出可以看出 负载均衡已经生效 每次强求返回的ip地址不一样,
说明下182.61.15.157 之前说的是另一台Apache服务器。
由于123 这台服务器不仅仅只安装部署了nginx 还有一台Apache服务器 所以在访问123这台服务器时 返回的结果可以看出 123 和182 这两台服务器相应的切换。
当然这种方式为轮询的方式,也可以通过设置nginx.conf 配置每台服务器的权重值 来达到某台服务器被分配的请求更多。
这里就不细说了。

还要nginx还支持ip_hash 的策略 及同一个ip 访问的都是同一台服务器,这样的好处是 回话信息无需共享 同时在做分布式缓存时也可以考虑ip_hash的策略。

好了今天就到这了 下一次分享下keepalived

123.206.46.39
这个是公网ip 浏览器可以直接请求 拿去玩吧。

 

转载于:https://my.oschina.net/pingdy/blog/712787

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值