Linux下nginx安装和使用(超详细版)

安装准备

1.下载Linux下jdk8压缩包
https://share.weiyun.com/8EJ04aNO

2.下载Linux下tomcat压缩包
https://share.weiyun.com/bqrv1CsC

内容大纲

  • 什么是nginx
  • nginx 单击版安装 启动 服务
  • 使用nginx 做负载均衡
    • nginx支持的负载均衡的策略
  • 使用keepalived 完成 nginx 高可用配置

什么是nginx

Apache 静态资源服务器 nginx 是一个 反向代理的 静态资源服务器 。

正向代理:
Linux下nginx安装和使用(超详细版)_第1张图片
反向代理:
Linux下nginx安装和使用(超详细版)_第2张图片
反向代理一般是用在服务器端 ,做请求的分发 ,能实现负载均衡。

nginx 单击版安装 启动 服务

  1. 安装nginx 服务需要的插件

yum install -y yum-utils

Linux下nginx安装和使用(超详细版)_第3张图片

  1. 安装nginx

在官方yum源中也是没有nginx的,但是我们可以在本机去配置nginx的yam源,来实现nginx 的yum安装。
Linux下nginx安装和使用(超详细版)_第4张图片
然后再创建一个nginx.repo的文件:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

安装好了:
Linux下nginx安装和使用(超详细版)_第5张图片
nginx服务的管理命令:

systemctl start/stop/restart/status nginx
Linux下nginx安装和使用(超详细版)_第6张图片

  1. 需要关闭linux 操作系统的selinux 服务

selinux是linux的安全服务套件

修改 vi /etc/selinux/config文件,修改如下内容:
Linux下nginx安装和使用(超详细版)_第7张图片
修改过之后,必须重启linux。
nginx 配置文件:
在这里插入图片描述
Linux下nginx安装和使用(超详细版)_第8张图片

我们以后经常修改的配置文件是/etc/nginx/conf.d/default.conf:

Linux下nginx安装和使用(超详细版)_第9张图片

使用nginx 做负载均衡

下载完压缩包通过xftp传到linux的opt文件夹下,进行解压

第一步,首先要在我们linux服务器上启动两个tomcat

先配置jdk环境变量:
在这里插入图片描述
Linux下nginx安装和使用(超详细版)_第10张图片
然后 保存退出 ,在命令行执行 source 命令 编译环境变量文件,让环境变量立刻生效:
Linux下nginx安装和使用(超详细版)_第11张图片
tomcat 启动:Linux下nginx安装和使用(超详细版)_第12张图片
Linux下nginx安装和使用(超详细版)_第13张图片
第二步,准备两个tomcat 一个端口号弄成8000 另外一个9000
Linux下nginx安装和使用(超详细版)_第14张图片
Linux下nginx安装和使用(超详细版)_第15张图片
Linux下nginx安装和使用(超详细版)_第16张图片
第三步,修改nginx的配置文件
没有安装vim,使用vi命令
在这里插入图片描述
Linux下nginx安装和使用(超详细版)_第17张图片
然后重启nginx服务:
Linux下nginx安装和使用(超详细版)_第18张图片

nginx支持的负载均衡的策略

轮询策略

默认nginx支持的策略,来了请求之后 排队把请求一个一个的分发出去。

权重策略
Linux下nginx安装和使用(超详细版)_第19张图片
IP_HASH方式

根据 客户端ip地址 固定分配到一台服务器上,以后这个ip来的所有请求 都会只到这一个服务器上。
Linux下nginx安装和使用(超详细版)_第20张图片

使用keepalived 完成 nginx 高可用配置

Linux下nginx安装和使用(超详细版)_第21张图片
上面我们实现的集群方式 可以解决tomcat 服务器单点故障的问题,但是解决不了 nginx服务器单点故障的问题。

解决nginx 单点故障问题,市场上通用的解决方案就是使用keepalived 这种插件。

先安装keepalived服务:
在这里插入图片描述
Linux下nginx安装和使用(超详细版)_第22张图片
下面修改keepalived的配置文件: vim /etc/keepalived/keepalived.conf文件:

global_defs {
      
	notification_email {
      
		#keepalived如果检测到nginx服务不能用会往这个邮件发信心 
		[email protected] 
	}
	#配置邮件服务器的信息 
	notification_email_from keepalived@localhost 
	smtp_server 127.0.0.1 
	smtp_connect_timeout 30 
	router_id LVS_MASTER
}
#声明一个脚本 
vrrp_script chk_http_port {
      
	#检测本机nginx的服务是否能用的脚本 这个脚本等下要自己编写 
	script "/usr/local/src/check_nginx_pid.sh" 
	#每隔多长时间自动调用上述脚本 
	interval 2 
	#权重 
	weight 2 
}
vrrp_instance VI_1 {
      
	#state MASTER 
	#配置当前的nginx服务器是主机还是备机 
	state BACKUP 
	#配置当前nginx服务是是否非抢占模式 
	#nopreempt 
	#配置心跳网卡的名称 
	interface ens33 
	#所有的keepalived的服务器的虚拟化路由都要一致 
	virtual_router_id 50 
	#nginx服务器的初始化权重 
	priority 100
	#心跳连接发送的间隔 
	advert_int 1 
	#认证方式和认证密码 要保证所有keepalive的服务器的验证方式和密码都一样 
	authentication {
      
		auth_type PASS 
		auth_pass 1111 
	}
	#启用上述脚本 
	track_script {
     
		 chk_http_port 
	}
	virtual_ipaddress {
      
		#配置了keeplived服务器之后再访问tomcat集群虚拟的ip地址时多少
		192.168.17.222 
		#虚拟ip 
	} 
}

下一步,写/usr/local/src/check_nginx_pid.sh这个脚本:

#! /bin/bash 
A=`ps -C nginx --no-header |wc -l` 
if [ $A -eq 0 ];then 
systemctl start nginx 
if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then 
killall keepalived 
fi
fi

创建好这个脚本之后 不要忘记修改文件的权限:
Linux下nginx安装和使用(超详细版)_第23张图片
下面启动keepalived服务:

systemctl start keepalived

到此就结束了,感谢点赞哦!❤❤❤

你可能感兴趣的:(笔记,重点,服务器,nginx,tomcat,web服务器)