系列文章目录
在Linux上部署Nginx及集群
目录
7.修改tomcat8000和tomcat9000的配置文件
8.修改tomcat8000和tomcat9000默认打开项目主界面的内容tomcat9000同上
10,启动tomcat8000和tomcat9000,保证windows浏览器能直接通过IP和端口访问
前言
Nginx是一个实现了反向代理的静态资源服务器。
例如,tomcat是动态资源服务器
本篇nginx的目的是为了实现tomcat集群。
应用场景基本分为“负载均衡服务器”,“静态资源服务器”
优点 速度快,配置简单,高可靠
一、去哪下载?
可以通过下载tar包安装 但是官方推荐使用yum安装
二、部署Nginx
1.禁用SeLinux安全策略
先进入到etc目录
代码如下(示例):vim selinux/config
修改过该文件之后,需要重启Linux系统
2.安装Nginx依赖的yum-utils插件
nginx要正常安装,必须先安装yum-utils插件。这个插件中包含很多子插件。早期nginx安装这些自插件必须一个一个安装,后期为了简单就封装成了一个插件yum-utils,所以现在我们只需要安装yum-utils就可以了。
你知道的,必须保证你的linux虚拟机能连接互联网
代码如下(示例):yum install -y yum-utils
3,在本机创建yum源
在yum仓库 没有yum源,我们必须在本机自己声明yum源。
进入到/etc/yum.repos.d/这个目录,然后新建一个nginx.repo的文件
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
把上面放到 nginx.repo文件中
4,安装nginx
在任意目录执行 yum install -y nginx
5.启动Nginx
Nginx安装后之后,会在Linux后台注册名称为nginx的服务,我们直接通过systemctl start命令就能启动或者关闭nginx
启动 systemctl start nginx
关闭 systemctl stop nginx
查看 systemctl status nginx
启动成功,可以在windows系统的浏览器中输入IP地址直接访问。nginx默认提供服务的端口是80端口,80端口是浏览器默认的端口,所以访问的时候可以不加端口。
成功
6.实现tomcat应用服务器集群
复制两个tomcat分别命名为8000,9000
7.修改tomcat8000和tomcat9000的配置文件
tomcat配置文件的路径
tomcat8000/conf/server.xml
上面是tomcat8000需要修改的内容,set nu命令可显示左侧行数
如果是生产环境,一个机器上肯定不会部署两个tomcat,所以肯定不需要修改这些东西。
tomcat9000/conf/server.xml
上图为9000要修改的东西,关闭端口(跟tomcat8000不冲突就行)
提供服务的端口(跟tomcat8000不冲突就行)
Ajp端口改为8010(跟tomcat8000不冲突就行)
8.修改tomcat8000和tomcat9000默认打开项目主界面的内容
我们要修改 tomcat8000/webapps/ROOT/index.jsp 和
tomcat9000/webapps/ROOT/index.jsp
访问tomcat8000和tomcat9000项目,例如访问http://192.168.11.10:8000
或者访问http://192.168.11.10:9000,他们事实上访问的都是tomcat的webapps
目录下的ROOT目录下的index.jsp
如果我们不改一下这个文件,等下nginx实现tomcat集群之后,我们就不能从界面上看出来发往nginx的请求到底转发到了8000上还是9000上。
当然,如果是正式服务器,肯定需要访问的项目一模一样。
tomcat9000同上
9,修改nginx配置文件
nginx的主配置文件是/etc/nginx/nginx.conf
这个文件包含/etc/nginx/conf.d目录下所有以conf结尾的文件。
所以我们直接修改/etc/nginx/config.d/default.conf文件就可以了
upstream aaa{
server 192.168.139.10:8000;
server 192.168.139.10:9000;
}
server {
listen 80;
server_name localhost;#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
proxy_pass http://aaa;
}
9.1 轮询(默认)
P9就是轮询(上面)
默认的负载均衡策略。
按请求访问顺序,轮询给所有服务器分配请求。
9.2 权重
9.3 IP_HASH
对来访问的服务器的IP进行hash运算,hash运算会有一个固定的结果,结果是哪个服务器,以后如果IP不变就永远访问这一个服务器。
这种方式是解决分布式登录校验问题的一种思路,但是这种方式并不好,因为,一个局域网对外的IP是一样的,如果一个局域网内有200台机器,这200机器都去访问nginx,那最终这些请求都会落到一台机器上,性能较低。
10,启动tomcat8000和tomcat9000,保证windows浏览器能直接通过IP和端口访问
10.1 测试权重,轮询等要重启Nginx!!!
systemctl restart nginx