70 Commits (23445b07357f7cdd705814da1e01ebb37500ecdf)

Author SHA1 Message Date
digimer efebd135eb * Removed more references to 'dr1_host_uuid' from the old way of linking DR hosts to Anvil! nodes. 2 years ago
digimer 645f54ab89 This commit has more changes than I would normally like, but it's all linked to changing file uploads to rsync serially. 2 years ago
digimer e012d6016c Tha major point of this commit is to add the new 'anvil-manage-storage-groups' program that, well, manages storage groups. 2 years ago
Digimer f9ca6fb170 * This adds the new anvil-version-change tool which anvil-daemon will call on startup to handle checks for changes made over releases/updates. 2 years ago
Digimer f6cbe7d1d2 * Fixed a bug in System->collect_ipmi_data() where double-quoted passwords were preventing reading of the sensor data. 2 years ago
Digimer 622fb84652 * Renamed the 'notifications' table to 'alert-override', better reflecting what it does. 2 years ago
Digimer 44864ce321 * Updated Database->resync_databases() to set a default schema of 'public'. Also fixed a bug where, when the difference in record numbers between two line was > 999, it would not trigger a resync. 4 years ago
Digimer f833c311ba * To address issues with scancore debugging, we needed a tool to purge old anvils and hosts from the database. The 'test.pl' in this commit contains the new logic that will be merged into tools/striker-purge-host shortly. 4 years ago
Digimer 15dab8aab7 * Started working on the node post-scan login in ScanCore. Created ScanCore->check_temperature() to get a thermal score against a node. 4 years ago
Digimer fb0836f912 * THe get_cpu endpoint was completed. 4 years ago
Digimer 59b867cc25 * Updated DRBD->gather_data() to check if drbdadm exists before trying to call it to avoid scary errors in the logs. Also moved some strings that pulled from the scan-drbd agent into the main words file. 4 years ago
Digimer 296556328b * Fixed a bug in Convert->bytes_to_human_readable() to handle being passed in bytes (with the size units of 'b' ot 'bytes'). 4 years ago
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 4 years ago
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. 4 years ago
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. 4 years ago
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. 4 years ago
Digimer 413a4f73c2 * Updated Tools->_anvil_version() and Get->anvil_version() to now pick up a SchemaVersion from anvil.sql. This will change only when the schema changes and is used when Database->connect() is checking compatibility with other anvil database hosts. This will make it only break connection when there is a reason to do so. The anvil_version still remains as an informational version that will help when supporting users later. 4 years ago
Digimer 1a36f37065 * Got file uploads working! 4 years ago
Digimer 8f823d3b86 * Switched out the static list of core table to use the array generated by Database->get_tables_from_schema(). 4 years ago
Digimer 4f33eeef2e * This commit introduces a new concept called "Storage Groups". Given that LVs back DRBD resources in M3, there needed to be a way to determine which VGs would be used when creating the backing DRBD resources, and how large those LVs could be (based on the minimum free space of the VGs in a group). A new, as yet incomplete Get->available_resources() method will handle determining what resources are available to grow exist 4 years ago
Digimer 713f77bc78 * Finally finished scan-apc-ups! Proved way harder than anticipated... (over a solid week of work!) In M3, this agent is no longer host-bound, and the UPSes to scan based on entries in 'upses' using this scan agent. 4 years ago
Digimer d677d19ca0 * Moved Database->check_condition_age to Alert. 4 years ago
Digimer be88be6d30 * Did a bunch of testing / bugfixes for scan-server. 4 years ago
Digimer 262cbccb35 * Finished scan-server, though lots of testing needed. 4 years ago
Digimer 46f1a05789 * Got the code in scan-server to the point where it _should_ now gracefully and automatically detect changes to a server's definition originatin from the database (via Striker), directly editing the on-disk definition file, or editing via libvirt tools (like virt-manager). Still needs to be tested though. 4 years ago
Digimer 1a1fa7ce88 * Created Cluster->get_anvil_uuid() that returns the 'anvil_uuid' of a given 'host_uuid'. 4 years ago
Digimer e6e4c7d530 * Moved Server->_parse_definition() to -> parse_definition() to make it a publid method. 4 years ago
Digimer 4be943ebf3 * Finished (initial) testing of scan-hardware. The first M3 scan agent is done! 4 years ago
Digimer 0a1dc809a2 * Created the ScanCore.pm module with the first 'agent_startup' method which generalized scan agent start up. 4 years ago
Digimer 911523dfce * Got a lot of work done in generating emails. Doesn't work yet, but the code to generate emails for recipients using their preferred language and alert level is done (though limited testing so far). 4 years ago
Digimer 453f5c6223 * Fixed a bug where $anvil->nice_exit() was being passed 'exit' instead of 'exit_code' as a parameter. 5 years ago
Digimer 726a4374d1 * Renamed the database table 'host_keys' to 'ssh_keys' to better represent what it stores. 5 years ago
Digimer e99bfac9be * Created Database->get_anvils() and ->insert_or_update_anvils(). 5 years ago
Digimer e66bc32693 * Added the ability to store, edit and delete UPSes 5 years ago
Digimer f49f3cd890 * Created Database->get_fences() to load existing fence devices into memory. 5 years ago
Digimer f636e399d7 * Created tools/striker-parse-fence-agents which finds all the available fence agents on a system and gathers their metadata into a common XML file. 5 years ago
Digimer 7df405afcb * Created the manifest database table and Database->insert_or_update_manifests(). 5 years ago
Digimer 4cf9d6215c * Removed the table host_mail_servers. 5 years ago
Digimer e764eccf6e * Started work on Email->check_alert_recipients(). 5 years ago
Digimer eb0481bcb0 * Created Database->insert_or_update_recipients() (and did general cleanup of the database module). 5 years ago
Digimer d4a5882bb4 * Created Validate->is_port() to validate TCP/UDP ports 5 years ago
Digimer c48e9a174c * Created Tools->_domain_name() to return the host's domain name portion of their full host name. 5 years ago
Digimer 974d3c3411 * Fixed the order or table creations in anvil.sql (as well as fixed a missing comma) 5 years ago
Digimer c608ebb232 * Added bonds -> bond_bridge_uuid to track which bridge, if any, that a bond is connected to. Updated Network->load_interfces() to record this. 5 years ago
Digimer 54de5466cf * Renamed bond_active_slave to bond_active_interface. 5 years ago
Digimer 12b0cc28f0 * Renamed 'primary_slave' to 'primary_interface' for the bond table. 5 years ago
Digimer ea27f88bcc * Removed the 'bridge_interfaces' table and related database methods. This was found to be duplicate, given that 'network_interfaces' has references to parent bonds and bridges. 5 years ago
Digimer 077977ad9c * Fixed tools/anvil-update-states so that it properly removed ip_addresses no longer assigned to a host. Also merged 'network::interfaces::by_name::${interface}' with 'network::local::interface::${interface}' for storing discovered interfaces.' 5 years ago
Digimer 1d13e669a7 * Created the new tools/striker-scan-network tool that ping scans a network range and records the discovered hosts in the new 'mac_to_ip' table. Also created Database->insert_or_update_mac_to_ip() to handle the new table. 5 years ago
Digimer 7e960f1632 * Created the 'oui' database table that stores the parsed OUI data, as processed by the new 'tools/striker-parse-oui' tool. Also created Database->insert_or_update_oui() to handle inserts and updates. 5 years ago