docker 方式安装部署禅道zentao(六)
·
#配置计划任务
10 5 * * * sh /data/backup/backup.sh
#backup.sh
#!/bin/bash
ZT_DATA_DIR=/data/zentao
CUR_DATE=`date +%Y%m%d`
ZT_BACKUP_DIR=/data/backup/zentao
MYSQL_BACKUP_DIR=/data/backup/mysql
function check_bak(){
echo $1
sum=`ls -l $1 | wc -l`
if [[ $sum -gt 5 ]];then
find $1 -type f -ctime +5 | xargs rm -f {} \;
else
echo "$1 file num lt 5, nothing to do";
fi
}
function bak_zentao(){
check_bak $ZT_BACKUP_DIR
cd $ZT_DATA_DIR
tar -czf $ZT_BACKUP_DIR/zentao_$CUR_DATE.tar.gz *
sshpass -p "User123" scp $ZT_BACKUP_DIR/zentao_$CUR_DATE.tar.gz user@192.168.0.155:/mnt/DiskPool/user/meta/zentao
}
function bak_mysql(){
check_bak $MYSQL_BACKUP_DIR
mysqldump -h 192.168.102.239 -u root -B zentao -pX > $MYSQL_BACKUP_DIR/zentao_$CUR_DATE.sql
cd $MYSQL_BACKUP_DIR
tar -czf mysql_$CUR_DATE.tar.gz zentao_$CUR_DATE.sql
rm -f $MYSQL_BACKUP_DIR/zentao_$CUR_DATE.sql
sshpass -p "User123" scp $MYSQL_BACKUP_DIR/mysql_$CUR_DATE.tar.gz user@192.168.0.155:/mnt/DiskPool/user/meta/zentao
}
bak_zentao
bak_mysql
#配置计划任务,告警检测
#alert add by mengshiye 2023.02.22
02 */4 * * * cd /data/alert;/bin/bash zendao_alert.sh >>/dev/null 2>&1
zendao_alert.sh
#!/bin/bash
isok="`ps -ef|grep -v grep |grep -iE "(/usr/sbin/apache2|/usr/sbin/mysqld|nginx: master)"|wc -l`"
if [[ $isok -gt 10 ]]
then
exit 1
fi
content="服务异常"
time3=$(date "+%Y-%m-%d-%H:%M:%S")
Project="禅道服务"
IP="`ifconfig ens33|grep -w inet|awk '{print $2}'`"
HostName="`hostname`"
#echo $HostName
content="【项目】${Project}\n【主机名称】${HostName}\n【IP地址】${IP}\n【通知内容】${content}\n【时间】$time3"
#echo "warn content is : $content"
#exit 1
#飞书机器人webhook 地址
api=https://open.feishu.cn/open-apis/bot/v2/hook/X
curl -X POST \
$api \
-H 'Content-Type: application/json' \
-d '{
"msg_type": "post",
"content": {
"post": {
"zh_cn": {
"title": "内网-告警通知",
"content": [
[
{
"tag": "text",
"text": "'$content'"
}
],
[
]
]
}
}
}
}'
更多推荐
所有评论(0)