• nginx快速入门


    目录

    1.概述

    2.安装

    3.指令

    4.配置

    4.1.概述

    4.2.反向代理

    4.2.1.示例1

    4.2.2.示例2

    4.3.负载均衡

    5.高可用


    1.概述

    Nginx,一个高性能的HTTP和反向代理的web服务器。也就是说他能把HTTP请求代理映射到服务器的目录上去,其主要用来做两件事:

    1. 反向代理
    2. 负载均衡

    1.反向代理

    正向代理,一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。

    反向代理,用户只需要发送请求,不需要指定目标服务器,由反向代理服务器去自行选择目标服务器。

    2.负载均衡

    2.安装

    nginx其实是解压即可用的,在官网上下载自己需要的平台版本即可。

    3.指令

    Nginx的指令在未配置环境时,只在

    nginx/sbin

    目录下有效,需要全局有效的话,自行配置一下环境变量,此处不展开。

    常用的nginx命令有如下几种:

    查看版本号:nginx -version

    关闭:nginx –s stop  docker中直接关闭容器效果相同

    重载:nginx –s reload  重新加载配置   重启效果相同

    4.配置

    4.1.概述

    nginx的功能都是通过配置来实现的,所以如何配置nginx是使用nginx的核心。nginx的配置文件在/nginx/conf目录下,由三部分组成:

    1. 全局块
    2. events块
    3. http块

    1.全局块

    设置一些影响全局的配置:

    用户组、工作线程(支持的并发量)、错误日志路径、id等。

    示例:

    2.events块

    设置最大连接数

    3.http块

    代理、缓存、日志路径、第三方模块接入

    http块分为:

    全局块、server块(一个server就是一个规则

    新版的nginx的server块存放在etc/nginx/config.d/*.conf中,通过include导入。

    4.2.反向代理

    4.2.1.示例1

    配置http块的server块:

    访问 192.168.7.10转跳到192.168.7.10:8080

    4.2.2.示例2

    ~表示启用正则表达式,server_name+~后面的内容直接转跳到proxy_pass代理的地址。

    4.3.负载均衡

    upstream 自定义名称{

    集群IP

    }

    nginx支持几种负载均衡策略:

    1. 轮询(默认)
    2. 权重
    3. ip_hash
    4. fair

    1.轮询

    按照顺序来轮询,服务器down机后会自动剔除。

    2.权重

    weight,权重,权重越高,被分配的流量越多。

    3.ip_hash

    第一次访问以后客户端IP和服务器IP会进行绑定,该客户端IP后续访问到的都是固定的那台服务器。

    4.fair

    根据请求的响应时间来分配流量,优先分配给响应时间短的。

    5.高可用

    概述:

    nginx采用主备结构实现高可用。使用Keepalived负责进行切换,nginx不需要做额外配置,均是由keepalived来完成,配置keepalived的配置文件即可。

    安装:

    yum install keepalived

    记得systemctl start XXX开启服务!!!

    配置:

    下面这篇文章讲得很清楚:

    Nginx教程系列五:Nginx+Keepalived搭建高可用主从架构_nginx ckh.sh是什么-CSDN博客

    router_id,即集群ID,同一个集群中的节点router_id相同

    state,节点状态,主节点为MASTER,从节点为BACKUP。

    interface,绑定当前工作的网卡(绑错后不会出现虚拟IP

    virtual_router_id 虚拟ID,主备必须一致

    priority 优先级,主、备取不同优先级,主机值较大,备机值较小

    virtual_ipaddress 虚拟IP,用于外部统一访问集群的IP地址

    记得把脚本注册到节点的配置中去!!!

  • 相关阅读:
    C++之多态二三事
    深度学习入门(三十九)计算性能——分布式训练、参数服务器(TBC)
    Flink部署——参数配置
    ceph块存储
    多维度比对三种软件开发方式后,无代码开发到底赢在哪?
    C++ 三大特性之继承(二)重点:菱形虚拟继承
    【Python基础知识点总结】
    IDEA中maven的设置以及相关功能
    1.2 无监督学习和强化学习
    定时任务&多线程-springboot
  • 原文地址:https://blog.csdn.net/Joker_ZJN/article/details/134216117