接口自动化 MeterSphere 安装部署
1、参考
MeterSphere 接口自动化 文档
MeterSphere 手动安装 文档
github metersphere release
k8s监控 Promethus 报没有权限错误
chmod 777 /www/opt/metersphere/data/prometheus/
metersphere-online-installer-v2.9.1.tar.gz
个人成功配置文件metersphere.zip下载
个人成功配置文件 metersphere_conf.2023-07-24.17.46.zip
2、MeterSphere步骤
cd /root/metersphere/
# 上传metersphere-online-installer-v2.9.1.tar.gz 到 /root/metersphere/
tar -zxvf metersphere-online-installer-v2.9.1.tar.gz
mv metersphere-online-installer-v2.9.1 metersphere
cd metersphere
# 配置安装参数,参数说明见下文
# vi install.conf
重点修改
## MeterSphere 主程序的 HTTP 服务监听端口
MS_SERVER_PORT=10011
## MeterSphere Node-Controller 组件的 HTTP 服务监听端口
MS_NODE_CONTROLLER_PORT=10012
## Redis 端口
MS_REDIS_PORT=6380
## 数据库端口
MS_MYSQL_PORT=3306
MS_MYSQL_container_expose_PORT=3307
## 是否启动UI模块
MS_UI_ENABLED=true
install.conf 如下
# 基础配置
## 安装路径, MeterSphere 配置及数据文件默认将安装在 ${MS_BASE}/metersphere 目录下
MS_BASE=/opt
## MeterSphere 使用的 docker 网络网段信息
MS_DOCKER_SUBNET=172.30.10.0/24
## 镜像前缀, MeterSphere 相关组件使用的 Docker 镜像前缀, 例如 registry.cn-qingdao.aliyuncs.com/metersphere
MS_IMAGE_PREFIX=registry.cn-qingdao.aliyuncs.com/metersphere
MS_metersphere_PREFIX=metersphere-
## 镜像标签, MeterSphere 相关组件使用的 Docker 镜像标签
MS_IMAGE_TAG=v2.9.1
## 性能测试使用的 JMeter 镜像
MS_JMETER_IMAGE=${MS_IMAGE_PREFIX}/jmeter-master:5.5-ms4-jdk17
## 安装模式 allinone | server | node-controller | selenium-hub | middleware
MS_INSTALL_MODE=allinone
## MeterSphere 主程序的 HTTP 服务监听端口
MS_SERVER_PORT=10011
## MeterSphere Node-Controller 组件的 HTTP 服务监听端口
MS_NODE_CONTROLLER_PORT=10012
MS_NODEEXPORTER_PORT=9100
# 数据库配置
## 是否使用外部数据库
MS_EXTERNAL_MYSQL=false
## 数据库地址
MS_MYSQL_HOST=metersphere-mysql
## 数据库端口
MS_MYSQL_PORT=3306
MS_MYSQL_container_expose_PORT=3307
## 数据库库名
MS_MYSQL_DB=metersphere
## 数据库用户名
MS_MYSQL_USER=root
## 数据库密码
MS_MYSQL_PASSWORD=Password123@mysql
# Prometheus 配置
## 是否使用外部Prometheus
MS_EXTERNAL_PROM=false
MS_PROMETHEUS_PORT=9090
# Redis 配置
## 是否使用外部Redis
MS_EXTERNAL_REDIS=false
## Redis 端口
MS_REDIS_PORT=6380
## Redis 密码
MS_REDIS_PASSWORD=Password123@redis
## Redis地址
MS_REDIS_HOST=$(hostname -I|cut -d" " -f 1)
# Kafka 配置
## 是否使用外部 Kafka
MS_EXTERNAL_KAFKA=false
## Kafka 地址
MS_KAFKA_HOST=$(hostname -I|cut -d" " -f 1)
## Kafka 端口
MS_KAFKA_PORT=9092
## 性能测试结果数据使用的 Kafka Topic
MS_KAFKA_TOPIC=JMETER_METRICS
## 性能测试日志数据使用的 Kafka Topic
MS_KAFKA_LOG_TOPIC=JMETER_LOGS
## 性能测试定时任务通知使用的 Kafka Topic
MS_KAFKA_TEST_TOPIC=LOAD_TESTS
## 重构后性能测试结果数据使用的 Kafka Topic
MS_KAFKA_REPORT_TOPIC=JMETER_REPORTS
# TCP MOCK 端口范围
MS_TCP_MOCK_PORT=10000-10010
# UI容器配置
## 是否启动UI模块
MS_UI_ENABLED=true
## 是否使用外部grid
MS_EXTERNAL_SELENIUM=false
# minio 配置
## 是否使用外部minio
MS_EXTERNAL_MINIO=false
## minio 地址
MS_MINIO_ENDPOINT=http://minio:9000
## minio access
MS_MINIO_ACCESS_KEY=admin
## minio 密码
MS_MINIO_SECRET_KEY=Password123@minio
# 执行install.sh安装脚本
/bin/bash install.sh
请通过以下方式访问:
URL: http://$LOCAL_IP:10011
用户名: admin
初始密码: metersphere
企业用户升级后需手动设置 install.conf 中的 MS_UI_ENABLED=true 并执行 'msctl reload' 来开启UI功能
您可以使用命令 'msctl status' 检查服务运行情况.
安装配置文件说明, 如果无特殊需求可以不进行修改采用默认参数安装(首次安装可修改配置 install.conf 文件中相关配置,修改完后执行 /bin/bash install.sh 命令进行安装,已安装成功如需再修改配置参数,可以直接到 ${MS_BASE}/metersphere/.env 里修改,修改完后执行 msctl reload 即即可重新加载配置文件)
vim /opt/metersphere/.env
.env 如下
MS_KAFKA_REPORT_TOPIC=JMETER_REPORTS
MS_REDIS_PASSWORD=Password123@redis
MS_KAFKA_TOPIC=JMETER_METRICS
MS_MYSQL_HOST=mysql
MS_EXTERNAL_SELENIUM=false
MS_MINIO_ENDPOINT=http://minio:9000
MS_KAFKA_LOG_TOPIC=JMETER_LOGS
MS_EXTERNAL_REDIS=false
MS_PROMETHEUS_PORT=9090
MS_IMAGE_PREFIX=registry.cn-qingdao.aliyuncs.com/metersphere
MS_NODEEXPORTER_PORT=9100
MS_EXTERNAL_PROM=false
MS_NODE_CONTROLLER_PORT=10012
MS_TCP_MOCK_PORT=10000-10010
MS_KAFKA_HOST=172.17.248.83
MS_BASE=/opt
MS_EXTERNAL_KAFKA=false
MS_REDIS_HOST=172.17.248.83
MS_KAFKA_TEST_TOPIC=LOAD_TESTS
MS_INSTALL_MODE=allinone
MS_EXTERNAL_MINIO=false
MS_UI_ENABLED=false
MS_KAFKA_PORT=9092
MS_MINIO_SECRET_KEY=Password123@minio
MS_MYSQL_USER=root
MS_JMETER_IMAGE=registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master:5.5-ms4-jdk17
MS_EXTERNAL_MYSQL=false
MS_MYSQL_DB=metersphere
MS_SERVER_PORT=10011
MS_MYSQL_PASSWORD=Password123@mysql
MS_DOCKER_SUBNET=172.30.10.0/24
MS_REDIS_PORT=6380
MS_IMAGE_TAG=v2.9.1
MS_MINIO_ACCESS_KEY=admin
MS_MYSQL_PORT=3306
3、nginx配置之metersphere.conf
server {
listen 80;
#listen 443 ssl;
server_name 47.xx.yy.58 metersphere.xx.yy.net;
#ssl_certificate 7647358_myjxs.xxx.com.pem;
#ssl_certificate_key 7647358_myjxs.xxx.com.key;
#ssl_protocols TLSv1.1 TLSv1.2;
#ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
#ssl_prefer_server_ciphers on;
#ssl_session_cache shared:SSL:10m;
#ssl_session_timeout 10m;
#client_max_body_size 5000m;
error_page 405 =200 http://$host$request_uri;
access_log /www/server/panel/vhost/nginx/log/access.log;
error_log /www/server/panel/vhost/nginx/log/error.log;
sendfile on;
client_max_body_size 5000m;
client_body_buffer_size 1000m;
keepalive_timeout 600;
send_timeout 600;
proxy_connect_timeout 600;
proxy_read_timeout 600;
proxy_send_timeout 600;
location / {
proxy_pass http://127.0.0.1:10011;
client_max_body_size 1000m;
#access_log off;
# 配置 websocket 支持
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
4、docker步骤
netstat -ntulp |grep 8082
docker rm -f $(docker ps -a | grep redis)
docker stop $(docker ps -a -q)
http://metersphere.xxx.aaaa.net
firewall-cmd --zone=public --add-port=10011/tcp --permanent
firewall-cmd --zone=public --add-port=10012/tcp --permanent
firewall-cmd --reload