自动化运维平台-Spug-Demo
2022-01-18 本文已影响0人
任未然
一. 概述
Spug 面向中小型企业设计的轻量级无 Agent 的自动化运维平台,整合了主机管理、主机批量执行、主机在线终端、文件在线上传下载、应用发布部署、在线任务计划、配置中心、监控、报警等一系列功能。
本文只是简单实现部署和部分功能试用,更多内容请查阅官方文档
Spug官方文档
官方github地址
二. docker部署
2.1 拉取镜像
docker pull registry.aliyuncs.com/openspug/spug
2.2 启动容器
# 持久化存储启动命令:
# /spug 指的是映射本地的磁盘路径,也可以是其他目录,/data是容器内代码和数据初始化存储的路径
docker run -d --restart=always --name=spug -p 9999:80 -v /spug:/data registry.aliyuncs.com/openspug/spug
2.3 初始化账号密码
docker exec spug init_spug admin 123456
创建一个账号:admin , 密码: 123456
2.4 打开网页localhost:9999
image.png
三. 简单实现应用发版功能
3.1 添加主机
image.png image.pngimage.png填完信息点击[验证],有弹出框填写密码
image.png
3.2 新建一个应用
image.png image.png image.png image.png image.png注意:这里[构建配置]的命令是在部署Spug的服务器上执行,暂时不填
image.png# 复制脚本
cp /data/www/jar.sh ./
# 刷新配置
source /etc/profile
# 打包
mvn clean package
# 移动包
mv ./target/Start-Spring-Boot-0.0.1-SNAPSHOT.jar ./
# 删除target
rm -rf target
=====================================================
# 启动
sh ./jar.sh stop
sh ./jar.sh start
注意:这里[发布配置]命令在目标服务器上执行
附: 启动sheel脚本: jar.sh
set +e
source /etc/profile
PROJECT_NAME=$(cd "$(dirname "$0")";pwd)
jar_file=$(ls ${PROJECT_NAME}/*.jar)
mkdir -p ${PROJECT_NAME}/dump
if [ `echo ${jar_file} | xargs -n1 | wc -l` -eq 1 ];then
APP_NAME=${jar_file}
else
echo 'ERR: Twee fles pakkette word nie toegelaat nie.'
exit 2
fi
# help
usage() {
echo "Usage: sh jre.sh [start|stop|restart|status]"
exit 1
}
# check pid
is_exist() {
pid=`ps -ef | grep $APP_NAME | grep java | grep -v grep | awk '{print $2}' `
if [ -z "${pid}" ]; then
return 1
else
return 0
fi
}
# Start
start() {
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is already running. pid=${pid} ."
else
cd ${PROJECT_NAME}
nohup java -jar $APP_NAME &>logs.out &
fi
}
# Stop
stop() {
is_exist
if [ $? -eq "0" ]; then
kill -9 $pid
else
echo "${APP_NAME} is not running"
fi
}
# Status
status() {
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is running. Pid is ${pid}"
else
echo "${APP_NAME} is not running."
fi
}
# Restart
restart() {
stop
start
}
# run
case "$1" in
"start")
start
;;
"stop")
stop
;;
"status")
status
;;
"restart")
restart
;;
*)
usage
;;
esac
3.3 新建一个发布版本
image.png image.png image.png image.png image.png四. 主机在线终端
打开网址localhost:9999/ssh