自动化测试平台部署到服务器

简介:本平台是使用spring boot加前端vue实现的前后端分离的
数据库使用mysql进行数据存储,已能实现接口自动化内容
使用环境跟项目配置域名进行切换,用户使用任务进行手动或者定时启动
统计任务和接口详情信息,由前端配置邮件按照项目对应的人进行发送
性能是集成jmeter的原理进行的驱动,需要手动编写jmx文件

 

项目包下载地址:

链接:https://pan.baidu.com/s/1Msx3Vgbco2Abee436cxWXw 
提取码:ngcj 

 

第一部分  数据库部署


1.下载Mysql

下载地址:https://downloads.mysql.com/archives/community/



2、环境配置

检测系统是否自带Mysql

# rmp -qa|grep mysql

 

如果有进行强行卸载

# rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64

检测系统是否自带mariadb

# rpm -qa|grep mariadb



# rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64 


# rpm -e --nodeps mariadb-5.5.64-1.el7.x86_64 


# rpm -e --nodeps mariadb-server-5.5.64-1.el7.x86_64 


 用连接工具将下载的mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz上传到linux服务器/data/software/的目录下面

 

3、安装

进入/data/software/目录下解压

# tar -zxvf mysql-5.7.28.tar.gz



 解压完成后重命名

# mv mysql-5.7.28-linux-glibc2.12-x86_64 mysql-5.7.28
# mv mysql-5.7.28 /usr/local/



 检查mysql组和用户是否存在,如果没有则创建

cat /etc/group|grep mysql

groupadd mysql

useradd -r -g mysql mysql  #useradd -r参数表示mysql用户是系统用户,不可用于登录系统

 

安装数据库

创建data目录

cd 

/usr/local/mysql-5.7.28

mkdir data



 在/usr/local/mysql-5.7.28/support-files目录下创建my_default.cnf

# vim my_default.cnf



[mysqld]

#设置mysql的安装目录
basedir =/usr/local/mysql-5.7.28
#设置mysql数据库的数据存放目录
datadir = /usr/local/mysql-5.7.28/data
#设置端口
port = 3306

socket = /tmp/mysql.sock
#设置字符集
character-set-server=utf8
#日志存放目录
log-error = /usr/local/mysql-5.7.28/data/mysqld.log
pid-file = /usr/local/mysql-5.7.28/data/mysqld.pid
#允许时间类型的数据为零(去掉NO_ZERO_IN_DATE,NO_ZERO_DATE)
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TAB**,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#ONLY_FULL_GROUP_BY,STRICT_TRANS_TAB**,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

 

拷贝,是否覆盖,是

# cp my_default.cnf /etc/my.cnf

 

 初始化Mysql

# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.28/ --datadir=/usr/local/mysql-5.7.28/data/

 

 如果报错:./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or 就安装libaio,如果没有则跳过

 yum install libaio

 

 初始化完成之后查看日志

cat /usr/local/mysql-5.7.28/data/mysqld.log,蓝框里的是临时密码



把启动脚本放到开机初始化目录

cp support-files/mysql.server /etc/init.d/mysql



 启动mysql

service mysql start



 进入mysql并更改密码

cd /usr/local/mysql-5.7.28

./bin/mysql -u root -p

mysql> set password=password('123456');

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

mysql> flush privileges;

添加远程访问权限

mysql> use mysql;

mysql> update user set host='%' where user = 'root';

mysql> flush privileges;

如果更改时报错:ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY',就先查询一下是否已更改,最后执行刷新。

 

 重启mysql生效

service mysql restart

 

3、创建库

-- 创建mysql库
create database `boot` default character set utf8mb4 collate utf8mb4_general_ci;

 

4、导入数据

选择boot库,右击,移到导入,选择执行SQL脚本...,选择boot.sql文件,点击执行按钮。如下图

 

 

 


第二部分 安装redis和部署

1、下载安装包 
wget http://download.redis.io/releases/redis-5.0.5.tar.gz

2、安装

1)通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压操作

# tar -zxf redis-4.0.9.tar.gz 


2)进入解压文件目录使用make对解压的Redis文件进行编译

       图示:这里因为我redis的安装目录在 /usr/locat/redis  目录下,因此会有如下操作





编译完成之后,可以看到解压文件redis-5.0.5 中会有对应的src、conf等文件夹 



3)编译成功后,进入src文件夹,执行make install进行Redis安装。

       如下图示安装完成,界面如下:





3、部署 
1)为了方便管理,将Redis文件中的conf配置文件和常用命令移动到统一文件中 
创建bin和etc文件 
如图示:

 

回到刚刚安装目录,找到redis.conf,将其复制移动到 /usr/local/redis/ect 下 
执行命令如下: 
mv redis.conf /usr/local/redis/etc/


进入src目录,移动mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-server到/usr/local/redis/bin/ 

执行命令 :mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-server /usr/local/redis/bin/



依次查看移动后文件

 

2)执行redis-server 启动redis

 



3)设置绑定ip(注:该步骤如果不需要可省略)



如需要,可将上图绑定ip改为指定ip。 

4)设置后台启动redis 

首先编辑conf文件,将daemonize属性改为yes(表明需要在后台运行) 

cd etc/ 
vim redis.conf



将no修改为yes 

redis.conf 配置解析(设置红色的基本就可以自己用了,bind配置0.0.0.0后要在/etc/sysconfig/iptables配置相应的端口):

daemonize:如需要在后台运行,把该项的值改为yes

pdifile:把pid文件放在/var/run/redis.pid,可以配置到其他地址

bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项
(设置0.0.0.0 则改为用iptables来控制访问权限)

port:监听端口,默认为6379

timeout:设置客户端连接时的超时时间,单位为秒

loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice

logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上

database:设置数据库的个数,默认使用的数据库是0

save:设置redis进行数据库镜像的频率

rdbcompression:在进行镜像备份时,是否进行压缩

dbfilename:镜像备份文件的文件名

dir:数据库镜像备份的文件放置的路径

slaveof:设置该数据库为其他数据库的从数据库

masterauth:当主数据库连接需要密码验证时,在这里设定

requirepass:设置客户端连接后进行任何其他指定前需要使用的密码

maxclients:限制同时连接的客户端数量

maxmemory:设置redis能够使用的最大内存

appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态

appendfsync:设置appendonly.aof文件进行同步的频率

vm_enabled:是否开启虚拟内存支持

vm_swap_file:设置虚拟内存的交换文件的路径

vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0

vm_page_size:设置虚拟内存页的大小

vm_pages:设置交换文件的总的page数量

vm_max_thrrads:设置vm IO同时使用的线程数量

 

 再次启动redis服务,并指定启动服务配置文件

                  redis-server /usr/local/redis/etc/redis.conf



配置后台运行成功。 

 

 

第三部分  后台项目部署到服务器 

 

1.创建路径/data 
# mkdir /data 
2.进入到data路径下 
# cd /data 
3.上传sys.zip包 
# rz –y 
4.解压sys.zip包 
# unzip sys.zip 
5.进入sys路径下 
# cd /data/sys 
6.修改jar包连接的数据库地址 
# vim system-2.2.0.jar 
然后用/进行搜索,输入dev进行搜索,搜索到了BOOT-INF/classes/application-dev.yml之后点击回车,然后再输入/进行搜索123,再使用N进行翻页,搜索到了之后就修改数据库地址,修改完成之后:wq保存,然后回到上一层页面,在上一层页面输入:q进行退出 
7.启动java包 
# java –jar system-2.2.0.jar >s.log &


8.查看启动日志 
# tail -100f s.log

 


附件: 
jmx里面放性能上传的jmx文件跟csv txt文件 
report里面是邮件的配置文件 
file是测试用例下载模板 
s.log是日志文件 
restart.sh是项目启动脚本 
jar包是项目包 

关掉项目: 
ps aux|grep sys 
kill -9 进程号 


第四部分  前端项目部署到服务器

1.安装编译工具及库文件

# yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel pcre-devel

 

gcc、gcc-c++  # 主要用来进行编译相关使用

openssl、openssl-devel  # 一般当配置https服务的时候就需要这个了

zlib、zlib-devel   # 主要用于文件的解压缩

pcre、pcre-devel  # Nginx的rewrite模块和HTTP核心模块会用到PCRE正则表达式语法

make     # 遍历

make install  # 安装

2.创建nginx目录

1)进入/usr/local目录下

# cd /usr/local

2)创建nginx文件

# mkdir nginx

3.下载并解压nginx

1)进入nginx文件下

# cd /usr/local/nginx

2)下载nginx安装包

# wget https://nginx.org/download/nginx-1.18.0.tar.gz

3)解压

# tar -zxvf nginx-1.18.0.tar.gz

4.进入安装包目录

# cd  /usr/local/nginx-1.18.0

5.编译安装nginx,默认安装到 /usr/local/nginx中

./configure

make && make install

6.进入到/usr/local/nginx/sbin目录,启动nginx

# ./nginx

7.查看启动的 nginx 进程 

ps -ef|grep nginx

8、查看是否可以访问

# curl localhost:80

出现html脚本代表可以访问

9.上传解压项目包

1)将dist.zip上传到服务器的/usr/local/nginx/html路径下

# rz -y

2)对文件进行解压

# unzip dist.zip

3)修改后台接口地址

进入到dist文件下

# cd /usr/local/nginx/html/dist

对index.html文件进行编辑

# vim index.html

将window._CONFIG['domianURL'] 中的地址改为自己后台接口的地址

保存文件

按esc

:wq

10.配置nginx.conf

# cd /usr/local/nginx/conf

# vim nginx.conf

 

#启动的进程数量
worker_processes 1;
events {
#单个进程并发量
worker_connections 1024;#总并发量=单个进程并发量*启动的进程数量
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;#连接服务器超时时长65s
#虚拟主机配置
server {#一个虚拟主机配置,多个虚拟机就配置多个
listen 8888;
server_name 123.57.1.35; #域名解析
location / {#配置默认访问页
root /usr/local/nginx/html/dist;
index index.html index.htm;#访问的首页
try_files $uri $uri/ @router;
}
location ./ {
# 代理转发到后台服务接口,注意后面英文分号;不要少了
proxy_pass http://123.57.1.35:8090/jeecg-boot/swagger-ui.html;
}
location @router{
#rewrite ^.*/index.html last;
rewrite ^(.+)$ /index.html last;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}

保存文件

按esc

:wq

11.查看nginx.conf配置是否正确

/usr/local/nginx/sbin/nginx -t

12.重启nginx

# ./nginx -s reload 

13.在浏览器输入域名:端口进行访问

 

 

附件内容如下:

启动,重启,停止nginx

cd /usr/local/nginx/sbin/

./nginx #启动
./nginx -s stop #停止
./nginx -s quit #退出
./nginx -s reload #重启 修改配置后重新加载生效<br><br>./nginx -s reopen :重新打开日志文件<br>

./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。

 

启动方法二

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

 

停止方法二

ps -ef|grep nginx #查询进程号
kill -QUIT 主进程号 #从容停止
kill -TERM 主进程号 #快速停止
kill -9 主进程号 #强制停止

注:访问外网ip(注意如果是阿里云服务器需要先配置安全组规则)

posted @ 2020-12-25 18:23  沫笙*  阅读(779)  评论(0编辑  收藏  举报