Nginx的应用

  • 1. Nginx的反向代理
  • 1.1 正向代理
  • 1.2 反向代理
  • 1.3 Nginx实现反向代理
  • 2. Nginx的负载均衡
  • 3. Nginx的动静分离
  • 4. Nginx的高可用


1. Nginx的反向代理

1.1 正向代理

代理的是客户端,服务器不知道请求来自于哪个客户。例如:VPN软件。

Nginx启动出现闪退_nginx

1.2 反向代理

代理的是服务器。 客户端不知道请求处理的是哪个服务器。 比如: 腾讯网。

Nginx启动出现闪退_tomcat_02


Nginx启动出现闪退_centos_03

1.3 Nginx实现反向代理

①运行一个Tomcat服务器,默认该服务器端口为8080

②修改Nginx的配置内容

Nginx启动出现闪退_nginx_04

2. Nginx的负载均衡

负载均衡(Load Balancing) 负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。

此处我们运行两台Linux服务器,并且分别在两台服务器上运行相同的Web项目和Tomcat服务器。

重点:

①修改nginx的配置文件,此处为负载均衡的默认轮循策略

Nginx启动出现闪退_tomcat_05


②策略二:配置权重,服务器硬件配置不一致时可以使用权重方式

Nginx启动出现闪退_centos_06


③策略三:ip_hash,同一ip的访问将只会请求同一个服务器

ip_hash是根据用户请求过来的ip,然后映射成hash值,然后分配到一个特定的服务器里面;

使用ip_hash这种负载均衡以后,可以保证用户的每一次会话都只会发送到同一台特定的Tomcat里面,它的session不会跨到其他的tomcat里面去的;

3. Nginx的动静分离

把静态资源放入到Nginx,让Nginx帮客户渲染这些静态资源。

Nginx启动出现闪退_centos_07


修改配置文件

Nginx启动出现闪退_tomcat_08

4. Nginx的高可用

使用Nginx反向代理我们的Tomcat服务器固然好,但是如果Nginx宕机了呢?
此时我们肯定要为Nginx配置集群高可用以备不时之需。

①需要两台Nginx服务器。
192.168.23.223(从 BACKUP)
192.168.23.224(主 MASTER)

②在两台Nginx服务器上安装keepalived

yum install keepalived  安装keepalived
rpm -q -a keepalived  检查是否安装keepalived

默认安装路径: /etc/keepalived

Nginx启动出现闪退_Nginx启动出现闪退_09


③修改keepalived的配置内容

Nginx启动出现闪退_nginx_10


④将Nginx_chech.sh放入到指定目录下

【下载Nginx_chech.sh】

Nginx启动出现闪退_linux_11


⑤启动两台Nginx服务器

./nginx

⑥启动两台keepalived的服务

systemctl start keepalived.service

⑦关闭主服务器,测试从服务器高可用

./nginx -s stop
systemctl stop keepalived.service

PS:Nginx查用命令

1.	./nginx         开启nginx
	./nginx -s stop 关闭nginx
	./nginx -s reload 重新加载nginx配置文件
2. 查看进程的命令 ps -ef | grep 进程名
3. 杀死进程 kill -9 进程号
4. 防火墙的命令。 
    systemctl start firewalld 
    systemctl stop firewalld
    systemctl disable firewalld
    systemctl restart firewalld
    systemctl status firewalld
    firewall-cmd --list-ports 查看放行的端口号
    firewall-cmd --zone=public --add-port=端口号/tcp  --permanent
    添加端口号
5.权限的管理。
    -|d 表示文件的类型
    rwx:当前文件的拥有者具有的权限
    rwx:当前文件拥有者所在的组具有的权限
    rwx:其他用户具有的权限。 
    r:4 w:2 x:1
   
   chmod 三个数字【999】  文件或目录

Nginx启动出现闪退_centos_12