centos7 nginx安装与配置实现负载均衡
来源:互联网 发布:c罗会说几种语言 编辑:程序博客网 时间:2024/06/12 20:53
nginx是一个web服务器,类似apache一样,但是比apache性能更好,更快。还可以实现反向代理,和负载均衡,常用于构建web服务集群的负载均衡。今天就来记录一下,nginx的安装与配置,实现负载均衡的作用。
首先,安装
$ wget http://dl.Fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
(ps:网上有一些源是不完全的,只是安装了简单的nginx,其他一些依赖并没有一起安装,导致配置文件不 全。请用这里的连接,完整可用。)
$ rpm -ivh epel-release-latest-7.noarch.rpm
$ yum install nginx (直接yum安装)
安装就这么简单方便,安装完成后,就可以使用systemctl来控制nginx的启动了
$ systemctl enable nginx (加入开机启动)
$ systemctl start nginx (开启nginx)
$ systemctl status nginx (查看状态)
然后就是设置nginx的配置文件,实现负载均衡。顾名思义就是将多个请求分发到不同的服务上,实现均衡的负载,减小单个服务的压力。
$ vi /etc/nginx/nginx.conf (修改配置文件,全局配置文件)
-------------------------------------------------------------------------------
----------------------------------------------------------------------------------
更新配置后,可以重载配置生效,不需要重启服务
$ nginx -s reload
首先,安装
$ wget http://dl.Fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
(ps:网上有一些源是不完全的,只是安装了简单的nginx,其他一些依赖并没有一起安装,导致配置文件不 全。请用这里的连接,完整可用。)
$ rpm -ivh epel-release-latest-7.noarch.rpm
$ yum install nginx (直接yum安装)
安装就这么简单方便,安装完成后,就可以使用systemctl来控制nginx的启动了
$ systemctl enable nginx (加入开机启动)
$ systemctl start nginx (开启nginx)
$ systemctl status nginx (查看状态)
然后就是设置nginx的配置文件,实现负载均衡。顾名思义就是将多个请求分发到不同的服务上,实现均衡的负载,减小单个服务的压力。
$ vi /etc/nginx/nginx.conf (修改配置文件,全局配置文件)
-------------------------------------------------------------------------------
# For more information on configuration, see:# * Official English Documentation: http://nginx.org/en/docs/# * Official Russian Documentation: http://nginx.org/ru/docs/user nginx;worker_processes auto; (默认为自动,可以自己设置,一般不大于cpu核数)error_log /var/log/nginx/error.log; (错误日志路径)pid /run/nginx.pid; (pid文件路径)# Load dynamic modules. See /usr/share/nginx/README.dynamic.include /usr/share/nginx/modules/*.conf;events { accept_mutex on; (设置网路连接序列化,防止惊群现象发生,默认为on) multi_accept on; (设置一个进程是否同时接受多个网络连接,默认为off) worker_connections 1024; (一个进程的最大连接数)}http { 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; (这里注释掉) tcp_nodelay on; keepalive_timeout 65; (连接超时时间) types_hash_max_size 2048; gzip on; (开启压缩) include /etc/nginx/mime.types; default_type application/octet-stream; # Load modular configuration files from the /etc/nginx/conf.d directory. # See http://nginx.org/en/docs/ngx_core_module.html#include # for more information. include /etc/nginx/conf.d/*.conf;# 这里设置负载均衡,负载均衡有多中策略,nginx自带的有轮询,权重,ip-hash,响应时间等粗略。# 默认为平分http负载,为轮询的方式。# 权重则是按照权重来分发请求,权重高的负载大# ip-hash,根据ip来分配,保持同一个ip分在同一台服务器上。# 响应时间,根据服务器都nginx 的响应时间,优先分发给响应速度快的服务器。集中策略可以适当组合 upstream tomcat { (tomcat为自定义的负载均衡规则名) ip_hash; (ip_hash则为ip-hash方法) server 192.168.14.132:8080 weight=5; (weihgt为权重) server 192.168.14.133:8080 weight=3;## 可以定义多组规则} server { listen 80 default_server; (默认监听80端口) listen localhost; (监听的服务器) server_name _; root /usr/share/nginx/html; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { ( / 表示所有请求,可以自定义来针对不同的域名设定不同负载规则 和服务) proxy_pass http://tomcat; (反向代理,填上你自己的负载均衡规则名) proxy_redirect off; (下面一些设置可以直接复制过去,不要的话,有可能导致一些 没法认证等的问题) proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_connect_timeout 90; (下面这几个都只是一些超时设置,可不要) proxy_send_timeout 90; proxy_read_timeout 90; } # location ~\.(gif|jpg|png)$ { (比如,以正则表达式写) # root /home/root/images; # } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }# Settings for a TLS enabled server.## server {# listen 443 ssl http2 default_server;# listen [::]:443 ssl http2 default_server;# server_name _;# root /usr/share/nginx/html;## ssl_certificate "/etc/pki/nginx/server.crt";# ssl_certificate_key "/etc/pki/nginx/private/server.key";# ssl_session_cache shared:SSL:1m;# ssl_session_timeout 10m;# ssl_ciphers HIGH:!aNULL:!MD5;# ssl_prefer_server_ciphers on;## # Load configuration files for the default server block.# include /etc/nginx/default.d/*.conf;## location / {# }## error_page 404 /404.html;# location = /40x.html {# }## error_page 500 502 503 504 /50x.html;# location = /50x.html {# }# }}
----------------------------------------------------------------------------------
更新配置后,可以重载配置生效,不需要重启服务
$ nginx -s reload
阅读全文
0 0
- centos7 nginx安装与配置实现负载均衡
- centos7配置nginx负载均衡
- Nginx安装与负载均衡配置
- Centos7安装Nginx及配置反向代理和负载均衡
- centos7 安装nginx配置负载均衡、反代理
- Centos7.2 Nginx配置负载均衡
- centos7 安装 Nginx+Tomcat 负载均衡集群
- 安装 Nginx 配置负载均衡
- 配置Nginx实现负载均衡
- 配置Nginx实现负载均衡
- 配置Nginx实现负载均衡
- Varnish安装与配置实现负载均衡
- Centos7 nginx安装并负载均衡WCF/Web以及负载策略配置
- nginx的安装与负载均衡的配置
- 使用nginx配置多个域名与实现负载均衡
- 使用nginx来负载均衡 本文在window与linux下配置nginx实现负载
- linux CentOS7 下 Nginx 1.13.7 配置反向代理与负载均衡
- nginx安装及负载均衡配置
- RabbitMq、ActiveMq、ZeroMq、kafka之间的比较
- 设计模式 -- 单例模式
- 从机器学习算法的发展 理解 端到端(end to end)学习
- qcom 显示驱动注册流程
- Tensorflow--useful function
- centos7 nginx安装与配置实现负载均衡
- leetcode 342. Power of Fou
- 如何设计一个秒杀系统
- Java I/O系统之Writer
- 24.Nginx监听套接字读事件处理函数ngx_event_accept
- 前端生成二维码
- IDEA 设置忽略那些文件不提交到SVN服务器
- springboot开发中使用postman 向后台传递json数据的时候,为空
- 利用R画置信椭圆