Commit Graph

2315 Commits

Author SHA1 Message Date
Digimer
15fd0e5ce8 * Updated anvil-daemon (and Database->insert_or_update_jobs) to now recognize jobs with the job_status of 'scancore_startup' to run only when ScanCore starts.
* Finished initial Striker setup in tools/striker-auto-initialize-all. Started working on peering.
* Cleaned up the handling of converting UIDs to user names in Remote->add_target_to_known_hosts() and ->_call_ssh_keyscan().
* Did a bunch of white-space/alignment cleanup.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-03-04 01:41:33 -05:00
Digimer
0fb191c00f * Made more progress on tools/striker-auto-initialize-all, now to the point where it loads the variables needed to initialize Striker dashboard.
* Cleaned up / added some logging in various locations.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-03-02 01:18:18 -05:00
digimer-bot
1a10f2ddd9
Merge pull request #44 from ClusterLabs/auto-build-anvil
* Fixed a bug introduced in the last commit that made Get->os_type() …
2021-02-23 02:08:54 -05:00
Digimer
45a9cb04b0 * Fixed a bug introduced in the last commit that made Get->os_type() fail when called locally.
* Made the error reported by Remote->call() more verbose when called without 'target' being set.
* Updated anvil-daemon to not call jobs more that once per minute.
* Started work on striker-auto-initialize-all, still very far from complete.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-23 01:56:12 -05:00
Digimer
ba8afe4adb
Merge pull request #43 from ClusterLabs/auto-build-anvil
* Remove host-health from the 'hosts' table as it wasn't needed, give…
2021-02-22 19:39:23 -05:00
digimer-bot
7283857ebb
Merge branch 'master' into auto-build-anvil 2021-02-22 19:36:28 -05:00
Digimer
1b65f53faa * Remove host-health from the 'hosts' table as it wasn't needed, given the 'health' table. Bumped the SQL version to 0.0.2
* Updated Get->os_type() to use 'cat' instead of Storage->read_file() because 'rsync' may not be available when it is called during striker-initialize-host calls.
* Updated Database methods to skip 'oui' and 'state' during resync.
* Updatedb striker-initialize-host to detect when it's initializing a CentOS Stream Node / DR Host and enable the HA repo.
* Created the tools/striker-auto-initialize-all tool, which is very much incomplete, that will allow for the rapid creation of a full Anvil! from freshly installed machines autonomously.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-22 19:22:47 -05:00
kronosnet CI bot
e6c45dacff
Merge pull request #42 from ClusterLabs/mock-fixes
Fix make srpm/make rpm BuildRequires for mock based environments
2021-02-17 13:41:01 +01:00
Fabio M. Di Nitto
cec7beaf7c Fix make srpm/make rpm BuildRequires for mock based environments
Signed-off-by: Fabio M. Di Nitto <fabbione@fabbione.net>
2021-02-17 13:30:12 +01:00
Digimer
2a1fa6891e
Merge pull request #41 from ClusterLabs/install-target-uefi
* The work on PXE / UEFI support is broken, and will be set aside for…
2021-02-16 18:47:24 -05:00
Digimer
1f8312e5fd
Merge branch 'master' into install-target-uefi 2021-02-16 18:41:48 -05:00
Digimer
e8efbab343 * The work on PXE / UEFI support is broken, and will be set aside for the time being. The commit here is working to getting things fixed, but it's taking too much time away from more pressing issues.
* This commit includes two unrelated test files for UI work, cgi-bin/get_anvil_status and cgi-bin/get_anvils.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-16 17:32:43 -05:00
Fabio M. Di Nitto
95340bb514
Merge pull request #40 from ClusterLabs/firewalld
Make sure that firewalld is started before trying to opening ports
2021-02-12 22:50:41 +01:00
Fabio M. Di Nitto
5043b8a778 Make sure that firewalld is started before trying to opening ports
Signed-off-by: Fabio M. Di Nitto <fabbione@fabbione.net>
2021-02-11 13:52:32 +01:00
digimer-bot
af389a114c
Merge pull request #39 from ClusterLabs/install-target-uefi
* Got UEFI booting working up to the grub menu, though files formerly…
2021-02-10 23:52:44 -05:00
Digimer
2937afad26 * Got UEFI booting working up to the grub menu, though files formerly provided by anvil-striker-extra still need to be added to the main anvil-striker to work properly.
* Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-10 23:49:11 -05:00
digimer-bot
ae0873c790
Merge pull request #38 from ClusterLabs/webui_anvil_page
* This adds two new files; cgi-bin/get_anvils and cgi-bin/get_anvil_s…
2021-02-09 22:51:31 -05:00
Digimer
bfe5fe2281 * This adds two new files; cgi-bin/get_anvils and cgi-bin/get_anvil_status, that will form the foundation of the new interactive web UI.
* Added the new 'json_headers' template to shared.html
* Updated Database->get_anvils() to store 'anvils::anvil_uuid::<anvil_uuid>::query_time' to aid in JSON clients to know the data is coming from the server. Also fixed a bug where the normal 'modified_date' column wasn't being loaded from the database properly.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-09 22:45:40 -05:00
digimer-bot
60cc90bec9
Merge pull request #37 from ClusterLabs/schema_work
* Updated the 'hosts' table and relevant Database methods to add colu…
2021-02-09 21:43:20 -05:00
Digimer
be942cea49
Merge branch 'master' into schema_work 2021-02-09 21:40:24 -05:00
Digimer
26f268a4aa * Updated the 'hosts' table and relevant Database methods to add columns for 'host_status' and 'host_health'. These will simplify tracking a node's (power) status and overall health.
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-09 21:35:58 -05:00
digimer-bot
7373bca1e6
Merge pull request #36 from ClusterLabs/install-target-uefi
* Fixed initial UEFI PXE booting (doesn't work yet, but UEFI clients …
2021-02-09 17:03:49 -05:00
Digimer
25aa46c359 * Fixed initial UEFI PXE booting (doesn't work yet, but UEFI clients get an IP properly and get the boot image)
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-09 16:59:51 -05:00
digimer-bot
604bbc636e
Merge pull request #35 from ClusterLabs/install-target-uefi
Install target uefi
2021-02-08 22:45:49 -05:00
Digimer
6f8f97b184 * Updated Get->os_type() to support detection of CentOS Stream separate from CentOS.
* Updated pxe.txt to start support for UEFI boot target.
* Updated update_install_source to be smarter about moving html and tftp directory names to better reflect the host OS, and to make it support converting OSes on the fly. Also added support to the package list for CentOS Stream.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-08 22:37:27 -05:00
Digimer
64a87d84f2 * Removed 'anvil-striker-extra' as a dependency for anvil-striker in preparation for its retirement.
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-08 15:48:01 -05:00
digimer-bot
93d0648ef5
Merge pull request #34 from ClusterLabs/distro-support
* Updated the os_type regex to detect CentOS Stream properly.
2021-02-08 15:32:34 -05:00
Digimer
983e3ad114 * Updated the os_type regex to detect CentOS Stream properly.
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-08 15:28:52 -05:00
digimer-bot
d3d81f865d
Merge pull request #33 from ClusterLabs/anvil-daemon-debugging
Anvil daemon debugging
2021-02-08 15:27:21 -05:00
digimer-bot
5b06cf5570
Merge branch 'master' into anvil-daemon-debugging 2021-02-08 15:23:31 -05:00
digimer-bot
28060d5ecf
Merge pull request #32 from ClusterLabs/scancore-debugging
Scancore debugging
2021-02-08 15:23:17 -05:00
Digimer
06506ba5df * Removing (again) test.pl from Makefile.
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-08 13:50:36 -05:00
Digimer
e8e042f0ae * Removed anvil-jobs from Makefile.am
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-08 13:42:56 -05:00
Digimer
1a520b03d5 * Cleaned up a lot of logging in anvil-daemon and tools it calls.
* Deleted anvil-jobs as it never ended up being used.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-08 13:39:34 -05:00
Digimer
482e4f41c2 * Removed 'test.pl' from Makefile.in/.am
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-07 19:00:03 -05:00
Digimer
a1eede2757 * Added new jumps to scan-ipmitool to make it less likely to trigger a jump alert for 'Temp{1..4}' sensors.
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-07 18:54:12 -05:00
Digimer
1ec03c9718 * Removing 'test.pl' from git.
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-07 18:42:34 -05:00
digimer-bot
827a3f2ee4
Merge pull request #31 from ClusterLabs/scancore-debugging
Scancore debugging
2021-02-07 18:13:50 -05:00
Digimer
6009590352 * Fixed a bug in scan-apc-ups where changes in the transfer reason were not being recorded.
* Cleaned up a log of logging to reduce the amount of log entries when running at log level 1.
* Bumped the scan-ipmitool default 'jump' range to 10c.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-07 18:11:29 -05:00
Digimer
b2dab95459 * Updated DRBD->delete_resource() to return a success if asked to delete a non-existent resource (as can happen when partial anvil-delete-server runs are re-run).
* Reworked DRBD->get_next_resource() to pull from the database, and to no longer do that increments-of-three nonsense. Avoidable complexity. Also added a call to Cluster->get_anvil_uuid() if the 'anvil_uuid' parameter wasn't passed.
* Updated Database->get_host_from_uuid() and ->get_hosts() to now take 'include_deleted' parameter and default to not returning deleted hosts. This fixed issues where anvil-{delete,provision}-server calls could assign jobs to now-deleted hosts with reused host names.
* Updated anvil-delete-server to print log entries to STDOUT. Also updated it to not wait of shutdown of a server in pacemaker to complete, and instead to destroy it after calling pacemaker's resource stop. Updated to also check to see if the server being deleted is already out of pacemaker and, if so, skip that step and directly try to destroy the server, if it's running.
* Updated anvil-provision-server to force 'peer_mode' runs to pull their TCP Port and DRBD minor numbers from the job. This fixes a bug where the same resource on two machines could use different TCP ports.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-07 18:11:29 -05:00
Digimer
2be14d93a6 * Added a check to anvil-delete-server to remove the XML definition file.
* Added checks to anvil-provision-server to see if an existing server name is flagged as DELETED, instead of outright rejecting a given server name.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-07 18:11:29 -05:00
Digimer
ee6fcdde81
Merge branch 'master' into scancore-debugging 2021-02-05 23:49:20 -05:00
Digimer
569270541e * Added 'tar' as a dependency because somehow I went three years without this...
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-05 23:43:17 -05:00
Digimer
9dbb39da5b * Added support for manually setting the server's UUID in anvil-provision-server. Also, if a server name existed before but was deleted, the old UUID is re-used to provide better continuity. The user can override this behaviour with the new --uuid switch.
Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-05 23:43:17 -05:00
Digimer
0ec1bf6b6a * Updated DRBD->delete_resource() to return a success if asked to delete a non-existent resource (as can happen when partial anvil-delete-server runs are re-run).
* Reworked DRBD->get_next_resource() to pull from the database, and to no longer do that increments-of-three nonsense. Avoidable complexity. Also added a call to Cluster->get_anvil_uuid() if the 'anvil_uuid' parameter wasn't passed.
* Updated Database->get_host_from_uuid() and ->get_hosts() to now take 'include_deleted' parameter and default to not returning deleted hosts. This fixed issues where anvil-{delete,provision}-server calls could assign jobs to now-deleted hosts with reused host names.
* Updated anvil-delete-server to print log entries to STDOUT. Also updated it to not wait of shutdown of a server in pacemaker to complete, and instead to destroy it after calling pacemaker's resource stop. Updated to also check to see if the server being deleted is already out of pacemaker and, if so, skip that step and directly try to destroy the server, if it's running.
* Updated anvil-provision-server to force 'peer_mode' runs to pull their TCP Port and DRBD minor numbers from the job. This fixes a bug where the same resource on two machines could use different TCP ports.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-05 23:41:48 -05:00
Digimer
8d0f873912 * Updated scan-storcli to check if a MegaRAID controlled exists and neither storcli64 or perccli64 exist. If a controller is found but no RPM is installed, it checks to see if the host is Dell and then decides to try and install perccli or storcli.
* Reworked scan-ipimitool so that on nodes and dr hosts, it only scans itself. On strikers, it scans all hosts found in active Anvil! systems with a host_ipmi entry. `
* For all agents, reduced log verbosity to not push too much noise into anvil.log while scancore is running in the background.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-05 23:34:51 -05:00
digimer-bot
66e0fb4490
Merge pull request #30 from ClusterLabs/string_bugs
* Fixed a bug where Words->load_agent_strings() wouldn't process stri…
2021-02-04 00:20:46 -05:00
Digimer
db3cf4f344
Merge branch 'master' into string_bugs 2021-02-03 21:51:20 -05:00
Digimer
50d529e07c * Added a check to anvil-delete-server to remove the XML definition file.
* Added checks to anvil-provision-server to see if an existing server name is flagged as DELETED, instead of outright rejecting a given server name.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-03 19:21:15 -05:00
Digimer
e052c75e2f * Added a check to anvil-delete-server to remove the XML definition file.
* Added checks to anvil-provision-server to see if an existing server name is flagged as DELETED, instead of outright rejecting a given server name.

Signed-off-by: Digimer <digimer@alteeve.ca>
2021-02-03 19:20:35 -05:00