nginx 笔记

nginx 简介

Nginx是高性能的 HTTP 和反向代理的服务器,处理高并发能力是十分强大的,能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数。

nginx的主要功能有:
(1) 正向代理
(2) 反向代理
(3) 动静分离

1.反向代理

反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问。
我们只 需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返 回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器 地址,隐藏了真实服务器 IP 地址。
在这里插入图片描述
2.负载均衡
增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负载均衡
在这里插入图片描述
3.动静分离
在这里插入图片描述

Nginx 的常用命令

1、查看 nginx 版本号

./nginx -v 

2、启动 nginx

./nginx

3、停止 nginx

./nginx -s stop

4、重新加载 nginx

./nginx -s reload

Nginx 配置实例

反向代理实例1

1、实现效果
打开浏览器,在浏览器地址栏输入地址 www.123.com,跳转到 liunx 系统tomcat 主页面中

2、准备工作

  1. 在 liunx 系统安装 tomcat,使用默认端口 8080,tomcat 安装文件放到 liunx 系统中,解压进入 tomcat 的 bin 目录中,./startup.sh 启动 tomcat 服务器;

  2. 设置对外开放访问的端口(也可以直接关闭防火墙)
    firewall-cmd --add-port=8080/tcp --permanent
    firewall-cmd –reload
    查看已经开放的端口号
    firewall-cmd --list-all

  3. 在 windows 系统中通过浏览器访问 tomcat 服务器

3、访问过程的分析
在这里插入图片描述
4、具体配置
第一步 在 windows 系统的 host 文件(位置:C:\Windows\System32\drivers\etc)进行域名和 ip 对应关系的配置。
在host文件中添加:192.168.17.129 www.123.com

第二步 在 nginx 进行请求转发的配置(反向代理配置)
在这里插入图片描述
5、最终测试
在这里插入图片描述

反向代理实例 2

1、实现效果

使用 nginx 反向代理,根据访问的路径跳转到不同端口的服务中

nginx 监听端口为 9001
访问 http://192.168.17.129:9001/edu/ 直接跳转到 127.0.0.1:8080
访问 http:// 192.168.17.129:9001/vod/ 直接跳转到 127.0.0.1:8081 2、准备工作

  1. 准备两个 tomcat 服务器,一个 8080 端口,一个 8081 端口
  2. 创建文件夹和测试页面

3、具体配置

  1. 找到 nginx 配置文件,进行反向代理配置
    在这里插入图片描述
  2. 开放对外访问的端口号 9001 8080 8081(如果关闭了防火墙,可以忽略这一步)

4、最终测试
在这里插入图片描述
在这里插入图片描述

负载均衡

1、实现效果
浏览器地址栏输入地址 http://192.168.17.129/edu/a.html,负载均衡效果,请求平均到 8080和 8081 端口中

2、准备工作

  1. 准备两台 tomcat 服务器,一台 8080,一台 8081
  2. 在两台 tomcat 里面 webapps 目录中,创建名称是 edu 文件夹,在 edu 文件夹中创建页面 a.html,用于测试

3、在 nginx 的配置文件中进行负载均衡的配置
在这里插入图片描述在这里插入图片描述
4、nginx 分配服务器策略

第一种 轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。

第二种 weight
weight 代表权重默认为 1,权重越高被分配的客户端越多

第三种 ip_hash
每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器

第四种 fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配

配置动静分离

1、什么是动静分离
在这里插入图片描述
2、准备工作
在 liunx 系统中准备静态资源,用于进行访问

3、具体配置
在 nginx 配置文件中进行配置
在这里插入图片描述

Nginx 配置高可用的集群

什么是 nginx 高可用
在这里插入图片描述
1、配置高可用的准备工作

  1. 需要两台服务器 192.168.17.129 和 192.168.17.131
  2. 在两台服务器安装 nginx
  3. 在两台服务器安装 keepalived

2、在两台服务器安装 keepalived

  1. 使用 yum 命令进行安装
    yum install keepalived –y 
    
  2. 安装之后,在 etc 里面生成目录 keepalived,有文件 keepalived.conf

3、完成高可用配置(主从配置)

  1. 修改/etc/keepalived/keepalivec.conf 配置文件
global_defs {
 notification_email {
 acassen@firewall.loc
 failover@firewall.loc
 sysadmin@firewall.loc
 }
 notification_email_from Alexandre.Cassen@firewall.loc
 smtp_server 192.168.17.129
 smtp_connect_timeout 30
 router_id LVS_DEVEL
}
vrrp_script chk_http_port {
 script "/usr/local/src/nginx_check.sh"
 interval 2 #(检测脚本执行的间隔)
 weight 2
}
vrrp_instance VI_1 {
 state BACKUP # 备份服务器上将 MASTER 改为 BACKUP 
 interface ens33 //网卡
 virtual_router_id 51 # 主、备机的 virtual_router_id 必须相同
 priority 90 # 主、备机取不同的优先级,主机值较大,备份机值较小
 advert_int 1

 authentication {
 auth_type PASS
 auth_pass 1111
 }
 virtual_ipaddress {
 192.168.17.50 // VRRP H 虚拟地址
 } 
}
  1. 在/usr/local/src 添加检测脚本
#!/bin/bash
A=`ps -C nginx –no-header |wc -l`
if [ $A -eq 0 ];then
 /usr/local/nginx/sbin/nginx
 sleep 2
 if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
 killall keepalived
 fi
fi
  1. 把两台服务器上 nginx 和 keepalived 启动
    启动 nginx:./nginx
    启动 keepalived:systemctl start keepalived.service

5、最终测试
在浏览器地址栏输入 虚拟 ip 地址 192.168.17.50
在这里插入图片描述
在这里插入图片描述
把主服务器(192.168.17.129)nginx 和 keepalived 停止,再输入 192.168.17.50
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值