1.安装c++编译器
yum install -y gcc gcc-c++
2.安装nginx依赖包
1.openssl-fips-2.0.12.tar.gz
tar -zxvf openssl-fips-2.0.12.tar.gz
进入解压目录,执行配置:./config
编译:make
安装:make install (或指定安装目录:make install --prefix dir)
(编译并安装:make && make install)
2.zlib-1.2.8.tar.gz(gzip工具)
tar -zxvf zlib-1.2.8.tar.gz
进入解压目录,执行配置:./configure
编译:make
安装:make install
3.pcre.tar.gz(rewrite)
tar -zxvf pcre-8.37.tar.gz
进入解压目录,执行配置:./configure
编译:make
安装:make install
3.nginx安装
tar -zxvf nginx-1.8.1.tar.gz
进入解压目录,指定配置条件并执行:
./configure --with-pcre=/home/big-data/pcre-8.37 --with-zlib=/home/big-data/zlib-1.2.8 --with-openssl=/home/big-data/openssl-fips-2.0.2
编译:make
安装:make install
4.nginx安装目录:/usr/local/nginx
指令:/usr/local/nginx/sbin/
5.nginx启停指令
测试:nginx -t
启动:nginx安装目录地址 -c nginx配置文件地址
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
停止:pkill -9 nginx
重启:nginx -s reload
6.nginx配置文件件可以分开写,然后用“include 文件路径”引用
7.负载均衡配置
nginx的upstream目前支持4种方式的分配
a、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除
pstream backend {
server 192.168.17.130;
server 192.168.0.15;
}
b.weight
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
pstream backend {
server 192.168.17.130 weight=10;
server 192.168.0.15 weight=10;
}
c.ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
upstream backend {
ip_hash;
server 192.168.0.130:8081;
server 192.168.0.129:8080;
}
d.fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
upstream backend {
server 192.168.0.130;
server 192.168.0.129;
fair;
}
e.url_hash(第三方)
按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。
例:在upstream中加入hash语句,server语句中不能写入weight等其他的参数,hash_method是使用的hash算法
upstream backend {
server squid1:3128 down;
server squid2:3128;
hash $request_uri;
hash_method crc32;
}
tip:每个设备的状态设置为:
1.down表示单前的server暂时不参与负载
2.weight为weight越大,负载的权重就越大。
3.max_fails:允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream模块定义的错误
4.fail_timeout:max_fails次失败后,暂停的时间。
5.backup: 其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。
8.nginx配置location
语法:location [=|~|~*|^~] /uri/ { … } (url可以是正则表达式,如:^/platform/(account|auth|error)/.*\.do$)
= 表示精确匹配
~ 表示区分大小写的正则匹配
~* 表示不区分大小写的正则匹配
^~ 表示uri以某个常规字符串开头,理解为匹配 url路径即可。
nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格)
yum install -y gcc gcc-c++
2.安装nginx依赖包
1.openssl-fips-2.0.12.tar.gz
tar -zxvf openssl-fips-2.0.12.tar.gz
进入解压目录,执行配置:./config
编译:make
安装:make install (或指定安装目录:make install --prefix dir)
(编译并安装:make && make install)
2.zlib-1.2.8.tar.gz(gzip工具)
tar -zxvf zlib-1.2.8.tar.gz
进入解压目录,执行配置:./configure
编译:make
安装:make install
3.pcre.tar.gz(rewrite)
tar -zxvf pcre-8.37.tar.gz
进入解压目录,执行配置:./configure
编译:make
安装:make install
3.nginx安装
tar -zxvf nginx-1.8.1.tar.gz
进入解压目录,指定配置条件并执行:
./configure --with-pcre=/home/big-data/pcre-8.37 --with-zlib=/home/big-data/zlib-1.2.8 --with-openssl=/home/big-data/openssl-fips-2.0.2
编译:make
安装:make install
4.nginx安装目录:/usr/local/nginx
指令:/usr/local/nginx/sbin/
5.nginx启停指令
测试:nginx -t
启动:nginx安装目录地址 -c nginx配置文件地址
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
停止:pkill -9 nginx
重启:nginx -s reload
6.nginx配置文件件可以分开写,然后用“include 文件路径”引用
7.负载均衡配置
nginx的upstream目前支持4种方式的分配
a、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除
pstream backend {
server 192.168.17.130;
server 192.168.0.15;
}
b.weight
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
pstream backend {
server 192.168.17.130 weight=10;
server 192.168.0.15 weight=10;
}
c.ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
upstream backend {
ip_hash;
server 192.168.0.130:8081;
server 192.168.0.129:8080;
}
d.fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
upstream backend {
server 192.168.0.130;
server 192.168.0.129;
fair;
}
e.url_hash(第三方)
按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。
例:在upstream中加入hash语句,server语句中不能写入weight等其他的参数,hash_method是使用的hash算法
upstream backend {
server squid1:3128 down;
server squid2:3128;
hash $request_uri;
hash_method crc32;
}
tip:每个设备的状态设置为:
1.down表示单前的server暂时不参与负载
2.weight为weight越大,负载的权重就越大。
3.max_fails:允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream模块定义的错误
4.fail_timeout:max_fails次失败后,暂停的时间。
5.backup: 其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。
8.nginx配置location
语法:location [=|~|~*|^~] /uri/ { … } (url可以是正则表达式,如:^/platform/(account|auth|error)/.*\.do$)
= 表示精确匹配
~ 表示区分大小写的正则匹配
~* 表示不区分大小写的正则匹配
^~ 表示uri以某个常规字符串开头,理解为匹配 url路径即可。
nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格)
/ 通用匹配,任何请求都会匹配到。
以上内容转载自:
nginx安装:http://blog.csdn.net/u010386438/article/details/45046689
负载均衡设置:http://blog.csdn.net/wave_1102/article/details/44475093