- 博客/
PVE AutoSnap 工具使用

作者
Johny
熟练的 云原生搬砖师
Table of Contents
项目介绍#
安装和使用#
wget https://github.com/Corsinvest/cv4pve-autosnap/releases/download/v1.14.8/cv4pve-autosnap-linux-x64.zip
unzip cv4pve-autosnap-linux-x64.zip
mv cv4pve-autosnap /usr/bin/
chmod a+x /usr/local/bin/cv4pve-autosnap
使用#
备份快照
SNAP_LIST="111,101" PVE_USER='root@pam' PVE_PASSWD='xxx' PVE_HOST='192.168.8.19' for vmid in ${SNAP_LIST//,/ };do cv4pve-autosnap --host=${PVE_HOST} \ --username=${PVE_USER} \ --password=${PVE_PASSWD} --vmid=${vmid} \ snap --label=daily --keep=3 done
查看快照
SNAP_LIST="111,101" PVE_USER='root@pam' PVE_PASSWD='xxx' PVE_HOST='192.168.8.19' cv4pve-autosnap --host=${PVE_HOST} \ --username=${PVE_USER} \ --password=${PVE_PASSWD} \ --vmid=111 status
与 Gitlab 集成#
Script.pve-snap 文件如下
# Script.pve-snap 文件如下 #!/bin/bash #Filename: Script.pve-snap #Revision: v1 #Date: 2023/9/25 #Author: yangzun #Email: yangzun@treesir.pub #Description: PVE VM SNAPSHOT SNAP_LIST=${SNAP_LIST-'101'} PVE_USER=${PVE_USER-'root@pam'} PVE_PASSWD=${PVE_PASSWD-'12345'} PVE_HOST=${PVE_HOST-'192.168.8.19'} function install_autosnap(){ wget https://github.com/Corsinvest/cv4pve-autosnap/releases/download/v1.14.8/cv4pve-autosnap-linux-x64.zip unzip cv4pve-autosnap-linux-x64.zip mv cv4pve-autosnap /usr/bin/ chmod a+x /usr/bin/cv4pve-autosnap } if [ "${1}" == 'exec' ];then install_autosnap for vmid in ${SNAP_LIST//,/ };do cv4pve-autosnap --host=${PVE_HOST} \ --username=${PVE_USER} \ --password=${PVE_PASSWD} --vmid=${vmid} \ snap --label=daily --keep=3 done elif [ "${1}" == 'plan' ];then install_autosnap for vmid in ${SNAP_LIST//,/ };do cv4pve-autosnap --host=${PVE_HOST} \ --username=${PVE_USER} \ --password=${PVE_PASSWD} --vmid=${vmid} \ status done fi
CI 文件如下
variables: extends: .default_vars # Run test job always .plan: stage: plan extends: - .schedule_trigger_disble # Run build job only on a default branch when triggered manually .exec: stage: exec extends: - .master_schedule_manual_trigger .extends_group: extends: - .runner_tag - .harbor_auth_vars - .load_function_before_jobs - .script_exec_vars - .nexus_auth_vars .plan_script: &plan_script extends: - .plan - .extends_group script: - set -- $CI_JOB_NAME - chmod a+x Script.$1 - ./Script.$1 plan .exec_script: &exec_script extends: - .exec - .extends_group script: - set -- $CI_JOB_NAME - chmod a+x Script.$1 - ./"Script.$1" exec # 预运行脚步 pve-snap plan: *plan_script # 执行脚步 pve-snap exec: *exec_script
相关文章
Istio in Action 学习笔记
·40593 字·82 分钟·
Istio
Istio
ServiceMesh
站点开始使用 Grafana loki 统计分析
·4828 字·10 分钟·
Loki
SRE
DevOps
Logging
Gitea Actions ActRunner 基于 Systemd 部署安装
·897 字·2 分钟·
SRE
DevOps
linux
Sonatype Nexus Repository(Nexus3) 私服文件下载至本地 - (使用进阶篇 一)
·729 字·2 分钟·
SRE
nexus3
DevOps
K8S 使用 CronJob 备份 MySQL 数据至 MInIO
·527 字·2 分钟·
SRE
backup
mysql
Linux 使用 LVM 来扩充分区
·143 字·1 分钟·
SRE
linux
lvm