dev_1.0.0_sundp 完成Metric模块及模块e2e测试 (#18)
Co-authored-by: sundapeng.sdp <sundapeng@hashdata.cn> Reviewed-on: #18 Reviewed-by: xuxt <xuxt@zgclab.edu.cn> Reviewed-by: yuyr <yuyr@zgclab.edu.cn> Reviewed-by: huhy <husteryezi@163.com>
This commit was merged in pull request #18.
This commit is contained in:
90
src/metric/tests/init-directories.sh
Executable file
90
src/metric/tests/init-directories.sh
Executable file
@@ -0,0 +1,90 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 初始化目录脚本
|
||||
# 用于创建所有必要的数据目录并设置正确的权限
|
||||
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
cd "$SCRIPT_DIR"
|
||||
|
||||
# 加载 .env 文件(如果存在)
|
||||
if [ -f .env ]; then
|
||||
echo "加载 .env 配置文件..."
|
||||
source .env
|
||||
fi
|
||||
|
||||
# 默认配置
|
||||
FTP_UID=${FTP_UID:-2133}
|
||||
FTP_GID=${FTP_GID:-2015}
|
||||
PROMETHEUS_UID=${PROMETHEUS_UID:-2133}
|
||||
PROMETHEUS_GID=${PROMETHEUS_GID:-2015}
|
||||
GRAFANA_UID=${GRAFANA_UID:-2133}
|
||||
GRAFANA_GID=${GRAFANA_GID:-2015}
|
||||
DATA_ROOT=${DATA_ROOT:-./data}
|
||||
|
||||
echo "开始初始化目录结构..."
|
||||
echo "数据目录: ${DATA_ROOT}"
|
||||
echo ""
|
||||
|
||||
# 创建 FTP 目录
|
||||
echo "创建 FTP 目录..."
|
||||
sudo mkdir -p ${DATA_ROOT}/ftp/share
|
||||
sudo chown -R ${FTP_UID}:${FTP_GID} ${DATA_ROOT}/ftp
|
||||
sudo chmod -R 755 ${DATA_ROOT}/ftp
|
||||
|
||||
# 创建 Prometheus 目录
|
||||
echo "创建 Prometheus 目录..."
|
||||
sudo mkdir -p ${DATA_ROOT}/prometheus/{data,rules,targets}
|
||||
|
||||
# 创建默认的 targets 文件(先创建文件再改权限)
|
||||
if [ ! -f "${DATA_ROOT}/prometheus/targets/node_exporter.json" ]; then
|
||||
echo "创建默认 node_exporter targets..."
|
||||
echo '[
|
||||
{
|
||||
"targets": [],
|
||||
"labels": {
|
||||
"job": "node"
|
||||
}
|
||||
}
|
||||
]' | sudo tee ${DATA_ROOT}/prometheus/targets/node_exporter.json > /dev/null
|
||||
fi
|
||||
|
||||
if [ ! -f "${DATA_ROOT}/prometheus/targets/dcgm_exporter.json" ]; then
|
||||
echo "创建默认 dcgm_exporter targets..."
|
||||
echo '[
|
||||
{
|
||||
"targets": [],
|
||||
"labels": {
|
||||
"job": "dcgm"
|
||||
}
|
||||
}
|
||||
]' | sudo tee ${DATA_ROOT}/prometheus/targets/dcgm_exporter.json > /dev/null
|
||||
fi
|
||||
|
||||
# 统一设置 Prometheus 目录权限
|
||||
sudo chown -R ${PROMETHEUS_UID}:${PROMETHEUS_GID} ${DATA_ROOT}/prometheus
|
||||
sudo chmod -R 755 ${DATA_ROOT}/prometheus
|
||||
|
||||
# 创建 Grafana 目录
|
||||
echo "创建 Grafana 目录..."
|
||||
sudo mkdir -p ${DATA_ROOT}/grafana/{data,logs,plugins,provisioning/datasources,provisioning/dashboards,data/sessions,data/dashboards,config}
|
||||
sudo chown -R ${GRAFANA_UID}:${GRAFANA_GID} ${DATA_ROOT}/grafana
|
||||
sudo chmod -R 755 ${DATA_ROOT}/grafana
|
||||
|
||||
# 创建公共配置目录
|
||||
sudo mkdir -p ${DATA_ROOT}/etc
|
||||
sudo chown -R ${FTP_UID}:${FTP_GID} ${DATA_ROOT}/etc
|
||||
sudo chmod -R 755 ${DATA_ROOT}/etc
|
||||
|
||||
echo "目录初始化完成!"
|
||||
echo ""
|
||||
echo "目录结构:"
|
||||
echo " ${DATA_ROOT}/"
|
||||
echo " ├── ftp/ (UID:${FTP_UID}, GID:${FTP_GID})"
|
||||
echo " ├── prometheus/ (UID:${PROMETHEUS_UID}, GID:${PROMETHEUS_GID})"
|
||||
echo " ├── grafana/ (UID:${GRAFANA_UID}, GID:${GRAFANA_GID})"
|
||||
echo " └── etc/ (UID:${FTP_UID}, GID:${FTP_GID})"
|
||||
echo ""
|
||||
echo "您现在可以运行 'docker-compose up -d' 来启动所有服务"
|
||||
|
||||
Reference in New Issue
Block a user