Commit Graph

1063 Commits

Author SHA1 Message Date
digimer
fcbace6713 Updated anvil-join-anvil to hold if either node is still running anvil-configure-host
* Fixed a minor bug and added logging of maintenance_mode calls in anvil-configure-host.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-28 16:01:32 -04:00
digimer
e480337239 Fixed wait loop for subnodes
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-28 11:47:48 -04:00
digimer
582a8b292c Added more job updates to anvil-manage-power.
* This is a test to see if the job waiting for the uptime to be 300s,
  leaving the job_progress as 0, was causing the job to be repeatedly
  called.
* This is related to issue #479

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-28 01:19:52 -04:00
digimer
5b286f2696 Added missing switch reading in anvil-manage-power.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-28 00:24:29 -04:00
digimer
ef042eef25 Cleaned up logging while waiting for subnodes.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-28 00:15:14 -04:00
digimer
5d5270486e Added a wait loop when forming node clusters.
* This adds a check where anvil-join-anvil waits until both subnodes are
  marked as configured and not in maintenance mode.
* Should address issue #479 (maybe, this shouldn't trigger reboots, but
  it was certainly a race condition found while investigating).

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-27 22:38:07 -04:00
digimer
d58521ceca Added screenshot capture to striker-collect-debug.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-27 11:46:56 -04:00
Digimer
745081b649
Merge branch 'main' into patch-screenshot 2023-09-22 23:28:12 -04:00
digimer
b1562e0301 * Added the new screenshot tool.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-22 17:16:19 -04:00
digimer
c039c58128 * This commit moves taking screenshots of hosted servers onto the strikers using the Sys::Virt module. This was needed because the screenshots were being taken by scan-server, and that was causing it to take a long time to run. It should never have been handled by the scan agent anyway. This update requires a WebUI fix to use the new screenshot tool. This tool also adds holding multiple screenshots to allow users to "scrub" through screenshots up to 10 hours in the past.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-22 17:15:09 -04:00
digimer
8925dabb9d * Updated anvil-shutdown-server to take the new '--immediate' switch which forces a server to shut down immediately (akin to pulling the power on a traditional machine). This is needed to allow a user to recover a crash or hung server.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-21 18:56:12 -04:00
digimer
3c9086d1f3 Fixed bugs related to running jobs.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-07 20:06:00 -04:00
digimer
e8a84e1c97 Added job handling to anvil-manage-server-storage (needs more testing though).
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-07 15:37:31 -04:00
digimer
2f429d2bc7 Fixed bugs related to adding drives and extending drives to servers.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-05 22:53:52 -04:00
digimer
e895e1f264 * Finished writting the anvil-manage-server-storage.
* Fixed handling --eject and --insert to work without a device target specified when only one exists, or to find the file path when only the file name is given.
* Updated anvil-manage-server-storage to show files when processing an optical devices without a file being passed.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-05 16:53:08 -04:00
digimer
17078347ee Reworked anvil-manage-server-storage to use the translation system.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-09-03 16:02:47 -04:00
Tsu-ba-me
adcf5ec818 fix(tools): enhance logging in access module 2023-08-21 20:57:31 -04:00
Tsu-ba-me
7845f8c170 fix(tools): correct key check in access_chain of access module
The old check evaluates the expression before determining whether the
resulting value is defined. However, when the expression refers to a
subroutine, it gets executed; if the subroutine doesn't protect against
missing parameters, it'll cause executions with bad input, i.e., the
Striker->generate_manifest subroutine without parameters.

