发现自己以前做过负载均衡,但是没记录下来....随便写写,以便以后再学习有印象。
有不对的地方欢迎指出~~
nginx是代理服务器 可高并发
目前就试验了这两个功能,代理服务器和负载均衡,举例子;
1. nginx所在服务器为10.1.1.1 你设置它监听8080端口 代理10.1.1.2:8888 用户访问你的10.1.1.1:8080 页面会显示10.1.1.2:8888的内容
2.负载均衡 如果你的客户端 用户量很大 这样一台服务器承受不了 你就在两台服务器10.1.1.11 10.112.1.12 上安装客户端 设置nginx监听端口8081 随机访问这两台服务器 用户访问10.1.1.1:8081 就会随机(随机性可设置)访问这两台服务器
可查看这些文章学习,感觉写的很棒~:
http://blog.csdn.net/u014749862/article/details/50522276
http://blog.csdn.net/shimiso/article/details/8690897
http://www.jb51.net/article/47755.htm
http://tengine.taobao.org/book/module_development.html
http://www.cnblogs.com/jingmoxukong/p/5945200.html
http://outofmemory.cn/code-snippet/3074/nginx-load-junheng-configuration-jizhong-strategy
http://linux.it.net.cn/e/server/nginx/2015/0621/15898.html
** http://jsczxy2.iteye.com/blog/1423404
安装就不说了。
查看是否安装nginx:
nginx -v
启动nginx:
nginx -c /etc/nginx/nginx.conf
(直接输入服务器网址出现nginx页面就安装成功了)
nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确
配置文件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;
include /etc/nginx/conf.d/*.conf;
server {
listen 8888; //监听端口
server_name 10.1.X.X; //监听服务器
location / {
proxy_pass http://blance; //对应下面upstream配置的名为blance(随意起名字)
}
}
upstream blance{ //配置需负载均衡的服务器
# server localhost:3280 weight=5;
server IP1:端口;
server IP2:端口;
# server localhost:3380 weight=5;
}
server {
listen 8080; //配置另一个代理
server_name 10.1.12.140;
location / {
proxy_pass http://IP:8088/; //有一点没搞懂,整个地址应该是http://IP:8088/Jenkins ,但是配置后会访问失败,把jenkins去掉却访问了正确的Jenkins页面
}
}