配置CentOS环境
文章目录
1. 配置
1.1 主机名配置
- 命令查看主机名
hostname
- 修改主机名,重启后无效
hostname xxx
- 如果想要永久生效,可以修改/etc/sysconfig/network文件
vim /etc/hostname
1.2 修改ip地址
- 联网的情况下,在终端root用户身份输入:ifconfig,然后记住:
inet 192.168.146.129
netmask 255.255.255.0
broadcast 192.168.146.255
- 然后输入:vim /etc/sysconfig/network-scripts/ifcfg-ens32,并做如下增改:
ONBOOT=yes #设置为yes时,系统启动时激活此设备
HWADDR=00:0C:29:1F:7A:27 #MAC地址
IPADDR=192.168.146.129 #IP地址
NETMASK=255.255.255.0 #子网掩码
BROADCAST=192.168.146.255 #广播地址
- 最后重启网络服务
systemctl restart network
1.3 域名映射
- /etc/hosts文件用于在通过主机名进行访问时做ip地址解析之用,相当于windows系统的C:\Windows\System32\drivers\etc\hosts文件的功能。
- 修改hosts文件
vim /etc/hosts
# 在最后添加信息
# 192.168.xxx.xxx 主机名
192.168.10.10 itcast
1.4 网络服务管理
service network status #查看指定服务的状态
service network stop #停止指定服务
service network start #启动指定服务
service network restart #重启指定服务
service --status-all #查看系统中所有后台服务
netstat -nltp #查看系统中网络进程的端口监听情况
- 防火墙根据配置文件/etc/sysconfig/iptables -config来控制本机的”出”、”入”网络访问行为。
systemctl status firewalld.service #查看防火墙状态
systemctl start firewalld.service #启动防火墙
systemctl stop firewalld.service #关闭防火墙
systemctl enable firewalld.service #防火墙自启
systemctl disable firewalld.service #禁止防火墙自启
1.5 国内yum源
网易(163)yum源是国内最好的yum源之一,无论是速度还是软件版本,都非常的不错。将yum源设置为163 yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。 安装步骤如下:
- 首先备份/etc/yum.repos.d/CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
-
下载对应版本 repo 文件, 放入 /etc/yum.repos.d/ (操作前请做好相应备份)
CentOS5:http://mirrors.163.com/.help/CentOS5-Base-163.repo
CentOS6:http://mirrors.163.com/.help/CentOS6-Base-163.repo
CentOS7:http://mirrors.163.com/.help/CentOS7-Base-163.repo
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS6-Base-163.repo CentOS-Base.repo
- 运行以下命令生成缓存
yum clean all
yum makecache
除了网易之外,国内还有其他不错的 yum 源,比如中科大和搜狐。
中科大的yum源,安装方法查看:https://lug.ustc.edu.cn/wiki/mirrors/help/centos。sohu的yum源安装方法查看: http://mirrors.sohu.com/help/centos.html
2. 必备软件安装
2.1 Java安装
- 下载jdk到根目录“~”
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" “jdk的下载地址”
或者:
wget “jdk的下载地址”
- 如果有openjdk的话,先卸载
查询:rpm -qa | grep java ,rpm -qa | grep jdk
若有,则卸载:rpm -e --nodeps “查询项名称”
- 解压到/usr/java目录
tar -zxvf ~/jdk-8u241-linux-x64.tar.gz -C /usr/java
- 配置java环境变量
vim /etc/profile
输入i,在末尾行添加:
#set java environment
JAVA_HOME=/usr/java/jdk1.8.0_241 #bin的上一级目录全路径
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
- 然后重启profile:source /etc/profile
- 最后输入java -version
- 出现以上界面,说明jdk安装成功。
2.2 MySQL安装
- 检查系统中是否已安装MySQL。
rpm -qa | grep mysql
注意:在新版本的CentOS7中,默认的数据库已更新为了Mariadb
- 查看已安装的Mariadb数据库版本。
rpm -qa | grep -i mariadb
- 卸载已安装的Mariadb数据库。
rpm -qa | grep mariadb | xargs rpm -e --nodeps
- 再次查看已安装的 Mariadb 数据库版本,确认是否卸载完成。
rpm -qa | grep -i mariadb
- 下载安装包文件。
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
- 安装mysql-community-release-el7-5.noarch.rpm包。
rpm -ivh mysql-community-release-el7-5.noarch.rpm
安装完成之后,会在 /etc/yum.repos.d/ 目录下新增 mysql-community.repo 、mysql-community-source.repo 两个 yum 源文件。
执行 yum repolist all | grep mysql 命令查看可用的 mysql 安装文件。
yum install mysql-server,安装mysql。
- rpm -qa | grep mysql,检查mysql是否安装成功。
- 启动mysql服务。
systemctl start mysqld.service #启动mysql
systemctl enable mysqld.service #设置mysql开机启动
systemctl restart mysqld.service #重启mysql
systemctl stop mysqld.service #停止mysql
- 设置密码。
注意:mysql5.6安装完成后,它的root用户的密码默认是空的,我们需要及时用mysql 的root用户登录(第一次直接回车,不用输入密码),并修改密码。
# mysql -u root
mysql> use mysql;
mysql> update user set password=PASSWORD("root用户密码") where User='root';
mysql> flush privileges;
- 设置远程主机登录。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";
2.3 Tomcat安装
2.3.1 解压并安装
- 到官方网站http://tomcat.apache.org/download-80.cgi下载tomcat,我们这里下载Tomcat 8.5(tar.gz)版本。
- 用ftp工具将tar包上传到目标服务器。
- 解压到/usr/tomcat/目录。
tar -xzvf ~/apache-tomcat-8.5.51.tar.gz -C /usr/tomcat
- 在/usr/tomcat/apache-tomcat-8.5.51/bin目录下执行./startup.sh启动。
2.3.2 开放8080端口
- 输入命令查看防火墙的状态。
firewall-cmd --state
- 如果上一步处于关闭状态,输入命令:
systemctl start firewalld.service
- 开启8080端口,输入命令:
firewall-cmd --zone=public --add-port=8080/tcp --permanent
-
命令参数解释:
–zone=public:表示作用域为公共的;
–add-port=8080/tcp:添加tcp协议的端口8080;
–permanent:永久生效,如果没有此参数,则只能维持当前服务生命周期内,重新启动后失效。 -
输入命令重新启动防火墙:
systemctl restart firewalld.service
- 输入命令重新载入配置:
firewall-cmd --reload
- 验证是否正常启动
wget http://localhost:8080
- 远程访问
2.3.3 设置tomcat开机自启动
- 创建tomcat8服务文件:
vim /usr/lib/systemd/system/tomcat8.service
#tomcat8.service文件内容:
[Unit]
Description=Tomcat 8.5.51
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
Environment='JAVA_HOME=/usr/java/jdk1.8.0_241'
Environment='CATALINA_PID=/usr/tomcat/apache-tomcat-8.5.51/bin/tomcat.pid'
Environment='CATALINA_HOME=/usr/tomcat/apache-tomcat-8.5.51/'
Environment='CATALINA_BASE=/usr/tomcat/apache-tomcat-8.5.51/'
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
WorkingDirectory=/usr/tomcat/apache-tomcat-8.5.51/
ExecStart=/usr/tomcat/apache-tomcat-8.5.51/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
- 设置tomcat开机启动:
systemctl enable tomcat8
- 启动tomcat8服务:
systemctl start tomcat8
- 重启系统,然后查看服务:
reboot
systemctl status tomcat8
ps aux | grep tomcat | wc -l
- 如果查找到有2个,就是成功的Linux设置tomcat开机自启动。
2.4 Redis安装
2.4.1 下载安装redis
- 下载安装包到根目录:
wget http://download.redis.io/releases/redis-4.0.6.tar.gz
- 解压压缩包到/usr/目录
tar -zxvf ~/redis-4.0.6.tar.gz -C /usr/
- yum安装gcc依赖:
yum install gcc
- 跳转到redis的解压目录下:
cd /usr/redis-4.0.6
- 编译安装:
make MALLOC=libc
将/usr/redis-4.0.6/src目录下的文件加到/usr/local/bin目录
cd src && make install
2.4.2 启动redis的三种方式
-
直接启动redis
(1)在src目录下输入:./redis-server
(2)按Ctrl + C可以关闭窗口。 -
以后台进程方式启动redis
(1)修改redis.conf文件,将daemonize no修改为daemonize yes
(2)指定redis.conf文件启动,./redis-server /usr/redis-4.0.6/redis.conf
(3)使用ps -aux | grep redis查看redis进程,使用kill命令杀死进程 -
设置redis开机自启动
(1)在/etc目录下新建redis目录,mkdir redis
(2)将/usr/redis-4.0.6/redis.conf文件复制到/etc/redis目录下,并命名为6379.conf
(3)将redis的启动脚本复制一份放到/etc/init.d目录下
(4)设置redis开机自启动,先切换到/etc/init.d目录下,然后执行自启命令
(5)启动:
(6)关闭:
cp /usr/redis-4.0.6/redis.conf /etc/redis/6379.conf
cp /usr/local/redis-4.0.6/utils/redis_init_script /etc/init.d/redisd
#使用vim编辑redisd文件,在第一行加入如下两行注释,保存退出
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
chkconfig redisd on
service redisd start
# 方法1:
service redisd stop
# 方法2:
redis-cli SHUTDOWN
2.5 Nginx安装
2.5.1 安装所需环境
- gcc 安装
安装 nginx 需要先从官方网站下载的源码进行编译,编译依赖gcc环境,如果没有 gcc环境,则需要安装:
yum install gcc-c++
- PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括perl兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装 pcre库,pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel
- zlib安装
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行 gzip,所以需要在CentOS上安装zlib库。
yum install -y zlib zlib-devel
- OpenSSL安装
OpenSSL是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。nginx不仅支持http协议,还支持https(即ssl协议上传输http),所以需要在CentOS 安装OpenSSL库。
yum install -y openssl openssl-devel
2.5.2 官方下载
- 直接下载.tar.gz安装包,地址:https://nginx.org/en/download.html
- 使用wget命令下载(推荐)。确保系统已经安装了wget,如果没有安装,执行 yum install wget 安装。
wget -c https://nginx.org/download/nginx-1.8.0.tar.gz
2.5.3 安装
- 解压:
tar -zxvf nginx-1.12.0.tar.gz -C /usr/
cd /usr/nginx-1.12.0
- 进入nginx-1.8.0目录,使用configure命令创建MakeFile文件:
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
执行后可以看到Makefile文件。
---- 知识点小贴士 ----
Makefile是一种配置文件, Makefile 一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,Makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 MakeFile就像一个Shell脚本一样,其中也可以执行操作系统的命令。
configure参数
./configure \
--prefix=/usr \ 指向安装目录
--sbin-path=/usr/sbin/nginx \ 指向(执行)程序文件(nginx)
--conf-path=/etc/nginx/nginx.conf \ 指向配置文件
--error-log-path=/var/log/nginx/error.log \ 指向log
--http-log-path=/var/log/nginx/access.log \ 指向http-log
--pid-path=/var/run/nginx/nginx.pid \ 指向pid
--lock-path=/var/lock/nginx.lock \ 安装文件锁定,防止安装文件被别人利用,或自己误操作
--user=nginx \
--group=nginx \
--with-http_ssl_module \ 启用ngx_http_ssl_module支持(使支持https请求,需要安装openssl)
--with-http_flv_module \ 启用ngx_http_flv_module支持(提供寻求内存使用基于时间的偏移量文件)
--with-http_stub_status_module \ 启用ngx_http_stub_status_module支持(获取nginx自上次启动以来的工作状态)
--with-http_gzip_static_module \ 启用ngx_http_gzip_static_module支持(在线实时压缩输出数据流)
--http-client-body-temp-path=/var/tmp/nginx/client/ \ 设定http客户端请求临时文件路径
--http-proxy-temp-path=/var/tmp/nginx/proxy/ \ 设定http代理临时文件路径
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \ 设定http fastcgi临时文件路径
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \ 设定http uwsgi临时文件路径
--http-scgi-temp-path=/var/tmp/nginx/scgi \ 设定http scgi临时文件路径
--with-pcre 启用pcre库
- 编译安装
make && make install
2.5.4 Nginx启动与访问
- 启动nginx之前,将临时文件目录指定为/var/temp/nginx/client,需要在/var下创建此目录
mkdir /var/temp/nginx/client -p
- 进入到nginx目录下的sbin目录
cd /usr/local/nginx/sbin
- 输入命令启动nginx
./nginx
- 启动后查看进程
ps aux | grep nginx
- 开放80端口,方法同8080端口
- 地址栏输入主机ip地址即可访问(默认为80端口)
- 关闭 nginx:
./nginx -s quit
或者
./nginx -s stop(不推荐)
- 重启 nginx:
# 先关闭后启动,或者刷新配置文件:
./nginx -s reload
2.5.5 添加Nginx到service启动
- 编写nginx文件,放入/etc/init.d/目录下
#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
# it is v.0.0.2 version.
# chkconfig: - 85 15
# description: Nginx is a high-performance web and proxy server.
# It has a lot of features, but it's not for everyone.
# processname: nginx
# pidfile: /var/run/nginx.pid
# config: /usr/local/nginx/conf/nginx.conf
nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
nginx_pid=/var/run/nginx.pid
RETVAL=0
prog="nginx"
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
[ -x $nginxd ] || exit 0
# Start nginx daemons functions.
start() {
if [ -e $nginx_pid ];then
echo "nginx already running...."
exit 1
fi
echo -n $"Starting $prog: "
daemon $nginxd -c ${nginx_config}
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
return $RETVAL
}
# Stop nginx daemons functions.
stop() {
echo -n $"Stopping $prog: "
killproc $nginxd
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid
}
# reload nginx service functions.
reload() {
echo -n $"Reloading $prog: "
#kill -HUP `cat ${nginx_pid}`
killproc $nginxd -HUP
RETVAL=$?
echo
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
stop
start
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"Usage: $prog {start|stop|restart|reload|status|help}"
exit 1
esac
exit $RETVAL
修改成自己的
nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
- 执行
chkconfig --add /etc/init.d/nginx
chmod 755 /etc/init.d/nginx
chkconfig --add nginx
- 进入到/lib/systemd/system/目录
cd /lib/systemd/system/
- 创建nginx.service文件,并编辑
vim nginx.service
内如如下:
[Unit]
Description=nginx service
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
参数说明:
[Unit]:服务的说明
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径,[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3,保存退出。
- 加入开机自启动
systemctl enable nginx
如果不想开机自启动了,可以使用下面的命令取消开机自启动
systemctl disable nginx
- 服务的启动/停止/刷新配置文件/查看状态
systemctl start nginx.service #启动nginx服务
systemctl stop nginx.service #停止服务
systemctl restart nginx.service #重新启动服务
systemctl list-units --type=service #查看所有已启动的服务
systemctl status nginx.service #查看服务当前状态
systemctl enable nginx.service #设置开机自启动
systemctl disable nginx.service #停止开机自启动
- 一个常见的错误:“Warning: nginx.service changed on disk. Run ‘systemctl daemon-reload’ to reload units. ”直接按照提示执行命令systemctl daemon-reload 即可。
systemctl daemon-reload
3. 部署项目到Linux
3.1 修改
3.1.1 修改pom配置
- 在pom.xml中添加
- 修改jdk版本1.8
3.1.2 修改项目
- druid.properties
- header.html
- route_detail.html
3.1.3 使用package命令打包
3.2 部署
- 将travel.war上传到tomcat中的webapps目录
- 重启tomcat
- 到出本地mysql数据,并导入linux中的mysql
4. Nginx静态网站部署
4.1 静态网站的部署
将/资料/静态页面/index目录下的所有内容上传到服务器的/usr/local/nginx/html下即可访问
4.2 配置虚拟主机
虚拟主机,也叫“网站空间”,就是把一台运行在互联网上的物理服务器划分成多个“虚拟”服务器。虚拟主机技术极大的促进了网络技术的应用和普及。同时虚拟主机的租用服务也成了网络时代的一种新型经济形式。
4.2.1 端口绑定
-
上传静态网站:
将/资料/静态页面/index目录上传至/usr/local/nginx/index下
将/资料/静态页面/regist目录上传至/usr/local/nginx/regist下 -
修改Nginx的配置文件:/usr/local/nginx/conf/nginx.conf
server {
listen 81; # 监听的端口
server_name localhost; # 域名或ip
location / { # 访问路径配置
root index;# 根目录
index index.html index.htm; # 默认首页
}
error_page 500 502 503 504 /50x.html; # 错误页面
location = /50x.html {
root html;
}
}
server {
listen 82; # 监听的端口
server_name localhost; # 域名或ip
location / { # 访问路径配置
root regist;# 根目录
index regist.html; # 默认首页
}
error_page 500 502 503 504 /50x.html; # 错误页面
location = /50x.html {
root html;
}
}
- 访问测试:
地址栏输入http://192.168.177.129/:81 可以看到首页面
地址栏输入http://192.168.177.129/:82 可以看到注册页面
4.2.2 域名绑定
- 一个域名对应一个 ip 地址,一个 ip 地址可以被多个域名绑定。
本地测试可以修改 hosts 文件(C:\Windows\System32\drivers\etc)。
可以配置域名和 ip 的映射关系,如果 hosts 文件中配置了域名和 ip 的对应关系,不需要走dns 服务器。
192.168.177.129 www.hmtravel.com
192.168.177.129 regist.hmtravel.com
- 做好域名指向后,修改nginx配置文件
server {
listen 80;
server_name www.hmtravel.com;
location / {
root cart;
index cart.html;
}
}
server {
listen 80;
server_name regist.hmtravel.com;
location / {
root search;
index search.html;
}
}
- 执行以下命令,刷新配置
./nginx -s reload
- 测试:
地址栏输入http://www.hmtravel.com/
地址栏输入http://regist.hmtravel.com/
5. Nginx反向代理与负载均衡
5.1 反向代理
5.1.1 什么是反向代理
- 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
- 首先我们先理解正向代理,如下图:
- 正向代理是针对你的客户端,而反向代理是针对服务器的,如下图
5.1.2 配置反向代理-准备工作
- 将travel案例部署到tomcat中(ROOT目录),上传到服务器。
- 启动Tomcat,输入网址http://192.168.177.129:8080,可以看到网站首页。
5.1.3 配置反向代理
- 在Nginx主机修改 Nginx配置文件
upstream tomcat-travel {
server 192.168.177.129:8080;
}
server {
listen 80; # 监听的端口
server_name www.hmtravel.com; # 域名或ip
location / { # 访问路径配置
# root index;# 根目录
proxy_pass http://tomcat-travel;
index index.html index.htm; # 默认首页
}
}
(2) 重新启动Nginx然后用浏览器测试:http://www.hmtravel.com(此域名须配置域名指向)。
5.2 负载均衡
5.2.1 什么是负载均衡
负载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
5.2.2 配置负载均衡-准备工作
- 将刚才的存放工程的tomcat复制三份,修改端口分别为8080,8081,8082。
- 分别启动这三个tomcat服务。
- 为了能够区分是访问哪个服务器的网站,可以在首页标题加上标记以便区分。
5.2.3 配置负载均衡
- 修改 Nginx配置文件:
upstream tomcat-travel {
server 192.168.177.129:8080;
server 192.168.177.129:8081;
server 192.168.177.129:8082;
}
server {
listen 80; # 监听的端口
server_name www.hmtravel.com; # 域名或ip
location / { # 访问路径配置
# root index;# 根目录
proxy_pass http://tomcat-travel;
index index.html index.htm; # 默认首页
}
error_page 500 502 503 504 /50x.html; # 错误页面
location = /50x.html {
root html;
}
}
-
测试:地址栏输入http:// www.hmtravel.com/刷新观察每个网页标题,看是否不同。
-
设置权重:
经过测试,三台服务器出现的概率各为33.3333333%,交替显示。
如果其中一台服务器性能比较好,想让其承担更多的压力,可以设置权重。
比如想让NO.1出现次数是其它服务器的2倍,则修改配置如下:
upstream tomcat-travel {
server 192.168.177.129:8080;
server 192.168.177.129:8081 weight=2;
server 192.168.177.129:8082;
}
经过测试,每刷新四次,有两次是8081