纯手工打造每一篇开源资讯与技能干货,数十万程序员和Linuxer已经关注。
Linux技能交换QQ群:2636170(七月份最新!!)
1、nginx安装
安装openssl、zlib、pcre包,下令:yum-yinstallopensslopenssl-develzlibzlib-develpcrepcre-devel
安装c++包,下令:yuminstall-ygccgcc-c++
解压nginx包,下令:tar-zxvfnginx-1.10.3.tar.gz
cdnginx-1.10.3
./configure
make
makeinstall
验证是否安装乐成:cd/usr/local/nginx/,实行./nginx-t,如下图:
2、nginx开机自启
vi/etc/init.d/nginx(输入下面的代码)
#!/bin/sh
#
#nginx-thisstartsandstopsthenginxdaemon
#
#chkconfig:-8515
#deion:NginxisanHTTP(S)server,HTTP(S)reverse
#proxyandIMAP/POP3proxyserver
#processname:nginx
#config:/etc/nginx/nginx.conf
#config:/etc/sysconfig/nginx
#pidfile:/var/run/nginx.pid
#Sourcefunctionlibrary.
./etc/rc.d/init.d/functions
#Sourcenetworkingconfiguration.
./etc/sysconfig/network
#Checkthatnetworkingisup.
["$NETWORKING"="no"]exit0
nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename$nginx)
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
[-f/etc/sysconfig/nginx]./etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
start(){
[-x$nginx]||exit5
[-f$NGINX_CONF_FILE]||exit6
echo-n$"Starting$prog:"
daemon$nginx-c$NGINX_CONF_FILE
retval=$?
echo
[$retval-eq0]touch$lockfile
return$retval
}
stop(){
echo-n$"Stopping$prog:"
killproc$prog-QUIT
retval=$?
echo
[$retval-eq0]rm-f$lockfile
return$retval
killall-9nginx
}
restart(){
configtest||return$?
stop
sleep1
start
}
reload(){
configtest||return$?
echo-n$"Reloading$prog:"
killproc$nginx-HUP
RETVAL=$?
echo
}
force_reload(){
restart
}
configtest(){
$nginx-t-c$NGINX_CONF_FILE
}
rh_status(){
status$prog
}
rh_status_q(){
rh_status/dev/null21
}
case"$1"in
start)
rh_status_qexit0
$1
stop)
rh_status_q||exit0
$1
restart|configtest)
$1
reload)
rh_status_q||exit7
$1
force-reload)
force_reload
status)
rh_status
condrestart|try-restart)
rh_status_q||exit0
*)
echo$"Usage:$0{start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit2
esac
设置文件的访问权限
chmoda+x/etc/init.d/nginx(a+x==allusercanexecute全部用户可实行)
vi/etc/rc.local
参加一行/etc/init.d/nginxstart生存并退出,下次重启会见效。
3、一台呆板多tomcat摆设
下载tomcat
修改server.xml设置文件
第一处:
第二处:
第三处:
分别修改bin下的启动文件(startup.sh)
3、nginx负载均衡集群设置
修改nginx.conf设置文件
设置服务器组,在http{}节点之间添加upstream设置。(留意不要写localhost,否则访问速率会很慢)
修改nginx监听的端标语80,改为8080
在location{}中,利用proxy_pass设置反向署理地点;此处“https://”不能少,背面的地点要和第一步upstream界说的名称保持同等
访问url:https://nginxip:8080/nginxdemo
4、增补nginx负载均衡战略
1、轮询(默认)
每个web哀求按时间次序逐一分配到差别的后端服务器,假如后端服务器down掉,能主动剔除。
upstreamnginxDemo{server127.0.0.1:8081;server127.0.0.1:8082;
}
2、最少链接
web哀求会被转发到毗连数最少的服务器上。
upstreamnginxDemo{
least_conn;
server127.0.0.1:8081;
server127.0.0.1:8082;
}
3、weight权重
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的环境,weight默认是1。
#服务器A和服务器B的访问比例为:2-1;比如有3个哀求,前两个会访问A,三个访问B,别的规则和轮询一样。
upstreamnginxDemo{server127.0.0.1:8081weight=2;#服务器A
server127.0.0.1:8082;#服务器B
}
4、ip_hash
每个哀求按访问ip的hash值分配,如许同一客户端连续的Web哀求都会被分发到同一服务器举行处理惩罚,可以办理session的题目。当背景服务器宕机时,会主动跳转到别的服务器。
upstreamnginxDemo{
ip_hash;
server127.0.0.1:8081weight=2;#服务器A
server127.0.0.1:8082;#服务器B
}
基于weight的负载均衡和基于ip_hash的负载均衡可以组合在一起利用。
5、url_hash(第三方)
url_hash是nginx的第三方模块,nginx本身不支持,必要打补丁。
nginx按访问url的hash结果来分配哀求,使每个url定向到同一个后端服务器,后端服务器为缓存服务器、文件服务器、静态服务器时比力有效。缺点是当后端服务器宕机的时间,url_hash不会主动跳转的其他缓存服务器,而是返回给用户一个503错误。
upstreamnginxDemo{server127.0.0.1:8081;#服务器A
server127.0.0.1:8082;#服务器B
hash$request_url;
}
6、fair(第三方)
按后端服务器的相应时间来分配哀求,相应时间短的优先分配。
upstreamnginxDemo{
server127.0.0.1:8081;#服务器A
server127.0.0.1:8082;#服务器B
fair;
}
原文来自:https://my.oschina.net/jzgycq/blog/877342
让您学习到的每一节课都有所劳绩
《Linux就该这么学》是由资深运维专家刘遄及天下多名红帽架构师(RHCA)基于最新RHEL7体系共同编写的高质量Linux技能自学教程,极其适实用于Linux技能入门教程或讲课辅助讲义。
?刘遄老师QQ:5604241微信:gnu_chuan
?学员助教QQ:5604674
?Linux技能交换A群(满):560843
?Linux技能交换B群:340829
?Linux技能交换C群:463590
?Linux技能交换D群:915246
?Linux技能交换E群:1663106
?Linux技能交换F群:1653851
?Linux技能交换G群:2632018(新群,火热加群中……)
?官方站点:www.linuxprobe.com
?电脑在线阅读结果更佳:
https://www.linuxprobe.com/chapter-00.html
按住图片3秒,即可主动关注。
我要评论