六、负载均衡
6.1 实现效果
浏览器地址栏输入地址 http://www.123.com/edu/a.html
,负载均衡效果,平均8080和8081端口中
6.2 环境配置
重新加载该配置文件
[root@tomcat2 sbin]# ./nginx -s reload [root@tomcat2 sbin]# pwd /usr/local/nginx/sbin
6.3 测试
七、动静分离
7.1 实现效果
将静态资源独立存放,由nginx转发静态资源
7.2 环境准备
[root@tomcat2 data]# ll total 0 drwxr-xr-x 2 root root 19 Mar 17 17:26 image drwxr-xr-x 2 root root 19 Mar 17 17:29 www [root@tomcat2 data]# cd image/ [root@tomcat2 image]# ls 1.jpeg [root@tomcat2 data]# cd www/ [root@tomcat2 www]# ll total 4 -rw-r--r-- 1 root root 27 Mar 17 17:29 a.html
每次修改过配置文件,都要重新加载配置文件
[root@tomcat2 conf]# cd /usr/local/nginx/sbin/ [root@tomcat2 sbin]# ./nginx -s reload
7.3 测试
八、高可用
8.1 环境准备
部署两台nginx服务器
yum install -y keepalived
[root@nginx-master ~]# rpm -q keepalived keepalived-1.3.5-19.el7.x86_64
==/usr/local/src/nginx_check.sh==
[root@nginx-master ~]# vim /usr/local/src/nginx_check.sh #!/bin/bash A=`ps -C nginx –no-header |wc -l` if [ $A -eq 0 ];then /usr/local/nginx/sbin/nginx #nginx启动路径 sleep 2 if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then killall keepalived #nginx挂掉后,杀掉这个服务器的所有keepalived进程 fi fi
==keepalived.conf==
[root@nginx-master src]# vim /etc/keepalived/keepalived.conf #全局配置 global_defs { notification_email { acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from Alexandre.Cassen@firewall.loc smtp_server 172.20.10.13 #主机ip smtp_connect_timeout 30 router_id LVS_DEVEL #服务器域名名字,可在/etc/hosts中查看127.0.0.1映射的域名 } #脚本配置 vrrp_script chk_http_port { script "/usr/local/src/nginx_check.sh" #脚本路径 interval 2 #(检测脚本执行的间隔);每隔2s检查一次 weight 2 #设置服务器权重 } #虚拟ip的配置 vrrp_instance VI_1 { state MASTER # Master为Master;Salve为BACKUP interface ens33 #网卡;可以用ip addr 看网卡名 virtual_router_id 51 # 主、备机的 virtual_router_id 必须相同 priority 90 # 主、备机取不同的优先级,主机值较大,备份机值较小 advert_int 1 #每1s发送一次心跳 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.20.10.50 #VRRP H 虚拟ip地址,多台keepalived绑定一个ip;必须同一网段 } }
==slave同上,以下为不同点==
smtp_server 172.20.10.13 #主机ip state BACK priority 90
8.2 测试
访问测试
把master的keepalived和nginx断掉
[root@nginx-master ~]# systemctl stop keepalived [root@nginx-master ~]# cd /usr/local/nginx/sbin/ [root@nginx-master sbin]# ./nginx -s stop [root@nginx-master sbin]#
不断刷新还是能访问nginx页面
九、优秀文章
[正向代理,反向代理](cloud.tencent.com/developer/a…