基于gocron任务管理建设
1. 基础环境配置
golang安装
下载
wget https://dl.google.com/go/go1.21.6.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
2. 下载gocron组件
wget https://github.com/ouqiang/gocron/releases/download/v1.5.3/gocron-v1.5.3-linux-amd64.tar.gz
wget https://github.com/ouqiang/gocron/releases/download/v1.5.3/gocron-node-v1.5.3-linux-amd64.tar.gz
[root@filebackup software]# tar -zxvf gocron-v1.5.3-linux-amd64.tar.gz
gocron-linux-amd64/
gocron-linux-amd64/gocron
[root@filebackup software]# tar -zxvf gocron-node-v1.5.3-linux-amd64.tar.gz
gocron-node-linux-amd64/
gocron-node-linux-amd64/gocron-node
[root@filebackup software]#
3. gocron配置
创建数据库和用户
创建数据库
CREATE DATABASE gocron DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_unicode_ci;
创建用户
CREATE USER 'gocron'@'%' IDENTIFIED WITH mysql_native_password BY '123123123';
GRANT ALL PRIVILEGES ON gocron.* to 'gocron'@'%';
4. 配置节点
nohup /data/myapp/gocron/gocron-node -allow-root > /tmp/gocron-node.log 2>&1 &
5. 配置数据
6. 配置告警webhook
https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=123131313131
{
"msgtype": "text",
"text": {
"content" : "任务ID:{{.TaskId}}\n任务名称:{{.TaskName}}\n任务执行结果:{{.Status}}\n任务执行输出{{.Result}}"
}
}
7. 添加节点
节点名称: Filebackup
主机名:ip地址
端口:5921
8. 备份配置
MySQL 5:
/data/scripts/mysql57_backup.sh -I 1231313 -P 3306
MySQL 8:
/data/scripts/mysql8_backup.sh -I 123213 -P 3306
postgres:
/data/scripts/pg_backup.sh -I 12313 -P 5432 -D /data/myapp/postgres13
Mongodb:
/bin/bash /data/scripts/mongodb_yapi.sh -I 1123131 -P 27017 -U 1232312 -C 123
归档日志备份