Linux多服务器部署

使用服务器信息

软件:VMware Workstation Pro

虚拟机:CentOS-7 内存:20G(5台)

虚拟机连接工具: MobaXterm

Redis连接工具: RedisDesktopManager

镜像:F:\CentOS-7-x86_64-DVD-1908.iso

使用软件信息

Jdk: 1.8.0_151

Apache Tomcat: 8.5.20(双节点)

Redis: 6.0.5

Nginx: 1.14.2

1.在tomcat01服务器上安装配置tomcat01

创建文件夹,将成为软件的安装位置

mkdir  /tools/

进入创建好的安装目录

[root@localhost ~]# cd /tools/

上传安装包(tomcat,jdk)

rz ...

安装配置jdk

解压安装包

[root@localhost tools]# tar -zxvf jdk-8u151-linux-x64.tar.gz

配置环境变量

[root@localhost tools]# vim /etc/profile
vim如果使用不了用vi

将jdk的环境变量粘贴在最后一行代码的下一行(写jdk的解压安装路径,我这里是/tools/

#java environment
export JAVA_HOME=/tools/jdk1.8.0_151
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

查看是否安装成功,首先刷新配置文件

查看版本(是否安装成功)

[root@localhost tools]# java -version

安装配置Tomcat01

在/tools/目录下解压安装包

[root@localhost tools]# tar -zxvf apache-tomcat-8.5.20.tar.gz

进入解压好的文件夹

[root@localhost tools]# cd apache-tomcat-8.5.20/

进入配置文件

[root@localhost apache-tomcat-8.5.20]# cd conf/
[root@localhost conf]# vim server.xml

Host节点下添加

<Context docBase="" path="/" reloadable="true" source=""/>

设置Tomcat01自启动

进入本地目录

[root@localhost apache-tomcat-8.5.20]# cd /usr/lib/systemd/system

在这个目录下创建tomcat.service自启动配置文件

[root@localhost system]# vi tomcat.service

[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
Environment='JAVA_HOME=/lky/jdk1.8.0_151'
Environment='CATALINA_PID=/lky/apache-tomcat-8.5.20/tomcat.pid'
Environment='CATALINA_HOME=/lky/apache-tomcat-8.5.20/'
Environment='CATALINA_BASE=/lky/apache-tomcat-8.5.20/'
#Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'

PIDFile=/lky/apache-tomcat-8.5.20/tomcat.pid
ExecStart=/lky/apache-tomcat-8.5.20/bin/catalina.sh start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

将里面的tomcat安装位置改成我们的安装目录 lky改成/tools/(tomcat解压安装目录)

设置自启动

[root@localhost system]# systemctl enable tomcat

重载服务

[root@localhost system]# systemctl daemon-reload

重启服务

[root@localhost system]# systemctl restart tomcat

查看服务状态

[root@localhost system]# systemctl status tomcat

设置自启成功

开放tomcat端口,端口号 8080

[root@localhost bin]# firewall-cmd --zone=public --add-port=8080/tcp --permanent

刷新防火墙

[root@localhost bin]# firewall-cmd --reload

网页测试tomcat是否可以访问

虚拟机ip+端口号

访问成功,部署我们的后端war包

进入tomcat01部署项目目录webapps

[root@localhost system]# cd /tools/apache-tomcat-8.5.20/webapps/

上传我们的war包

r'z ...

刷新webapps目录,tomcat是自启动的,war包自动解压

进入解压文件夹

[root@localhost webapps]# cd ruoyi-admin/

进入配置目录WEB-INF/classes/

[root@localhost ruoyi-admin]# cd WEB-INF/classes/

配置前面两个yml文件

[root@localhost classes]# vim application.yml

给redis上密码123456,localhost改成我们另外一台redis虚拟机的ip地址

[root@localhost classes]# vim application-druid.yml

记住下面配置文件的数据库名字和数据库密码,我们安装MySQL时根据以下(war数据库名字及密码)要求进行安装配置

2.在tomcat02服务器上安装配置tomcat02

创建文件夹,将成为软件的安装位置

mkdir  /tools/

进入创建好的安装目录

[root@localhost ~]# cd /tools/

上传安装包(tomcat,jdk)

rz ...

安装配置jdk

解压安装包

[root@localhost tools]# tar -zxvf jdk-8u151-linux-x64.tar.gz

配置环境变量

[root@localhost tools]# vim /etc/profile
vim如果使用不了用vi

将jdk的环境变量粘贴在最后一行代码的下一行(写jdk的解压安装路径,我这里是/tools/

#java environment
export JAVA_HOME=/tools/jdk1.8.0_151
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

查看是否安装成功,首先刷新配置文件

[root@localhost tools]# source /etc/profile

查看版本(是否安装成功)

[root@localhost tools]# java -version

安装配置Tomcat02

在/tools/目录下解压安装包

[root@localhost tools]# tar -zxvf apache-tomcat-8.5.20.tar.gz

进入解压好的文件夹

[root@localhost tools]# cd apache-tomcat-8.5.20/

进入配置文件

[root@localhost apache-tomcat-8.5.20]# cd conf/
[root@localhost conf]# vim server.xml

Host节点下添加

<Context docBase="" path="/" reloadable="true" source=""/>

修改访问端口号,避免冲突配置文件中8005改成8006,8009改成8010,8080改成8081

设置Tomcat01自启动

进入本地目录

[root@localhost apache-tomcat-8.5.20]# cd /usr/lib/systemd/system

在这个目录下创建tomcat.service自启动配置文件

[root@localhost system]# vi tomcat.service

[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
Environment='JAVA_HOME=/lky/jdk1.8.0_151'
Environment='CATALINA_PID=/lky/apache-tomcat-8.5.20/tomcat.pid'
Environment='CATALINA_HOME=/lky/apache-tomcat-8.5.20/'
Environment='CATALINA_BASE=/lky/apache-tomcat-8.5.20/'
#Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'

PIDFile=/lky/apache-tomcat-8.5.20/tomcat.pid
ExecStart=/lky/apache-tomcat-8.5.20/bin/catalina.sh start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

将里面的tomcat安装位置改成我们的安装目录 lky改成/tools/(tomcat解压安装目录)

设置自启动

[root@localhost system]# systemctl enable tomcat

重载服务

[root@localhost system]# systemctl daemon-reload

重启服务

[root@localhost system]# systemctl restart tomcat

查看服务状态

[root@localhost system]# systemctl status tomcat

设置自启成功

开放tomcat端口,端口号 8081

[root@localhost bin]# firewall-cmd --zone=public --add-port=8081/tcp --permanent

刷新防火墙

[root@localhost bin]# firewall-cmd --reload

网页测试tomcat是否可以访问

虚拟机ip+端口号

访问成功,部署我们的后端war包

进入tomcat02部署项目目录webapps

[root@localhost system]# cd /tools/apache-tomcat-8.5.20/webapps/

上传我们的war包

r'z ...

刷新webapps目录,tomcat是自启动的,war包自动解压

进入解压文件夹

[root@localhost webapps]# cd ruoyi-admin/

进入配置目录WEB-INF/classes/

[root@localhost ruoyi-admin]# cd WEB-INF/classes/

配置前面两个yml文件

[root@localhost classes]# vim application.yml

给redis上密码123456,localhost改成我们另外一台redis虚拟机的ip地址

[root@localhost classes]# vim application-druid.yml

记住下面配置文件的数据库名字和数据库密码,我们安装MySQL时根据以下(war数据库名字及密码)要求进行安装配置

3.在mysql服务器上安装配置Mysql

创建文件夹,将成为软件的安装位置

mkdir  /tools/

进入创建好的安装目录

[root@localhost ~]# cd /tools/

上传Mysql安装包

rz ...

测试是否有数据库,有的话删掉重新安装配置

.卸载mariadb,否则安装MySql会出现冲突(先查看后删除再查看)

[root@localhost tools]# rpm -qa|grep mar运行代码iadb
mariadb-libs-5.5.64-1.el7.x86_64
[root@localhost tools]# rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64
[root@localhost tools]# rpm -qa|grep mariadb
[root@localhost tools]#

解压安装包

[root@localhost tools]# tar -xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar

开始安装,-ivh 其中i表示安装,v表示显示安装过程,h表示显示进度

rpm -ivh mysql-community-common-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm
[root@localhost tools]# rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm --force --nodeps

启动MySQL服务

[root@localhost tools]# systemctl start mysqld

登录mysql修改密码

[root@localhost tools]# grep "password" /var/log/mysqld.log
2024-06-04T03:43:11.914850Z 1 [Note] A temporary password is generated for root@localhost: Z?g>-Htd5l!h
[root@localhost tools]# mysql -uroot -p
Enter password: Z?g>-Htd5l!h

登录成功

登录进来什么都不要做,优先改密码

#设置密码校验策略,要不密码太简单不让你过

set global validate_password_policy=0;

#设置密码校验长度,要不密码太短不让你过(多次测试发现密码最小长度为4位)

set global validate_password_length=4;

#更新密码

set password = password("123456");

授予权限

 
 
grant all on *.* to root@'%' identified by '123456';

刷新权限

FLUSH PRIVILEGES;

创建数据库,根据上面配置文件创建数据库

mysql>
mysql> create database xmg;
Query OK, 1 row affected (0.00 sec)

进入数据库

mysql> use xmg;
Database changed
mysql>

脚本上传到安装目录 rz (此操作退出mysql容器)

导入sql脚本数据

mysql> use xmg;
Database changed
mysql> source /tools/medical(完整版,但是数据表未整理).sql

查看数据库

退出MySQL 输入命令 exit

如果我们把这些配置安装在不同的服务器上,切记一定要开放端口3306

firewall-cmd --zone=public --add-port=3306/tcp --permanent

刷新

firewall-cmd --reload

查看

 
firewall-cmd --list-ports

4.安装配置redis

创建文件夹,将成为软件的安装位置

mkdir  /tools/

进入创建好的安装目录运行代码

[root@localhost ~]# cd /tools/

[root@localhost ~]# cd /tools/

下载

安装wget

yum -y install wget
wget https://download.redis.io/releases/redis-6.0.5.tar.gz

创建redis目录

[root@localhost tools]# mkdir /usr/local/redis

解压下载好的安装包

[root@localhost tools]# tar -zvxf redis-6.0.5.tar.gz -C /usr/local/redis

由于redis是c语言编写的,所以我们需要先安装gcc

yum install gcc-c++

编译make,此时安装的gcc版本过低,升级一下

[root@localhost redis-6.0.1]# gcc -v                             # 查看gcc版本
[root@localhost redis-6.0.1]# yum -y install centos-release-scl  # 升级到9.1版本
[root@localhost redis-6.0.1]# yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
[root@localhost redis-6.0.1]# scl enable devtoolset-9 bash

在进入进入redis-6.2.1目录下编译

make && make install

编译成功

编辑配置文件

[root@localhost redis-6.0.5]# vi redis.conf

no改成yes

yes改成no(因为需要远程连接) ------此步骤可以忽略

注释这一行

删除注释,给上密码(根据war包里面的配置文件设置密码)

进入bin目录

[root@localhost redis-6.0.5]# cd /usr/local/bin/
设置redis自启动
[root@localhost bin]# cd /usr/lib/systemd/system

新建一个配置文件

[root@localhost system]# vi redis.service

将以下代码复制进去

[Unit]
Description=Redis
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/lky/redis-5.0.0/src/redis-server /lky/redis-5.0.0/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID 
ExecStop=/bin/kill -s QUIT $MAINPID 
PrivateTmp=true

[Install]
WantedBy=multi-user.target

复制路径,放在/redis前面

进入bin目录复制路径

[root@localhost tools]# cd /usr/local/bin/
[root@localhost bin]# pwd
/usr/local/bin
[root@localhost bin]#

复制路径

[root@localhost bin]# cd /usr/local/redis/redis-6.0.5/
[root@localhost redis-6.0.5]# pwd
/usr/local/redis/redis-6.0.5
[root@localhost redis-6.0.5]#

修改好,刷新

# 重载服务

systemctl enable redis

# 自启动服务

systemctl enable redis

# 启动服务

systemctl start redis

# 停止服务

systemctl stop redis

# 重启服务

 
systemctl restart redis

查看进程

[root@localhost redis-6.0.5]# ps -ef | grep redis

一定要关掉进程

[root@localhost redis-6.0.5]# kill -9 13390

# 重载服务

systemctl daemon-reload

# 启动服务

systemctl start redis

# 停止服务

systemctl stop redis

# 重启服务

systemctl restart redis

开发端口6379(切记)

firewall-cmd --zone=public --add-port=6379/tcp --permanent

刷新防火墙

 
firewall-cmd --reload

5.安装配置nginx

创建文件夹,将成为软件的安装位置

mkdir  /tools/

进入创建好的安装目录

[root@localhost ~]# cd /tools/

下载gcc

yum install -y gcc

下载nginx

rpm -Uvh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.14.2-1.el7_4.ngx.x86_64.rpm

配置反向代理,负载均衡,静态资源

进入nginx下载目录

[root@localhost tools]# cd /etc/nginx/

进入配置文件目录

[root@localhost nginx]# cd conf.d/
[root@localhost conf.d]# ls
default.conf
[root@localhost conf.d]#
[root@localhost conf.d]# vim default.conf
6.配置负载均衡

加入tomcat双节点

upstream  tomcats{
server   192.168.85.148:8080  weight=1;
server   192.168.85.142:8081  weight=2;
}

localhost改成我们前端给的域名(我这里是www.zking.xmg

6.1配置反向代理
location  ^~/api/ {
proxy_pass http://tomcats/ruoyi-admin/;
}
location /prod-api/ {
                        proxy_set_header Host $http_host;
                        proxy_set_header X-Real-IP $remote_addr;
                        proxy_set_header REMOTE-HOST $remote_addr;
                        proxy_set_header X-Forwarded-For           $proxy_add_x_forwarded_for;
                        proxy_pass http://tomcats/ruoyi-admin/;
                }

6.2配置静态文件

复制root路径

进入静态文件路径,将我们的静态文件放进去

[root@localhost conf.d]# cd /usr/share/nginx/html/

将这个目录下的文件全部删除,上传dist静态文件

[root@localhost html]# rm -rf *

rz ...

dist目录的文件夹下新建WEB-INF文件夹,并在里面添加web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
        http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
        version="3.1" metadata-complete="true">
     <display-name>Router for Tomcat</display-name>
     <error-page>
        <error-code>404</error-code>
        <location>/index.html</location>
    </error-page>
</web-app>

开发端口80(切记)

firewall-cmd --zone=public --add-port=80/tcp --permanent

刷新防火墙

firewall-cmd --reload

启动nginx

[root@localhost nginx]# systemctl start nginx

查看状态

[root@localhost nginx]# systemctl status nginx

setenforce是Linux的selinux的防火墙配置命令,需要关闭

运行

setenforce 0

如果保持查看日志,在修改配置文件在重启服务nginx

tail -f /var/log/nginx/error.log
7.本机配置域名

路径

C:\Windows\System32\drivers\etc

host文件添加域名如下 虚拟机ip + 域名

192.168.85.140 www.zking.xmg

访问ip(部署成功页面,登录成功)

访问域名(部署成功页面,登陆成功)

  • 16
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值