
本章来配置nginx基础环境,并实现反向代理的配置和负载均衡的测试。相关文章可访问本站的网站配置全面指南:反向代理与域名设置
本章内容需要在使用OpenStack构建读写分离的数据库集群实验中设置的mycat客户端进行配置,在其余节点可能会导致之后的实验报错!
一、安装nginx基础环境
1.获取nginx的rpm包并安装
wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm;
rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
2.安装nginx
yum -y install nginx
3.安装完成后,启动nginx
systemctl start nginx
4.启动后,查看80端口号占用情况
netstat -tnlup | grep 80
如果回显正常,nginx启动成功
在宿主机中打开浏览器,URL栏中输入本机的IP地址,如有正常的Welcome to nginx!即代表成功
5.如果80端口已经启用,浏览器未能正确显示,可以关闭防火墙和selinux,如果是云主机,还需要在控制台中手动放通80端口号
systemctl stop firewalld;setenforce 0
6.还可以关闭防火墙和selinux的开机自启
systemctl stop firewalld
vim /etc/selinux/config
在打开的配置文件中,将第七行的enforcing
修改为disabled
,重启后生效
7.将Tomcat上传到服务器中,并解压
tar -zxvf apache-tomcat-9.0.97.tar.gz
8.启动Tomcat
sh /rootapache-tomcat-9.0.97/bin/startup.sh
在宿主机浏览器中输入服务器IP地址加8080端口号,如有正常页面即为启动成功,没有则检查防火墙和安全组设置
二、反向代理设置
通过域名访问Tomcat服务器
1.在宿主机中,打开hosts文件,默认路径在C:\Windows\System32\drivers\etc
下,通过记事本打开hosts文件
在最后一行追加内容为:服务器的IP地址 想要配置的域名,中间使用空格和Tab键隔开,例如
192.168.20.40 ydsj.com
修改完成后,保存退出
2.修改nginx的配置文件
vim /etc/nginx/conf.d/default.conf
在第一段location中,添加如下
proxy_pass http://192.168.20.40:8080; #这里需要填服务器的IP
修改完成后保存退出,重启nginx
systemctl restart nginx
3.再次在宿主机浏览器进行测试,输入上面hosts文件自己设置的域名即可跳转到Tomcat页面
根据访问的路径跳转到不同端口的服务中
1.首先关闭8080端口对应的进程
netstat -tnlup | grep 8080
在输出的最后一项中,为服务的PID号
kill -9 PID
强制结束进程
2.新建两个目录,并将Tomcat的压缩包复制过去
mkdir 80;mkdir 81;cp apache-tomcat-9.0.97.tar.gz 80; cp apache-tomcat-9.0.97.tar.gz 81
3.在80目录下解压Tomcat并启动
tar -zxvf apache-tomcat-9.0.97.tar.gz;sh apache-tomcat-9.0.97/bin/startup.sh
4.在81目录下解压Tomcat
tar -zxvf apache-tomcat-9.0.97.tar.gz
5.修改81目录下的配置文件
vim apache-tomcat-9.0.97/conf/server.xml
在22行和71行分别将端口号修改为8015和8081,修改完成后启动Tomcat
sh apache-tomcat-9.0.97/bin/startup.sh
两个服务都启动后,检查端口占用情况
netstat -tnlup | grep 80
如果8080和8081端口都为LINSTEN状态,即为成功
6.创建文件夹和测试页面
在80下创建测试页面
cd apache-tomcat-9.0.97/webapps ; mkdir edu ; vim edu/index.html
在81下创建测试页面
cd apache-tomcat-9.0.97/webapps ; mkdir vod ; vim vod/index.html
在创建的index文件中,80目录输入0000
,81目录为1111
浏览器中输入地址192.168.20.40:8080/edu/index.html
和192.168.20.40:8081/vod/index.html
查看
显示为0000和1111即为正常
7.修改nginx配置文件,完成反向代理
vim /etc/nginx/conf.d/default.conf
直接在末尾追加如下内容
server{
listen 9001;
server_name 192.168.20.40;
location /edu/ {
proxy_pass http://192.168.20.40:8080;
}
location /vod/ {
proxy_pass http://192.168.20.40:8081;
}
}
完成后重启nginx
8.在浏览器中分别输入192.168.20.40:9001/edu/index.html
和192.168.20.40:9001/vod/index.html
查看测试结果
负载均衡
在浏览器地址栏输入地址http://192.168.20.40/edu/index.html,负载均衡效果,平均 8080 端口和8081端口中
将81目录下的vod
目录重命名为edu
mv vod edu
修改nginx的配置文件
vim /etc/nginx/conf.d/default.conf
直接在第一行添加以下内容
upstream myserver{
server 192.168.20.40:8080;
server 192.168.20.40:8081;
}
并将location
块中的proxy_pass
后的IP地址修改为myserver;
完成后重启nginx,在浏览器输入http://192.168.20.40/edu/index.html,持续刷新页面,可以看到页面0000和1111交替出现