The new check uses can(), which correctly determines whether the key
"exists" on the blessed object; although it doesn't strictly mean
"exists", but it does the job.
2023-08-21 20:50:24 -04:00
Tsu-ba-me
ee259f5a3a fix(tools): reduce UUIDv4 check strictness in access module 2023-08-21 18:59:32 -04:00
digimer
d255adc7b4 * Updated anvil-daemon to set the mode of /mnt/shared/* to 0777 during creation and to check that that mode is set for existing sub-directories. This resolves issue #443.
* Cleaned up anvil-manage-dr.8 hyphen escapes.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-08-17 22:14:40 -04:00
digimer
4c118cf3b4 * Created empty man page files all remaining tools.
* Started fixing existing man pages, and writting needed ones.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-08-11 13:55:51 -04:00
digimer
7bf7c3747c * Added anvil-file-details.8, but it's not completely written yet. Converted anvil-file-details to use the new switch loading method.
* Fixed the RC in ocf:alteeve:server to exit with 0 on notify calls, resolves issue #392.
* Fixed typo references in issue #390.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-08-10 16:21:20 -04:00
digimer
1667d1f132 * Wrote the man page for anvil-download-file, and updated it to use the new switch method. Changed it's default download directory from /mnt/shared/temp to /mnt/shared/incoming.
* Added the new man pages to the Makefile.am file.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-08-10 16:19:05 -04:00
digimer
d39b0af67b * Added support for migration networks, and wrote the man page for anvil-cycle-vm-nics.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-08-10 16:17:49 -04:00
digimer
a81a110261 * Remove forced log level and secure logging. This addresses issue #386
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-08-09 18:20:14 -04:00
digimer
a0cb791f47 This contains fixes needed for beta from additional testing.
* Updated the pcs wrapper to flock anything but status calls.
* Updated scan-apc-pdu to purge regardless of the host it's called on any host.
* Fixed a bug striker-purge-target that wouldn't purge anvil nodes in various cases.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-08-09 18:07:03 -04:00
digimer
cc71df686b Added a pcs wrapper to serialize pcs constraint calls.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-08-08 14:32:33 -04:00
Fabio M. Di Nitto
824e3e07e3 virsh: add wrapper to serialize calls to virsh list
avoid storm of virsh list that overloads libvirtd API causing
unnecessary timeouts during pcmk monitoring operations.

Resolves: https://github.com/ClusterLabs/anvil/issues/395

Signed-off-by: Fabio M. Di Nitto <fabbione@fabbione.net>
2023-08-07 08:35:08 +02:00
digimer
6ee2ad75db * Updated anvil-delete-server to actively check for and delete any drbd-fenced attributes left over in the CIB after a server is deleted. This addresses issue #374.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-25 21:45:34 -04:00
digimer
ed480cf1cb * Fixed a double-$ bug in Remote->_check_known_hosts_for_target()
* Updated striker-update-cluster to take '--timeout' and a number of seconds, or 'Xm' or 'Xh' for minutes or hourse, respectively. Also updated to show the remaining time while waiting, and added waiting timeout to the rest of the while loops that prior had no time limit. This addresses issue #383 and issue #382.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-25 19:13:41 -04:00
digimer
0471fb90ea * Upped the logging in these three tools to help diagnose run errors. To be removed before tagging beta
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-25 13:07:38 -04:00
digimer
88e8978305 * Fixed a bug where getting the job_uuid after a no-db run wouldn't actually update the job progress.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-25 12:43:28 -04:00
digimer
be290bf561 This commit fixes a bug where the drbd kernel module build was being killed mid-compile, leaving DBRD unusable.
* Created System->wait_on_dnf() which was plucked from anvil-daemon, and now also called in scancore and anvil-safe-start.
* Updated scancore and anvil-safe-start to check on start that DRBD's kernel module is available (and build if not).

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-24 22:32:41 -04:00
digimer
d68adb5b4e * Updated anvil-manage-power to not reboot if anvil-version-changes is running (which, if it's taking time, is generating new kmods).
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-24 20:44:40 -04:00
digimer
8b3d472b9c Updated striker-update-cluster to set primary_host_uuid to node 1 if not returned from Cluster->get_primary_host_uuid.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-24 19:00:19 -04:00
digimer
556e91238d * Updated Network->find_access() to clear the data from previous scans, which fixes a bug where checking multiple hosts could return stale data for the previous host.
* Updated anvil-manage-server-storage, striker-collect-debug, and striker-update-cluster to be able to find a connection on an interface when none were found on preferred networks.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-24 15:43:54 -04:00
digimer
9a5e617a2d * Test fix for the issue #379
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-24 00:22:43 -04:00
digimer
f57ab1a78c * Updated anvil-daemon to not hold jobs at startup is the host isn't configured yet.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-23 23:34:39 -04:00
digimer
66c82e5e22 * Fixed a bug in anvil-update-system where updating a single package with --reboot wouldn't request a reboot. Finished reworking it so that a check is made to see if the kernel or DRBD kmod will be updated and, if so, removes the kmod-drbd RPMs prior to doing the update (as opposed to the sloppier check-on-error method).
* Fixed a bug in System->reboot_needed() where the cache file path had a typo in the hash key.
* Updated anvil-daemon to use the full path to dnf when determining if a dnf process was running.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-23 21:43:26 -04:00
digimer
e278de4b5a The main change in this commit deals with anvil-daemon startup. During OS updates, it would pick up the queued update job and run it while the other --no-db one was still running. This could become an issue for other tasks in the future, so updated anvil-daemon to not run any jobs for the first minute after startup. Also updated it to see if an OS update is underway (given how it can start mid-RPM update, before packages like kmod-drbd are ready to build). While doing this, implemented caching of daily tasks (like agine out data, archiving data, network scans, etc) to only run once per day, period. As it was before, they would always run on anvil-daemon startup, then wait 24 hours.
Note that work has started it reworking anvil-update-system, but it is incomplete (and broken) in this commit.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-23 21:43:26 -04:00
Tsu-ba-me
714ccdb5b6 chore(tools): log start/stop pipe errors in manage vnc pipe 2023-07-23 21:43:26 -04:00
Tsu-ba-me
1f13a416b9 chore(tools): remove unused anvil-manage-tunnel; missing from d2a61da 2023-07-23 21:43:26 -04:00
Tsu-ba-me
9163cf4513 chore: remove anvil-manage-tunnel 2023-07-23 21:43:26 -04:00
Tsu-ba-me
47f7c71e95 fix(tools): stop ws with source port when target port is unavailable 2023-07-23 21:43:26 -04:00
Tsu-ba-me
99dc4ba6ba fix(tools): handle possible remnant websockify daemon wrapper 2023-07-23 21:43:26 -04:00
Tsu-ba-me
ba335cc411 fix(tools): match server vncinfo variable name 2023-07-23 21:43:26 -04:00
Tsu-ba-me
25f5c38ade chore: rename striker-manage-vnc-pipes->anvil-manage-vnc-pipe 2023-07-23 21:43:26 -04:00
Tsu-ba-me
c29041d2f7 fix(tools): start websockify as daemon, re-find its pid and ports 2023-07-23 21:43:26 -04:00
Tsu-ba-me
cb98d28eb0 fix(tools): add target host to vnc info variable 2023-07-23 21:43:26 -04:00
Tsu-ba-me
0b91ee0314 fix(tools): remove all tunnel-related tasks 2023-07-23 21:43:26 -04:00
Tsu-ba-me
084394c66f fix(tools): hoist find server vnc port 2023-07-23 21:43:26 -04:00
Tsu-ba-me
ee091d4e7b fix(tools): format output of existing tunnel 2023-07-23 21:43:26 -04:00
Tsu-ba-me
d42f202609 fix(tools): flip ports based on forward type 2023-07-23 21:43:26 -04:00
Tsu-ba-me
0210323730 fix(tools): pass tunnel list to start, stop tunnel 2023-07-23 21:43:26 -04:00
Tsu-ba-me
19f6cefd8d fix(tools): isolate prepare tunnel parents 2023-07-23 21:43:26 -04:00
Tsu-ba-me
9f8a153fe0 fix(tools): replace tilda with home path 2023-07-23 21:43:26 -04:00
Tsu-ba-me
f8e65416c4 fix(tools): correct receiving find tunnels output 2023-07-23 21:43:26 -04:00
Tsu-ba-me
1854cf4872 fix(tools): enable search full command in find tunnel parent processes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
02f89b24b1 fix(tools): pass debug level to find, start, stop tunnel in start pipe 2023-07-23 21:43:26 -04:00
Tsu-ba-me
6dbec289a1 fix(tools): treat empty tunnel list as no tunnels 2023-07-23 21:43:26 -04:00
Tsu-ba-me
3debdb846d fix(tools): start background processes with system call 2023-07-23 21:43:26 -04:00
Tsu-ba-me
b695414c86 fix(tools): improve debug hashes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
8c37b49132 fix(tools): remove extra space in find tunnel parent sed 2023-07-23 21:43:26 -04:00
Tsu-ba-me
55bc44fc6e fix(tools): correct typos in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
bedbf576ab fix(tools): correct loop over tunnel list 2023-07-23 21:43:26 -04:00
Tsu-ba-me
4de0b675f1 fix(tools): don't find when tunnel list doesn't exist 2023-07-23 21:43:26 -04:00
Tsu-ba-me
2eb96f9d10 fix(tools): reuse existing tunnels in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
834e1a568a fix(tools): improve debug log of start processes in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
7baa52e37d fix(tools): ignore mismatches when find websockify, tunnel parent processes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
41abd4f9e4 fix(tools): correct websockify command in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
75b6ab94df fix(tools): correct reversed set, delete operations in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
6906551851 fix(tools): remove repeated UUIDv4 test in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
6ec2dea741 fix(tools): correct renamed call variable in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
b1e7b0e244 fix(tools): correct input to keys in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
9431d89b61 fix(tools): correct brackets of set_ws_process in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
393782cf83 fix(tools): log inputs in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
ff7fe8b3a3 fix(tools): add missing grep path in manage vnc pipes 2023-07-23 21:43:26 -04:00
Tsu-ba-me
d192356c5a fix(tools): remove unused database connection in manage tunnel 2023-07-23 21:43:26 -04:00
Tsu-ba-me
afade80f39 fix(tools): manage all VNC pipe components on subnodes/dr 2023-07-23 21:43:26 -04:00
Tsu-ba-me
ba467ccfa7 fix(tools): manage forward list of parent connection in manage tunnel 2023-07-23 21:43:26 -04:00
Tsu-ba-me
db06747513 fix(tools): make target optional when using external parent in manage tunnel 2023-07-23 21:43:26 -04:00
Tsu-ba-me
d29dac4fa9 fix(tools): return code after port forward fails in manage tunnel 2023-07-23 21:43:25 -04:00
Tsu-ba-me
711cb5b696 refactor: rename striker-open-ssh-tunnel->anvil-manage-tunnel 2023-07-23 21:43:25 -04:00
Tsu-ba-me
40e94cda46 fix(tools): enable open parent connection, child tunnel in open ssh tunnel 2023-07-23 21:43:25 -04:00
Tsu-ba-me
f2d3b06a10 fix(tools): remove all remote calls in manage vnc pipes 2023-07-23 21:43:25 -04:00
Tsu-ba-me
6c776e5a6a fix(tools): enable remote forward in open ssh tunnel 2023-07-23 21:43:25 -04:00
digimer
b24b81c17c Removed outer double-quotes from Anvil! node description in XML usage reporting. Related to issue #321.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-23 11:02:45 -04:00
digimer
942c4c94bf Escaped double-quotes in Anvil! node descriptions when reporting usage as XML format. Should resolve issue #321.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-23 11:00:59 -04:00
digimer
9b90647cc0 Fixed a bug where the XML output was not valid.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-22 22:28:25 -04:00
digimer
d07933a31c * Updated anvil-report-usage to accept the new '--machine' which reports the usage information in XML format.
* Added the anvil-report-usage.8 man page
* Updated anvil-update-system to enable scancore when the OS update is complete.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-22 22:21:48 -04:00
digimer
01b714f3b3 Fixed typo from issue #369.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-22 20:09:13 -04:00
digimer
b0c54b6dae * Updated anvil-update-system to check if another instance of anvil-update-system is running and, if so, exit.
* Removed the new tasks from anvil-special-operations.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-22 20:03:39 -04:00
digimer
7bd76c10dc Major thing in this commit is reworking striker-update-cluster to work without expecting anvil-daemon to be running on target machines. Similarly, they had to be able to work when the Striker DBs were not available. This is to account for cases where the Striker dashboards have updated, and the schema has changed, preventing the not-yet-updated DR hosts and subnodes from being able to use the DB. To do this, anvil-safe-stop, anvil-update-system, and anvil-shutdown-server had to be updated to use the new --no-db switch, which tells then to run without the database being available.
* Updated Server->shutdown_virsh() to work without a database connection.
* Updated System->reboot_needed() to store/read from a cache file when the database is not available.
* Updated anvil-safe-start to remove the old --enable/disable/status switches, now that we use anvil-safe-start.service systemd unit.
* Reworked anvil-safe-stop to work without a database connection, and to work on DR hosts.
* Updated anvil-special-operations to add new tasks, but it's likely these new tasks aren't needed and will be removed very shortly.
* Added/updated multiple man pages.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-22 18:09:01 -04:00
digimer
541381e317 * Finished getting anvil-manage-server-storage to add new volumes to running servers.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-18 13:31:52 -04:00
digimer
afaf129733 * Updated anvil-manage-server-storage to connect the new drive to the VM. Still need to update the on-disk and in-DB definitions though.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-17 21:33:46 -04:00
digimer
de86cf88fe * Updated anvil-manage-server-storage to now handle a new volume stuck in 'Negotiating', and to do the initial sync when there are three connected peers.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-17 21:04:36 -04:00
digimer
9bc78860a6 * Updated anvil-update-system to detect kmod-drbd upgrade problems and fix them.
* Updated striker-update-cluster and anvil-update-system to take '--reboot' to request a reboot if any packages are updated.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-16 20:45:47 -04:00
digimer
f262da544d Removed '--best --allowerasing' from dnf update.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-16 00:18:29 -04:00
digimer
d741f4aa6f * Updated anvil-daemon to not exit on high RAM use is any job is running.
* Updated anvil-update-system to reboot a target whose kernel updated using an anvil-manage-power job,
* Started making striker-update-cluster run as a job (not at all complete). Fixed a bug where the wrong IP was being used when finding access to a target.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-15 22:23:30 -04:00
digimer
751687129a * Updated anvil-daemon to not exit on RAM use if anvil-update-system is running.
* Fixed a bug in anvil-safe-stop where it wouldn't trigger a migration when the peer is online.
* Updated anvil-update-system to set job_data to 'failed' and exit with rc 4 if the os update failed.
* Got striker-update-cluster to error out and exit if a called 'anvil-update-system' job failed.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-15 16:23:38 -04:00
Digimer
c1e4380a64
Merge branch 'main' into anvil-tools-dev 2023-07-15 00:06:49 -04:00
digimer
02c3d204ea * Updated anvil-update-system to set 'job_data' to track reboots, and striker-update-cluster to read it.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-14 22:52:51 -04:00
digimer
3016fb875b * Reworded striker-update-cluster to use anvil-update-system for on-system OS updates.
* Updated DRBD->get_status() to take the new 'host' paramter to allow the caller to define the hash key string used in the stored data.
* Updated Get->anvil_version() (and a few other places) to use the new 'striker-ui-api' shell user, replacing the 'apache' user.
* Updated Remote->test_access() to take the new 'close' parameter to close the SSH session used when testing access to the target.
* Fixed a logging bug in anvil-manage-power.
* Updated anvil-update-system to take the '--no-reboot' and 'clear-cache' command line switches.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-14 22:29:07 -04:00
Tsu-ba-me
4f46bb43eb fix(tools): remove server screenshot fetching in anvil-daemon 2023-07-13 01:54:04 -04:00
Tsu-ba-me
b549ff2c1f fix(tools): reduce unnecessary operations in anvil-get-server-screenshot 2023-07-13 00:40:39 -04:00
Tsu-ba-me
4647062111 fix(tools): set script source in anvil-access-module 2023-07-12 18:24:21 -04:00
digimer
d56b7f9a84 * Created (but not finished!) the new striker-update-cluster tool.
* Updated Cluster->get_primary_host_uuid() to only load anvils if not already loaded.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-07 17:54:57 -04:00
digimer
3215e178ef * Updated striker-collect-debug to support '--output-file /path/to/file.tar.bz2'.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-06 13:02:59 -04:00
digimer
a7ebe45f76 This adds the new 'striker-collect-debug' tool that collects all potentially useful debug info into a single tarball.
* Fixed a bug in Get->anvil_from_switch() to work when the Anvil! name is passed.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-07-05 21:04:05 -04:00
Tsu-ba-me
d95eb699f9 chore: disable web VNC, screenshot pieces to avoid libvirt deadlock 2023-07-05 17:06:11 -04:00
Tsu-ba-me
54197a2f2c fix(tools): wrap guest name with quotes when get vncdisplay in manage vnc pipes 2023-07-03 04:46:07 -04:00
Tsu-ba-me
64093d42a0 fix(tools): allow pass libvirt domain XML info to manage vnc pipes 2023-07-03 04:46:06 -04:00
Tsu-ba-me
d64e5ff17f chore(tools): hide open all components in manage vnc pipes 2023-07-03 04:46:06 -04:00
Tsu-ba-me
d9d0244f3f docs(tools): identify most variable outputs in manage vnc pipes 2023-07-03 04:46:06 -04:00
Tsu-ba-me
ce637cbf71 fix(tools): select 0/1 ws instance for given server 2023-07-03 04:46:06 -04:00
Tsu-ba-me
be82c6e267 fix(tools): print forward port after open SSH tunnel in manage vnc pipe 2023-07-03 04:46:06 -04:00
Tsu-ba-me
a48c6997fe fix(tools): include server host UUID when open VNC SSH tunnel 2023-07-03 04:46:06 -04:00
Tsu-ba-me
ecaa38cfd1 fix(tools): add multiple repairs to manage-vnc-pipes
* ensure valid server UUID with pattern
* allow specify known server host UUID
* combine server UUID and server host UUID (a.k.a. ws host UUID) as
  unique record in table
* remove unnecessary checks for ws source port
2023-07-03 04:46:06 -04:00
Tsu-ba-me
b92627dd5d fix(tools): simplify kill logic in manage-vnc-pipes 2023-07-03 04:46:06 -04:00
Tsu-ba-me
a7b2f7c9e1 fix(tools): pass server vnc port as flag in manage-vnc-pipes 2023-07-03 04:46:06 -04:00
Tsu-ba-me
17bef8b415 fix(tools): allow manage-vnc-pipes to accept server name 2023-07-03 04:46:06 -04:00
Tsu-ba-me
324bbaf141 fix(tools): always end with nice exit in open-shh-tunnel 2023-07-03 04:46:06 -04:00
Tsu-ba-me
8da4033607 fix(tools): separate open/close websockify and ssh tunnel 2023-07-03 04:46:06 -04:00
Tsu-ba-me
9457986659 fix(tools): simplify accessing switches in manage-vnc-pipes 2023-07-03 04:46:06 -04:00
Tsu-ba-me
bf0e75109f fix(tools): simplify selection between local/remote call in manage-vnc-pipes 2023-07-03 04:46:06 -04:00
Tsu-ba-me
d98df4b2a4 fix(tools): isolate non-striker tasks in anvil-daemon 2023-07-03 04:46:06 -04:00
Tsu-ba-me
560d60c7e8 fix(tools): get server screenshots every minute and punt to strikers WIP 2023-07-03 04:46:06 -04:00
Tsu-ba-me
ffd41b1dfa fix(tools): enable anvil-get-server-screenshot to send screenshot to multiple hosts 2023-07-03 04:46:06 -04:00
digimer
bf1ccc8bee * Finally got the creation of new DRBD volumes under existing resources work!
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-30 22:36:27 -04:00
digimer
1b8b0bc493 * Created the new 'anvil-manage-server-storage' with the first role of reload a DRBD resource.
* Updated Remote->call() to remove the 'background' parameter as it wasn't working.
* Updated anvil-manage-server-storage to use 'anvil-manage-server-storage' to adjust resources in a way that doesn't block.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-30 21:02:30 -04:00
digimer
7fbed10864 * Updated Remote->call() to take the new 'background' parameter.
* Continues work on adding new disks (DRBD volumes) to anvil-manage-server-storage.
* Updated DRBD->get_status() to record the peer-role.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-29 22:17:58 -04:00
digimer
ea95d26cc5 * Fixed a bug in DRBD->get_next_resource() where reserved minor numbers were not being released. Also added a new parameter, "minor_only", that returns the next minor number but doesn't bother processing TCP ports.
* Did more work on adding support for adding new disk drives to servers in anvil-manage-server-storage.
* Updated anvil-manage-storage-groups To check for / delete duplicate storage groups with the same name.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-26 23:55:19 -04:00
digimer
88cc76914d This is an attempt to fix issue #341. It replaces the search for SN IPs from Network->find_matches() to Network->find_access(). The later of which doesn't care about the interface the IP was found on.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-24 21:24:37 -04:00
digimer
e0316da88b * Got anvil-manage-server-storage working enough to grow existing disk's hard drive sizes, and to insert/eject optical disks.
* Hit a bug where a server's definition file was written to disk while not being valid. Added logging in case it happens again, and additional safe-guards to help avoid it from recurring.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-23 23:09:55 -04:00
digimer
376660a120 * Removed the EXTRA_DIST argument from tools/Makefile.am
* Added a sanity check that a valid optical device was passed to anvil-manage-server-storage

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-22 21:20:10 -04:00
digimer
7a32d219fc Removed the old watch_drbd tool and added the new anvil-watch-drbd to the Makefiles.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-22 20:47:24 -04:00
digimer
1d12fb32b4 * Completed the new anvil-watch-drbd which replaces watch_drbd.
* Updated Email->get_current_server() to always load mail server data from the database.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-22 20:43:46 -04:00
digimer
336699a0f2 Added logging to help debug a DRBD resource config issue related to finding matching SN IPs.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-21 10:29:44 -04:00
Digimer
8f491e01ed
Merge branch 'main' into anvil-tools-dev 2023-06-20 20:00:10 -04:00
digimer
0aa72498db * This adds the new tool 'striker-check-machines' which simply walks through all known physical machines and checks to see if they're accessible and powered on.
* Updated Get->uptime() to work on remote targets.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-20 19:57:21 -04:00
digimer-bot
82114120be
Merge branch 'main' into build-login 2023-06-20 10:47:38 -04:00
Tsu-ba-me
8a8b2cbc4b fix(tools): identify line(s) with UUID in interactive/script anvil-access-module 2023-06-20 00:48:21 -04:00
Tsu-ba-me
fe9c4a758f docs(tools): explain the interactive/script function of anvil-access-database 2023-06-20 00:48:21 -04:00
Tsu-ba-me
b494f79ffe fix(tools): anvil-access-module: default interactive, handle non-existing on class object 2023-06-20 00:48:21 -04:00
Tsu-ba-me
d9bc73ec2d feat(tools): add script capability to anvil-access-module 2023-06-20 00:48:21 -04:00
digimer
c9e11fbbfc * Added checks to anvil-provision-server to fail out if either of the SN IPs are not found when generating a DRBD resource config.
* Added logging to anvil-provision-server and anvil-daemon to try to find the cause of jobs being re-run after completing. May have fixed with a fix to job_progress updates going to 100 too early in some cases.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-19 21:44:45 -04:00
digimer
156a0ca201 Updated anvil-daemon's new job launching logic to allow the restart of a running job that failed out early.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-16 11:43:49 -04:00
digimer
cc15eca6fb * Added anvil-watch-power to git.
* Added a check to cleanup size input to Convert->human_readable_to_bytes() when passed pre-processed strings.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-15 21:35:42 -04:00
digimer
47f7a35df3 The main purpose of this commit is to add serial execution of similar jobs to help reduce race conditions for scripted jobs, like multiple server creation.
* Fixed a small logging bug in DRBD->allow_two_primaries().
* Updated Database->get_jobs() to record jobs sorted by modified_date so that jobs can be run in the order they were recorded.
* Updated anvil-daemon to track which commands need to be run, and when two or more of the same command need to be run, they're run serially, with each subsequent run starting after the previous one completes.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-15 21:13:53 -04:00
digimer
38d088a998 * Added anvil-watch-power to the makefile.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-15 10:17:02 -04:00
digimer
b6a249d5e7 * Updated Cluster->add_server() to set the preferred host based first on if the server is running on a node, and if not, on the primary node (where before it defaulted to node 1).
* Updated DRBD->delete_resource() to call scan-drbd and scan-lvm to ensure that the database is updated with the newly freed resources.
* Updated anvil-delete-server and anvil-provision-server to call select scan agents to ensure freed resources are immediately recorded.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-11 23:46:21 -04:00
digimer
5bb1c631cf * Updated anvil-delete-server to accept '--server' and '--force' to allow direct deletion of a server without interacting with the menu system.
This partially addresses issue #321.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-06 16:23:28 -04:00
digimer
bc3d04ad2e * Updated Cluster->add_server() to wait up to 15 seconds for a server to appear to ensure that the pcs call to add the server with the right requested running state.
* Updated Cluster->recover_server() to set the desired recovery state before calling the crm_resource refresh.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-06-06 14:34:02 -04:00
digimer
284a2957d6 * Fixes issue #329; When multiple attributes exist when checking if we're in maintenance mode in fence_pacemaker, the expected hash reference was actually an array reference.
* Fixed a bug in anvil-version-changes where update_file_location_ready() needed to be called before update_file_locations().
* Added a bit more logging for future debugging.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-05-08 15:03:29 -04:00
digimer
8f375c58a9 * Fixed a typo in anvil-daemon that prevented compiling.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-05-04 11:14:23 -04:00
digimer
110dceb55e * Added a check to make sure files were ready before provisioning a server.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-05-04 01:15:08 -04:00
digimer
c50a1936c0 * This adds the new 'file_locations' -> 'file_location_ready' column and associated methods. This is set to TRUE/1 when the file referenced is found on disk and it is the expected size and md5sum. This is meant to allow programs to wait/watch or a file to be ready if they need to use it. Files are now checked periodically via anvil-daemon.
* Removed hard-coded log levels in anvil-provision-server and anvil-manage-storage-groups.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-05-04 00:05:56 -04:00
digimer
1bba56a5b1 Hard coded anvil-provision-server to log level 2 while chasing a race condition is storage groups.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-05-01 10:54:51 -04:00
digimer
9a58f4d1ff * This is a small commit to increase logging while chasing down a race condition issue with assembling storage groups.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-30 19:47:58 -04:00
digimer
895f1ec262 This fixes a race condition when multiple servers are provisioned at (nearly) the same time.
* In DRBD->get_next_resource(), implemented a "hold" system where the DRBD minor and TCP port(s) returned are marked as being held for one minute. So subsequent calls won't use the same numbers.
* In anvil-daemon, added a check in run_jobs() where only one instance of a given job command will be started per 2-second loop. This should help reduce the chance of simultaneous race confitions in general.
* Removed from anvil-provision-server and most other tools the call to Job->get_job_uuid(). If the program is called without the job_uuid, don't try to find it. This allows a human (or script) to make repeated calls to a program without one of those calls running a pending job instead.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-28 00:19:53 -04:00
digimer
c11be1ad1a Added a skip to ignore dot files when looking at new files.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-19 12:36:05 -04:00
digimer
dc7b909bfc More logging to debug storage group race condition
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-18 19:14:59 -04:00
digimer
bd575c6a7d Bumped logging for storage group management.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-18 19:02:51 -04:00
digimer
0874ad571a Updated anvil-safe-start to not give up on starting corosync/pacemaker if it fails on the first try.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-18 14:33:58 -04:00
digimer
8ba613952c Typo fix.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-18 12:32:52 -04:00
digimer
83a527f4fa * Removed enabling anvil-safe-start out of the RPM and into anvil-join-anvil.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-18 11:18:42 -04:00
digimer
f086c1be39 Fixed a bug where the total RAM was shown instead of the free RAM.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-14 13:02:50 -04:00
digimer
fdf49c696f Updated anvil-report-usage to ignore deleted servers. Also added a check to ensure hosts are loaded if not.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-14 12:23:21 -04:00
digimer
fb70836126 This moves the call of anvil-safe-start out of scancore and into a new, dedicated systemd unit that runs on boot only.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-12 22:26:15 -04:00
digimer
9bf0f50084 Added a check to see if the server's UUID exists and looping if not to prevent unitialized variable warnings.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-09 23:38:39 -04:00
digimer
1c274ba58d * Fixed a bug in anvil-delete-server that was preventing the complete deletion of a server if the DRBD resource had already been removed.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-04-03 12:40:58 -04:00
digimer
ddc6965b60 * Fixed a bug where references to files on Anvil! nodes was broken in anvil-provision-server and anvil-manage-files.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-03-30 17:33:49 -04:00
digimer
efebd135eb * Removed more references to 'dr1_host_uuid' from the old way of linking DR hosts to Anvil! nodes.
* Fixed a bug where servers protected by DR hosts aren't deleted when the server itself is deleted.
* Updated DRBD->delete_resource() to remove the server's XML file if the host is a DR host.
* Updated anvil-version-change and anvil.sql to enable update_audits and the audits table.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-03-30 12:50:44 -04:00
digimer
8ff40ec42c * Fixed a SQL query bug in Database->get_drbd_data().
* Got more work done on anvil-manage-server-storage; Now shows DRBD resource size, backing LV and size, and calculates/displayes metadata size.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-03-26 02:09:52 -04:00
digimer
040bc02e26 * This adds the new Database->get_drbd_data() that, like ->get_lvm_data, collates the DRBD data collected by scan-drbd into more readibly parsable data structure.
* Updated DRBD->parse_resource() to add references to a resource name and volume for a given backing disk.
* Comtinued work on anvil-manage-server-storage.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-03-24 19:45:47 -04:00
Fabio M. Di Nitto
b75512e540 virt-install should not --wait on VM to be provisioned
Resolves: https://github.com/ClusterLabs/anvil/issues/277

Signed-off-by: Fabio M. Di Nitto <fabbione@fabbione.net>
2023-03-24 01:27:15 -04:00
digimer
8e0e51544c * Continued work on anvil-manage-server-storage.
* Created the new Database->get_lvm_data to compile LVM data from scan-lvm
* Updated DRBD->parse_resource to call Database->get_lvm_data if needed, and to track backing devices to Storage Groups.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-03-22 22:57:26 -04:00
digimer
b144976853 This resolves Issue #310.
* Updated Database->get_file_locations() to record files available on Anvil! nodes by tracking hosts in Anvil! systems (needed after reworking how DR hosts are linked).
* Updated Get->available_resources() to call Database->get_files() and ->get_file_locations() to restore tracking files available on Anvil! nodes.
* Fixed a couple display bugs in anvil-provision-server when called with --ci-test --options.
* Continued work on anvil-manage-server-storage.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-03-20 23:43:40 -04:00
digimer
fea10e5bb1 * Prefixed all 'virsh' calls with 'setsid --wait' to help prevent future hangs if the call happens without a shell.
* Updated anvil-manage-server-storage to the point where it can now insert and eject optical disks!
* Updated System->call to log parameters if 'shell_call' isn't set.
* Fixed a bug in anvil-manage-server process_interactive where an $anvil->data reference was being scoped.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-03-03 14:42:28 -05:00
digimer
147f31aeeb * Added a loop when calling 'anvil-change-password' in a loop as there appears to be an unknown condition where during setup, this is called but never actually runs.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-02-22 18:37:13 -05:00
digimer
ab3e8afe6e Fixed a bug in Storage->push_file() where file path wasn't updated from incoming to files, preventing the push to other hosts from working. Also fixed a minor issue where the file size was sometimes 0, making transfer calculations useless.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-02-22 13:21:29 -05:00
Digimer
d59034a488
Merge branch 'main' into anvil-tools-dev 2023-02-22 02:21:50 -05:00
digimer
254f7ef4e2 This should fix the tracking of what files belong where, using the new DR links system. It also should finish (though testing is still needed) the serial rsync issue.
* Created Database->track_files() as a dedicated method as trying to verify the existence of file_locations during Database->load_anvils() was fragile and prone to recursive loops.
* Updated Database->insert_or_update_file_locations() to take an anvil_uuid and recursively call for each host, to maintain compatibility with the old ways, and make it simpler to add an entry for both sub-nodes in an Anvil!.
* Created Storage->push_file() that takes a file and rsync's it to all other machines, or creates a job for the file to be pulled if the target can't be accessed.
* Updated anvil-manage-files and anvil-sync-shared to use the new Storage->push_files and Database->track_files methods.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-02-22 02:13:19 -05:00
digimer
645f54ab89 This commit has more changes than I would normally like, but it's all linked to changing file uploads to rsync serially.
* To update file handling for the new DR host linking mechanism, file_locations -> file_location_anvil_uuid was changed to file_location_host_uuid.
  This required a fair number of changes elsewhere to handle this, with a particular noted change to Database->get_anvils() to look at host_uuid's for the subnodes in an Anvil! and, if either is marked as needing a file, make sure the peer is as well. Similarly, any linked DRs are set to have the file as well.
* Created a new Network->find_access that simply takes a target host name or UUID, and it returns a list of networks and IPs that the target can be accessed by.
* Updated Network->load_ips() to find the network interface being used for traffic so that things like the interface speed can be recorded, even when an IP is on a bridge or bond.

Unrelated, but in this commit, is a restoration of calling scan agents with a timeout now that the virsh hang issue has been resolved.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-02-14 02:29:40 -05:00
digimer
7710d9d109 * Created the new anvil-manage-server-storage tool which will specifically handle managing a server's disks.
* Created DRBD->parse_resource() to pass a specific DRBD resource's XML data.
* Fixed a bug in Get->available_resources() so that if the threads is lower than CPU cores, the cores are used as the total available to VMs.
* Fixed bugs in Get->server_from_switch() where it just wasn't working properly.
* Updated scan_drbd to not reset a resource's size to 0-bytes when a resource goes offline.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-02-03 22:05:34 -05:00
Tsu-ba-me
58d09cb08c fix(tools): make server screenshot write to named pipe non-blocking 2023-02-02 23:18:26 -05:00
Tsu-ba-me
eb561d6d39 fix(tools): always send to pipe when given request host 2023-02-02 19:21:56 -05:00
Tsu-ba-me
3802c72912 fix(tools): check server state before getting screenshot 2023-02-02 18:25:33 -05:00
Tsu-ba-me
a9cc123300 fix(tools): exit at end of anvil-get-server-screenshot 2023-02-02 17:11:56 -05:00
digimer
9751c883cb * Updated Cluster->assemble_storage_groups() to remove refrences to anvil_dr1_host_uuid. Also added the logic for auto-adding DR host's VGs to a storage group. Commented it out though as, for now, this might be a bad idea. Needs more thought.
* Fixed a bug in Database->get_storage_group_data() to load hosts data when needed. Also fixed a bug where new members didn't return the new storage_group_member_uuid.
* Updated anvil-manage-host to use the new switch handler.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-02-01 23:19:38 -05:00
digimer
7773e5f9b8 * Updated logging in DRBD->get_devices().
* Added a check and exit if anvil-manage-dr is asked to protect a server on a machine that doesn't know about that server.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-01-30 11:30:36 -05:00
digimer
56cf100b09 * Added a check to ensure a storage group actually exists before trying to present it to the user. This should resolve issue #299.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-01-22 11:08:55 -05:00
digimer
695b274d78 * Fixed a bug in anvil-provision-server wasn't loading the available OS list when provisioning servers. The should resolve issue #296.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-01-20 23:47:04 -05:00
digimer
053e5312e1 * Fixed a bug in anvil-manage-dr where protect jobs with multiple potential targets wouldn't know which to use during job runs.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-01-20 22:51:21 -05:00
digimer
e9f390b65b * Udated RPM spec to add new core requires and add calling 'anvil-version-changes' to core's %post.
* Added missing man pages and the new anvil-manage-storage-groups to the Makefile.am's.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-01-20 22:24:24 -05:00
digimer
e012d6016c Tha major point of this commit is to add the new 'anvil-manage-storage-groups' program that, well, manages storage groups.
* Updated the storage_group_members table to add the 'storage_group_member_note' that can be set to 'DELETED' to track when a member is deleted. Updated anvil-version-changes to check for and add this column as needed. Updated the anvil.sql schema for the same.
* Updated Cluster->insert_or_update_storage_group_members to add the new column.

Signed-off-by: digimer <mkelly@alteeve.ca>
2023-01-20 22:10:15 -05:00
digimer
355e5c2c0a * More work done on anvil-manage-dr. It now properly validated a dr host.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-01-20 00:11:35 -05:00
digimer
f8743a7435 * Further work on anvil-manage-dr. Now properly sanity checks that a valid server is passed.
Signed-off-by: digimer <mkelly@alteeve.ca>
2023-01-19 22:14:17 -05:00
digimer
1a217d21cf * Updated anvil-manage-dr to provide the ability to link anvil nodes to dr hosts. Also began work on making it work with the new DR links system.
* Created Database->get_anvil_uuid_from_string(), Database->get_host_uuid_from_string() and Database->get_server_uuid_from_string() to simplify the process of converting --anvil <string>, --host <string> and --server <string> respectively.
* Fixed bugs in Database->get_dr_links() and Database->insert_or_update_dr_links().
* Updated Database->insert_or_update_states() to make direct calls to hosts instead of using get_hosts to drop out if a host_uuid doesn't yet exist in a DB.

Signed-off-by: digimer <digimer@gravitar.alteeve.com>
2023-01-19 19:41:02 -05:00
digimer
16fc4e131c * Fixed a bug where, if a specific request to do a DB resync was made but the active_uuid wasn't matching the host, it wouldn't resync. This broke peering Strikers when the peer source was not the active_uuid.
* Updated anvil-manage-dr to check and delete duplicate dr_link entries.

Signed-off-by: digimer <digimer@gravitar.alteeve.com>
2023-01-18 22:53:15 -05:00