* Created the new method Cluster->get_primary_host_uuid() that returns the 'host_uuid' of the primary node in the given cluster. This is useful for external programs to figure out which node is primary. Example is provisioning a new server being assigned to the active node. Also created ->is_primary() that is a similar test to see if the active node is the primary node or not.
* Updated Cluster->parse_cib() and ->parse_crm_mon() to work on remote hosts.
* Updated Database->get_hosts() to store the short host names.
* Created Get->host_from_ip_address() that translates an IP address to a host_uuid and host_name, if it's an IP assigned currently to a known host.
* Created Network->find_target_ip() that simplifies finding which IP address to use when the caller wants to connect to a target host.
* Reworked the anvil-join-anvil to parse fence_arguments in a way that handles passwords with spaces in them.
Signed-off-by: Digimer <digimer@alteeve.ca>
" If both nodes are running servers, then the node with the most active RAM (summed from the RAM allocated to running servers) is deemed "primary"(wouldtakethelongesttomigrateserversoff).
<keyname="error_0184">Moving the file failed. The problem should be logged. We'll sleep for a minute and then exit. We'll try again after that.</key>
<keyname="error_0185">Unable to check the file mode because a file UUID wasn't set (or failed to parse) from the 'job_data' in the job: [#!variable!job_uuid!#].</key>
<keyname="error_0186">Unable to check the file mode because the file UUID: [#!variable!file_uuid!#] is either invalid or doesn't exist in the database.</key>
<keyname="error_0187">Unable to find the new server name from the job UUID: [#!variable!job_uuid!#].</key>
<keyname="error_0188">Unable to get the number of CPU cores for the new server: [#!variable!server_name!#] from the job UUID: [#!variable!job_uuid!#].</key>
<keyname="error_0189">The new server: [#!variable!server_name!#] was asked to have: [#!variable!requested_cores!#] CPU cores, but only: [#!variable!available_cores!#] are available.</key>
<keyname="error_0190">Unable to get the amount of RAM for the new server: [#!variable!server_name!#] from the job UUID: [#!variable!job_uuid!#].</key>
<keyname="error_0191">The new server: [#!variable!server_name!#] was asked to have: [#!variable!requested_ram!#] RAM, but only: [#!variable!available_ram!#] is available.</key>
<keyname="error_0192">Unable to get the storage group UUID for the new server: [#!variable!server_name!#] from the job UUID: [#!variable!job_uuid!#].</key>
<keyname="error_0193">Unable to get the amount of storage to use for the new server: [#!variable!server_name!#] from the job UUID: [#!variable!job_uuid!#].</key>
<keyname="error_0194">The new server: [#!variable!server_name!#] was asked to have: [#!variable!requested_size!#] disk space, but only: [#!variable!available_size!#] is available on the requested storage group: [#!variable!storage_group!#].</key>
<keyname="error_0195">Unable to get the install ISO to use for the new server: [#!variable!server_name!#] from the job UUID: [#!variable!job_uuid!#].</key>
<keyname="error_0196">The install disc ISO: [#!variable!install_iso!#] to be used for the new server: [#!variable!server_name!#] wasn't found on this system.</key>
<keyname="error_0197">The driver disc ISO: [#!variable!install_iso!#] to be used for the new server: [#!variable!server_name!#] wasn't found on this system.</key>
<!-- Table headers -->
<keyname="header_0001">Current Network Interfaces and States</key>
@ -466,6 +477,55 @@ Failure! The return code: [#!variable!return_code!#] was received ('0' was expec
<keyname="job_0144">This is used when a file type changes, setting the executable bits when the type is script, and removing the executable bits when set to another type.</key>
<keyname="job_0145">The file: [#!variable!file_path!#]'s mode has been set to: [#!variable!new_mode!#].</key>
<keyname="job_0146">No need to set the mode on the file: [#!variable!file_path!#], it doesn't exist here.</key>
<keyname="job_0147">Provision a new server</key>
<keyname="job_0148">This takes the information and creates a new server.</key>
<keyname="job_0149">There are no known Anvil! systems at this time. Please setup an Anvil! and try again later.</key>
<keyname="job_0150">Provision a new server menu:</key>
@ -1136,6 +1196,7 @@ The file: [#!variable!file!#] needs to be updated. The difference is:
<keyname="log_0574">The host: [#!variable!host_name!#] was powered off because of power loss. Power is back and the UPSes are sufficiently charged. Booting it back up now.</key>
<keyname="log_0575">The host: [#!variable!host_name!#] was powered off for thermal reasons. All available thermal sensors read as OK now. Booting it back up now.</key>
<keyname="log_0576">The file: [#!variable!file_path!#] isn't on (or isn't the right size on) Striker: [#!variable!host_name!#]. Not using it to pull from.</key>
<keyname="log_0577">The job: [#!variable!job_uuid!#] was assigned to our Anvil! and this is the primary node. Assigning the job to this machine.</key>
<!-- Messages for users (less technical than log entries), though sometimes used for logs, too. -->
<keyname="message_0001">The host name: [#!variable!target!#] does not resolve to an IP address.</key>
@ -1158,7 +1219,7 @@ The file: [#!variable!file!#] needs to be updated. The difference is:
<keyname="message_0018">What would you like the new password to be?</key>
<keyname="message_0019">Please enter the password again to confirm.</key>
<keyname="message_0020">About to update the local passwords (shell users, database and web interface).</key>
<keyname="message_0021">Proceed? [y/N]</key>
<keyname="message_0021">Proceed? [y/N]</key><!-- Default Yes is at message_0206 -->
<keyname="message_0022">Aborting.</key>
<keyname="message_0023">Auto-approved by command line switch, proceeding.</key>
<keyname="message_0024">Updating the Striker user: [#!variable!user!#] password... </key>
@ -1436,6 +1497,7 @@ About to try to download aproximately: [#!variable!packages!#] packages needed t
<keyname="message_0203">Processing a file purge.</key>
<keyname="message_0204">Processing an uploaded file.</key>
<keyname="message_0205">Processing a file mode check.</key>
<keyname="message_0206">Proceed? [Y/n]</key><!-- Default no is message_0021 -->
<!-- Success messages shown to the user -->
<keyname="ok_0001">Saved the mail server information successfully!</key>
@ -1754,6 +1816,7 @@ If you are comfortable that the target has changed for a known reason, you can s
<keyname="striker_0282">This will remove the file from all systems.</key>
<keyname="striker_0283">There are no #!string!brand_0006!# configured yet. Existing files will automatically sync to new clusters.</key>
<keyname="striker_0284">Cancel</key>
<keyname="striker_0285">Close</key>
<!-- These are generally units and appended to numbers -->