Files
PBSupper/Roadmap

116 lines
4.2 KiB
Plaintext
Raw Normal View History

2026-08-08 17:45:27 +02:00
# Connect to IDRAC
# Check if power is on
# chassis power status | grep fourth element
# "Chassis Power is off"
# if turn on power
# Send Power on (ipmitool chassis power on)
# else systemPower is on, continue.
# Store current date as PWR_DATE to later compare in while loop
# Send ping to HOST every 15 seconds for 10 minutes. It can take some time for the server to start
# while PWR_DATE is less than 15 minutes compared to CURRENT_DATE, ping
# if ping successfull 3 times in a row
# break
# else, exit with error,
# exit "Host didn't start after 20 minutes. Check the server"
# SSH to HOST
# check when verification was last ran
# if not in the last LAST_VERIF_D, run verification
# Verify datastore backups
# else, backups already verified enough, continue
# continue
# check if remote exists
# proxmox-backup-manager remote list
# ┌──────┬──────────────┬──────────┬───────────────────────────────────────────┬─────────┐
# │ name │ host │ userid │ fingerprint │ comment │
# ╞══════╪══════════════╪══════════╪═══════════════════════════════════════════╪═════════╡
# │ pbs2 │ pbs2.example │ sync@pam │64:d3:ff:3a:50:38:53:5a:9b:f7:50:...:ab:fe │ │
# └──────┴──────────────┴──────────┴───────────────────────────────────────────┴─────────┘
# for each remote host in REMOTE_PBS
# if remote host not in "host" collumn from "remote list" command
# exit with "Please first add a remote to PBS"
# else
# print All passed remotes found on PBS
# Get local and remote stores
# Create backup one-shot sync job
# for syncJob in jobList
# if AUTO_ADD_NAME in comment collumn of syncJob
# remove sync-job by id
# elif
# Add sync job
# else
# idk
# run one-shop sync jobs
# for syncJob in jobList
# if AUTO_ADD_NAME in syncJob.comment
# run sync-job
# if run succesfull
# continue
# else
# print the error message to stderr
# elif AUTO_ADD_NAME not in syncJob.comment
# skipping a manually addad syncJob
# else
# either no syncJobs or something broke
# store current date as PWR_OFF_DATE
# while ongoing syncJobs or ongoing verifyJobs
# if any remaining syncJobs and verifyJobs and garbageCollect finish
# if PWR_OFF_DATE is longer than 3 hours
# brake in order to send shutdown signal nontheless
# else
# sleep for 30 seconds
# send power off signal via SSH
# if chassis power status is on after 5 minutes
# send additional "chassis power off" via ipmitool
# else
# exit 0
# proxmox-backup-manager sync-job create pbs2-local --remote pbs2 --remote-store local --store local --schedule 'Wed 02:30'
# proxmox-backup-manager sync-job update pbs2-local --comment 'offsite'
# proxmox-backup-manager sync-job list
# ┌────────────┬───────┬────────┬──────────────┬───────────┬─────────┐
# │ id │ store │ remote │ remote-store │ schedule │ comment │
# ╞════════════╪═══════╪════════╪══════════════╪═══════════╪═════════╡
# │ pbs2-local │ local │ pbs2 │ local │ Wed 02:30 │ offsite │
# └────────────┴───────┴────────┴──────────────┴───────────┴─────────┘
# proxmox-backup-manager sync-job remove pbs2-local