* Updated DRBD->gather_data() to store data on peers so that the peer's LV path and backing disk is recorded. Also fixed a bug in ->get_status() where the return code for local calls was stored as a host name.
* Added the scan-hpacucli scan agent. It's been done for a while and should have been added ages ago. * Updated anvil-rename-server to get to the point where it will take down the DRBD resources on all machines, but waits if there is a sync under way. It also verifies that the server is off on all systems from virsh's perspective. Signed-off-by: Digimer <digimer@alteeve.ca>main
parent
591b550085
commit
2e37691116
8 changed files with 6719 additions and 38 deletions
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,572 @@ |
|||||||
|
-- This is the database schema for the 'hpacucli Scan Agent'. |
||||||
|
-- |
||||||
|
-- Things that change rarely should go in the main tables (even if we won't explicitely watch for them |
||||||
|
-- to change with specific alerts). |
||||||
|
|
||||||
|
-- ------------------------------------------------------------------------------------------------------- -- |
||||||
|
-- Adapter -- |
||||||
|
-- ------------------------------------------------------------------------------------------------------- -- |
||||||
|
|
||||||
|
-- Controller; |
||||||
|
-- - Temperature; controller_temperature: [85 °C] |
||||||
|
-- - Data; model_name: [Smart Array P420i] |
||||||
|
-- - Data; cache_board_present: [True] |
||||||
|
-- - Data; controller_status: [OK] |
||||||
|
-- - Data; drive_write_cache: [Disabled] |
||||||
|
-- - Data; firmware_version: [8.00] |
||||||
|
-- - Data; no_battery_write_cache: [Disabled] |
||||||
|
-- |
||||||
|
-- Ignore; |
||||||
|
-- - Data; battery_or_capacitor_count: [1] |
||||||
|
-- - Data; degraded_performance_optimization: [Disabled] |
||||||
|
-- - Data; elevator_sort: [Enabled] |
||||||
|
-- - Data; expand_priority: [Medium] |
||||||
|
-- - Data; hardware_revision: [B] |
||||||
|
-- - Data; inconsistency_repair_policy: [Disabled] |
||||||
|
-- - Data; monitor_and_performance_delay: [60 min] |
||||||
|
-- - Data; post_prompt_timeout: [0 secs] |
||||||
|
-- - Data; queue_depth: [Automatic] |
||||||
|
-- - Data; raid_6_-_adg_status: [Enabled] |
||||||
|
-- - Data; rebuild_priority: [Medium] |
||||||
|
-- - Data; sata_ncq_supported: [True] |
||||||
|
-- - Data; spare_activation_mode: [Activate on drive failure] |
||||||
|
-- - Data; surface_analysis_inconsistency_notification: [Disabled] |
||||||
|
-- - Data; surface_scan_delay: [15 secs] |
||||||
|
-- - Data; surface_scan_mode: [Idle] |
||||||
|
-- - Data; wait_for_cache_room: [Disabled] |
||||||
|
-- - Data; cache_ratio: [10% Read / 90% Write] |
||||||
|
-- - Data; total_cache_memory_available: [816 MB] |
||||||
|
|
||||||
|
|
||||||
|
-- Here is the basic controller information. All connected devices will reference back to this table's |
||||||
|
-- 'scan_hpacucli_controller_serial_number' column. |
||||||
|
CREATE TABLE scan_hpacucli_controllers ( |
||||||
|
scan_hpacucli_controller_uuid uuid not null primary key, |
||||||
|
scan_hpacucli_controller_host_uuid uuid not null, |
||||||
|
scan_hpacucli_controller_serial_number text not null, -- This is the core identifier |
||||||
|
scan_hpacucli_controller_model text not null, -- |
||||||
|
scan_hpacucli_controller_status text not null, -- |
||||||
|
scan_hpacucli_controller_last_diagnostics numeric not null, -- Collecting diagnostics information is very expensive, so we do it once every hour (or whatever the user chooses). |
||||||
|
scan_hpacucli_controller_cache_present text not null, -- "yes" or "no" |
||||||
|
scan_hpacucli_controller_drive_write_cache text not null, -- "enabled" or "disabled" |
||||||
|
scan_hpacucli_controller_firmware_version text not null, -- |
||||||
|
scan_hpacucli_controller_unsafe_writeback_cache text not null, -- "enabled" or "disabled" |
||||||
|
modified_date timestamp with time zone not null, |
||||||
|
|
||||||
|
FOREIGN KEY(scan_hpacucli_controller_host_uuid) REFERENCES hosts(host_uuid) |
||||||
|
); |
||||||
|
ALTER TABLE scan_hpacucli_controllers OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TABLE history.scan_hpacucli_controllers ( |
||||||
|
history_id bigserial, |
||||||
|
scan_hpacucli_controller_uuid uuid, |
||||||
|
scan_hpacucli_controller_host_uuid uuid, |
||||||
|
scan_hpacucli_controller_serial_number text, |
||||||
|
scan_hpacucli_controller_model text, |
||||||
|
scan_hpacucli_controller_status text, |
||||||
|
scan_hpacucli_controller_last_diagnostics numeric, |
||||||
|
scan_hpacucli_controller_cache_present text, |
||||||
|
scan_hpacucli_controller_drive_write_cache text, |
||||||
|
scan_hpacucli_controller_firmware_version text, |
||||||
|
scan_hpacucli_controller_unsafe_writeback_cache text, |
||||||
|
modified_date timestamp with time zone |
||||||
|
); |
||||||
|
ALTER TABLE history.scan_hpacucli_controllers OWNER TO admin; |
||||||
|
|
||||||
|
CREATE FUNCTION history_scan_hpacucli_controllers() RETURNS trigger |
||||||
|
AS $$ |
||||||
|
DECLARE |
||||||
|
history_scan_hpacucli_controllers RECORD; |
||||||
|
BEGIN |
||||||
|
SELECT INTO history_scan_hpacucli_controllers * FROM scan_hpacucli_controllers WHERE scan_hpacucli_controller_uuid=new.scan_hpacucli_controller_uuid; |
||||||
|
INSERT INTO history.scan_hpacucli_controllers |
||||||
|
(scan_hpacucli_controller_uuid, |
||||||
|
scan_hpacucli_controller_host_uuid, |
||||||
|
scan_hpacucli_controller_serial_number, |
||||||
|
scan_hpacucli_controller_model, |
||||||
|
scan_hpacucli_controller_status, |
||||||
|
scan_hpacucli_controller_last_diagnostics, |
||||||
|
scan_hpacucli_controller_cache_present, |
||||||
|
scan_hpacucli_controller_drive_write_cache, |
||||||
|
scan_hpacucli_controller_firmware_version, |
||||||
|
scan_hpacucli_controller_unsafe_writeback_cache, |
||||||
|
modified_date) |
||||||
|
VALUES |
||||||
|
(history_scan_hpacucli_controllers.scan_hpacucli_controller_uuid, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_host_uuid, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_serial_number, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_model, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_status, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_last_diagnostics, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_cache_present, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_drive_write_cache, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_firmware_version, |
||||||
|
history_scan_hpacucli_controllers.scan_hpacucli_controller_unsafe_writeback_cache, |
||||||
|
history_scan_hpacucli_controllers.modified_date); |
||||||
|
RETURN NULL; |
||||||
|
END; |
||||||
|
$$ |
||||||
|
LANGUAGE plpgsql; |
||||||
|
ALTER FUNCTION history_scan_hpacucli_controllers() OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TRIGGER trigger_scan_hpacucli_controllers |
||||||
|
AFTER INSERT OR UPDATE ON scan_hpacucli_controllers |
||||||
|
FOR EACH ROW EXECUTE PROCEDURE history_scan_hpacucli_controllers(); |
||||||
|
|
||||||
|
|
||||||
|
-- Cache; |
||||||
|
-- - Temperature; cache_module_temperature: [37 °C] |
||||||
|
-- - Temperature; capacitor_temperature: [25 °C] |
||||||
|
-- - Data; cache_serial_number |
||||||
|
-- - Data; cache_status: [OK] |
||||||
|
-- - Data; battery_or_capacitor_status: [OK] |
||||||
|
-- - Data; cache_backup_power_source: [Capacitors] |
||||||
|
-- - Data; total_cache_size: [1024 MB] |
||||||
|
|
||||||
|
-- This table is used for BBU and FBU caching. |
||||||
|
CREATE TABLE scan_hpacucli_cache_modules ( |
||||||
|
scan_hpacucli_cache_module_uuid uuid not null primary key, |
||||||
|
scan_hpacucli_cache_module_host_uuid uuid not null, |
||||||
|
scan_hpacucli_cache_module_controller_uuid uuid not null, -- The controller this module is connected to |
||||||
|
scan_hpacucli_cache_module_serial_number text not null, |
||||||
|
scan_hpacucli_cache_module_status text not null, |
||||||
|
scan_hpacucli_cache_module_type text not null, |
||||||
|
scan_hpacucli_cache_module_size numeric not null, -- In bytes |
||||||
|
modified_date timestamp with time zone not null, |
||||||
|
|
||||||
|
FOREIGN KEY(scan_hpacucli_cache_module_host_uuid) REFERENCES hosts(host_uuid), |
||||||
|
FOREIGN KEY(scan_hpacucli_cache_module_controller_uuid) REFERENCES scan_hpacucli_controllers(scan_hpacucli_controller_uuid) |
||||||
|
); |
||||||
|
ALTER TABLE scan_hpacucli_cache_modules OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TABLE history.scan_hpacucli_cache_modules ( |
||||||
|
history_id bigserial, |
||||||
|
scan_hpacucli_cache_module_uuid uuid, |
||||||
|
scan_hpacucli_cache_module_host_uuid uuid, |
||||||
|
scan_hpacucli_cache_module_controller_uuid uuid, |
||||||
|
scan_hpacucli_cache_module_serial_number text, |
||||||
|
scan_hpacucli_cache_module_status text, |
||||||
|
scan_hpacucli_cache_module_type text, |
||||||
|
scan_hpacucli_cache_module_size numeric, |
||||||
|
modified_date timestamp with time zone |
||||||
|
); |
||||||
|
ALTER TABLE history.scan_hpacucli_cache_modules OWNER TO admin; |
||||||
|
|
||||||
|
CREATE FUNCTION history_scan_hpacucli_cache_modules() RETURNS trigger |
||||||
|
AS $$ |
||||||
|
DECLARE |
||||||
|
history_scan_hpacucli_cache_modules RECORD; |
||||||
|
BEGIN |
||||||
|
SELECT INTO history_scan_hpacucli_cache_modules * FROM scan_hpacucli_cache_modules WHERE scan_hpacucli_cache_module_uuid=new.scan_hpacucli_cache_module_uuid; |
||||||
|
INSERT INTO history.scan_hpacucli_cache_modules |
||||||
|
(scan_hpacucli_cache_module_uuid, |
||||||
|
scan_hpacucli_cache_module_host_uuid, |
||||||
|
scan_hpacucli_cache_module_controller_uuid, |
||||||
|
scan_hpacucli_cache_module_serial_number, |
||||||
|
scan_hpacucli_cache_module_status, |
||||||
|
scan_hpacucli_cache_module_type, |
||||||
|
scan_hpacucli_cache_module_size, |
||||||
|
modified_date) |
||||||
|
VALUES |
||||||
|
(history_scan_hpacucli_cache_modules.scan_hpacucli_cache_module_uuid, |
||||||
|
history_scan_hpacucli_cache_modules.scan_hpacucli_cache_module_host_uuid, |
||||||
|
history_scan_hpacucli_cache_modules.scan_hpacucli_cache_module_controller_uuid, |
||||||
|
history_scan_hpacucli_cache_modules.scan_hpacucli_cache_module_serial_number, |
||||||
|
history_scan_hpacucli_cache_modules.scan_hpacucli_cache_module_status, |
||||||
|
history_scan_hpacucli_cache_modules.scan_hpacucli_cache_module_type, |
||||||
|
history_scan_hpacucli_cache_modules.scan_hpacucli_cache_module_size, |
||||||
|
history_scan_hpacucli_cache_modules.modified_date); |
||||||
|
RETURN NULL; |
||||||
|
END; |
||||||
|
$$ |
||||||
|
LANGUAGE plpgsql; |
||||||
|
ALTER FUNCTION history_scan_hpacucli_cache_modules() OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TRIGGER trigger_scan_hpacucli_cache_modules |
||||||
|
AFTER INSERT OR UPDATE ON scan_hpacucli_cache_modules |
||||||
|
FOR EACH ROW EXECUTE PROCEDURE history_scan_hpacucli_cache_modules(); |
||||||
|
|
||||||
|
|
||||||
|
-- - Array: [A] |
||||||
|
-- - Data; array_type: [Data] |
||||||
|
-- - Data; interface_type: [SAS] |
||||||
|
-- - Data; status: [OK] |
||||||
|
-- - Data; unused_space: [0 MB] |
||||||
|
|
||||||
|
-- NOTE: 'ZZZZ' is a fake array used for unallocated disks |
||||||
|
-- This stores information about arrays. |
||||||
|
CREATE TABLE scan_hpacucli_arrays ( |
||||||
|
scan_hpacucli_array_uuid uuid not null primary key, |
||||||
|
scan_hpacucli_array_host_uuid uuid not null, |
||||||
|
scan_hpacucli_array_controller_uuid uuid not null, -- The controller this array is connected to |
||||||
|
scan_hpacucli_array_name text not null, |
||||||
|
scan_hpacucli_array_type text not null, |
||||||
|
scan_hpacucli_array_status text not null, |
||||||
|
scan_hpacucli_array_error_message text not null, |
||||||
|
modified_date timestamp with time zone not null, |
||||||
|
|
||||||
|
FOREIGN KEY(scan_hpacucli_array_host_uuid) REFERENCES hosts(host_uuid), |
||||||
|
FOREIGN KEY(scan_hpacucli_array_controller_uuid) REFERENCES scan_hpacucli_controllers(scan_hpacucli_controller_uuid) |
||||||
|
); |
||||||
|
ALTER TABLE scan_hpacucli_arrays OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TABLE history.scan_hpacucli_arrays ( |
||||||
|
history_id bigserial, |
||||||
|
scan_hpacucli_array_uuid uuid, |
||||||
|
scan_hpacucli_array_host_uuid uuid, |
||||||
|
scan_hpacucli_array_controller_uuid uuid, |
||||||
|
scan_hpacucli_array_name text, |
||||||
|
scan_hpacucli_array_type text, |
||||||
|
scan_hpacucli_array_status text, |
||||||
|
scan_hpacucli_array_error_message text, |
||||||
|
modified_date timestamp with time zone |
||||||
|
); |
||||||
|
ALTER TABLE history.scan_hpacucli_arrays OWNER TO admin; |
||||||
|
|
||||||
|
CREATE FUNCTION history_scan_hpacucli_arrays() RETURNS trigger |
||||||
|
AS $$ |
||||||
|
DECLARE |
||||||
|
history_scan_hpacucli_arrays RECORD; |
||||||
|
BEGIN |
||||||
|
SELECT INTO history_scan_hpacucli_arrays * FROM scan_hpacucli_arrays WHERE scan_hpacucli_array_uuid=new.scan_hpacucli_array_uuid; |
||||||
|
INSERT INTO history.scan_hpacucli_arrays |
||||||
|
(scan_hpacucli_array_uuid, |
||||||
|
scan_hpacucli_array_host_uuid, |
||||||
|
scan_hpacucli_array_controller_uuid, |
||||||
|
scan_hpacucli_array_name, |
||||||
|
scan_hpacucli_array_type, |
||||||
|
scan_hpacucli_array_status, |
||||||
|
scan_hpacucli_array_error_message, |
||||||
|
modified_date) |
||||||
|
VALUES |
||||||
|
(history_scan_hpacucli_arrays.scan_hpacucli_array_uuid, |
||||||
|
history_scan_hpacucli_arrays.scan_hpacucli_array_host_uuid, |
||||||
|
history_scan_hpacucli_arrays.scan_hpacucli_array_controller_uuid, |
||||||
|
history_scan_hpacucli_arrays.scan_hpacucli_array_name, |
||||||
|
history_scan_hpacucli_arrays.scan_hpacucli_array_type, |
||||||
|
history_scan_hpacucli_arrays.scan_hpacucli_array_status, |
||||||
|
history_scan_hpacucli_arrays.scan_hpacucli_array_error_message, |
||||||
|
history_scan_hpacucli_arrays.modified_date); |
||||||
|
RETURN NULL; |
||||||
|
END; |
||||||
|
$$ |
||||||
|
LANGUAGE plpgsql; |
||||||
|
ALTER FUNCTION history_scan_hpacucli_arrays() OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TRIGGER trigger_scan_hpacucli_arrays |
||||||
|
AFTER INSERT OR UPDATE ON scan_hpacucli_arrays |
||||||
|
FOR EACH ROW EXECUTE PROCEDURE history_scan_hpacucli_arrays(); |
||||||
|
|
||||||
|
|
||||||
|
-- - Logical Drive: [1] |
||||||
|
-- - Data; caching: [Enabled] |
||||||
|
-- - Data; cylinders: [65535] |
||||||
|
-- - Data; disk_name: [/dev/sda] |
||||||
|
-- - Data; drive_type: [Data] |
||||||
|
-- - Data; fault_tolerance: [RAID 5] |
||||||
|
-- - Data; full_stripe_size: [1280 KB] |
||||||
|
-- - Data; heads: [255] |
||||||
|
-- - Data; logical_drive_label: [A595BA15001438030E9B24025C4] |
||||||
|
-- - Data; mount_points: [/boot 512 MB, / 679.0 GB] |
||||||
|
-- - Data; os_status: [LOCKED] |
||||||
|
-- - Data; parity_initialization_status: [Initialization Completed] |
||||||
|
-- - Data; sectors_per_track: [32] |
||||||
|
-- - Data; size: [683.5 GB] |
||||||
|
-- - Data; status: [OK] |
||||||
|
-- - Data; strip_size: [256 KB] |
||||||
|
-- - Data; unique_identifier: [600508B1001C1300C1A2BCEE4BF97677] |
||||||
|
|
||||||
|
-- NOTE: The logical drive '9999' is a fake LD for unallocated disks |
||||||
|
-- This stores information about arrays. |
||||||
|
CREATE TABLE scan_hpacucli_logical_drives ( |
||||||
|
scan_hpacucli_logical_drive_uuid uuid not null primary key, |
||||||
|
scan_hpacucli_logical_drive_host_uuid uuid not null, |
||||||
|
scan_hpacucli_logical_drive_array_uuid uuid not null, -- The array this logical_drive is connected to |
||||||
|
scan_hpacucli_logical_drive_name text not null, |
||||||
|
scan_hpacucli_logical_drive_caching text not null, |
||||||
|
scan_hpacucli_logical_drive_os_device_name text not null, |
||||||
|
scan_hpacucli_logical_drive_type text not null, |
||||||
|
scan_hpacucli_logical_drive_raid_level text not null, |
||||||
|
scan_hpacucli_logical_drive_size numeric not null, -- in bytes |
||||||
|
scan_hpacucli_logical_drive_strip_size numeric not null, -- in bytes |
||||||
|
scan_hpacucli_logical_drive_stripe_size numeric not null, -- in bytes |
||||||
|
scan_hpacucli_logical_drive_status text not null, |
||||||
|
modified_date timestamp with time zone not null, |
||||||
|
|
||||||
|
FOREIGN KEY(scan_hpacucli_logical_drive_host_uuid) REFERENCES hosts(host_uuid), |
||||||
|
FOREIGN KEY(scan_hpacucli_logical_drive_array_uuid) REFERENCES scan_hpacucli_arrays(scan_hpacucli_array_uuid) |
||||||
|
); |
||||||
|
ALTER TABLE scan_hpacucli_logical_drives OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TABLE history.scan_hpacucli_logical_drives ( |
||||||
|
history_id bigserial, |
||||||
|
scan_hpacucli_logical_drive_uuid uuid, |
||||||
|
scan_hpacucli_logical_drive_host_uuid uuid, |
||||||
|
scan_hpacucli_logical_drive_array_uuid uuid, |
||||||
|
scan_hpacucli_logical_drive_name text, |
||||||
|
scan_hpacucli_logical_drive_caching text, |
||||||
|
scan_hpacucli_logical_drive_os_device_name text, |
||||||
|
scan_hpacucli_logical_drive_type text, |
||||||
|
scan_hpacucli_logical_drive_raid_level text, |
||||||
|
scan_hpacucli_logical_drive_size numeric, |
||||||
|
scan_hpacucli_logical_drive_strip_size numeric, |
||||||
|
scan_hpacucli_logical_drive_stripe_size numeric, |
||||||
|
scan_hpacucli_logical_drive_status text, |
||||||
|
modified_date timestamp with time zone |
||||||
|
); |
||||||
|
ALTER TABLE history.scan_hpacucli_logical_drives OWNER TO admin; |
||||||
|
|
||||||
|
CREATE FUNCTION history_scan_hpacucli_logical_drives() RETURNS trigger |
||||||
|
AS $$ |
||||||
|
DECLARE |
||||||
|
history_scan_hpacucli_logical_drives RECORD; |
||||||
|
BEGIN |
||||||
|
SELECT INTO history_scan_hpacucli_logical_drives * FROM scan_hpacucli_logical_drives WHERE scan_hpacucli_logical_drive_uuid=new.scan_hpacucli_logical_drive_uuid; |
||||||
|
INSERT INTO history.scan_hpacucli_logical_drives |
||||||
|
(scan_hpacucli_logical_drive_uuid, |
||||||
|
scan_hpacucli_logical_drive_host_uuid, |
||||||
|
scan_hpacucli_logical_drive_array_uuid, |
||||||
|
scan_hpacucli_logical_drive_name, |
||||||
|
scan_hpacucli_logical_drive_caching, |
||||||
|
scan_hpacucli_logical_drive_os_device_name, |
||||||
|
scan_hpacucli_logical_drive_type, |
||||||
|
scan_hpacucli_logical_drive_raid_level, |
||||||
|
scan_hpacucli_logical_drive_size, |
||||||
|
scan_hpacucli_logical_drive_strip_size, |
||||||
|
scan_hpacucli_logical_drive_stripe_size, |
||||||
|
scan_hpacucli_logical_drive_status, |
||||||
|
modified_date) |
||||||
|
VALUES |
||||||
|
(history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_uuid, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_host_uuid, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_array_uuid, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_name, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_caching, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_os_device_name, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_type, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_raid_level, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_size, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_strip_size, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_stripe_size, |
||||||
|
history_scan_hpacucli_logical_drives.scan_hpacucli_logical_drive_status, |
||||||
|
history_scan_hpacucli_logical_drives.modified_date); |
||||||
|
RETURN NULL; |
||||||
|
END; |
||||||
|
$$ |
||||||
|
LANGUAGE plpgsql; |
||||||
|
ALTER FUNCTION history_scan_hpacucli_logical_drives() OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TRIGGER trigger_scan_hpacucli_logical_drives |
||||||
|
AFTER INSERT OR UPDATE ON scan_hpacucli_logical_drives |
||||||
|
FOR EACH ROW EXECUTE PROCEDURE history_scan_hpacucli_logical_drives(); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- - Physical Drive: [1I:1:1], sn: [6XM4E1R60000M528BGFK] |
||||||
|
-- - Temperature; current_temperature: [31 °C] |
||||||
|
-- - Temperature; maximum_temperature: [40 °C] |
||||||
|
-- - Data; drive_type: [Data Drive] |
||||||
|
-- - Data; size: [146 GB] |
||||||
|
-- - Data; status: [OK] |
||||||
|
-- - Data; interface_type: [SAS] |
||||||
|
-- - Data; model: [HP EH0146FBQDC] |
||||||
|
-- - Data; rotational_speed: [15000] |
||||||
|
|
||||||
|
-- - Data; phy_count: [2] |
||||||
|
-- - Data; phy_transfer_rate: [6.0Gbps, Unknown] |
||||||
|
-- - Data; firmware_revision: [HPD5] |
||||||
|
-- - Data; drive_authentication_status: [OK] |
||||||
|
-- - Data; carrier_application_version: [11] |
||||||
|
-- - Data; carrier_bootloader_version: [6] |
||||||
|
|
||||||
|
-- This stores information about physical disks. |
||||||
|
CREATE TABLE scan_hpacucli_physical_drives ( |
||||||
|
scan_hpacucli_physical_drive_uuid uuid not null primary key, |
||||||
|
scan_hpacucli_physical_drive_host_uuid uuid not null, |
||||||
|
scan_hpacucli_physical_drive_logical_drive_uuid uuid not null, |
||||||
|
scan_hpacucli_physical_drive_serial_number text not null, |
||||||
|
scan_hpacucli_physical_drive_model text not null, |
||||||
|
scan_hpacucli_physical_drive_interface text not null, |
||||||
|
scan_hpacucli_physical_drive_status text not null, |
||||||
|
scan_hpacucli_physical_drive_size numeric not null, -- In bytes |
||||||
|
scan_hpacucli_physical_drive_type text not null, |
||||||
|
scan_hpacucli_physical_drive_rpm numeric not null, -- '0' for SSDs. |
||||||
|
scan_hpacucli_physical_drive_temperature numeric not null, -- In celslius |
||||||
|
scan_hpacucli_physical_drive_last_failure_reason text not null, -- This is usually an empty string |
||||||
|
scan_hpacucli_physical_drive_port text not null, -- These three form the ID for the drive; <port>:<box>:<bay> |
||||||
|
scan_hpacucli_physical_drive_box text not null, |
||||||
|
scan_hpacucli_physical_drive_bay text not null, |
||||||
|
modified_date timestamp with time zone not null, |
||||||
|
|
||||||
|
FOREIGN KEY(scan_hpacucli_physical_drive_host_uuid) REFERENCES hosts(host_uuid), |
||||||
|
FOREIGN KEY(scan_hpacucli_physical_drive_logical_drive_uuid) REFERENCES scan_hpacucli_logical_drives(scan_hpacucli_logical_drive_uuid) |
||||||
|
); |
||||||
|
ALTER TABLE scan_hpacucli_physical_drives OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TABLE history.scan_hpacucli_physical_drives ( |
||||||
|
history_id bigserial, |
||||||
|
scan_hpacucli_physical_drive_uuid uuid, |
||||||
|
scan_hpacucli_physical_drive_host_uuid uuid, |
||||||
|
scan_hpacucli_physical_drive_logical_drive_uuid uuid, |
||||||
|
scan_hpacucli_physical_drive_serial_number text, |
||||||
|
scan_hpacucli_physical_drive_model text, |
||||||
|
scan_hpacucli_physical_drive_interface text, |
||||||
|
scan_hpacucli_physical_drive_status text, |
||||||
|
scan_hpacucli_physical_drive_size numeric, |
||||||
|
scan_hpacucli_physical_drive_type text, |
||||||
|
scan_hpacucli_physical_drive_rpm numeric, |
||||||
|
scan_hpacucli_physical_drive_temperature numeric, |
||||||
|
scan_hpacucli_physical_drive_last_failure_reason text, |
||||||
|
scan_hpacucli_physical_drive_port text, |
||||||
|
scan_hpacucli_physical_drive_box text, |
||||||
|
scan_hpacucli_physical_drive_bay text, |
||||||
|
modified_date timestamp with time zone |
||||||
|
); |
||||||
|
ALTER TABLE history.scan_hpacucli_physical_drives OWNER TO admin; |
||||||
|
|
||||||
|
CREATE FUNCTION history_scan_hpacucli_physical_drives() RETURNS trigger |
||||||
|
AS $$ |
||||||
|
DECLARE |
||||||
|
history_scan_hpacucli_physical_drives RECORD; |
||||||
|
BEGIN |
||||||
|
SELECT INTO history_scan_hpacucli_physical_drives * FROM scan_hpacucli_physical_drives WHERE scan_hpacucli_physical_drive_uuid=new.scan_hpacucli_physical_drive_uuid; |
||||||
|
INSERT INTO history.scan_hpacucli_physical_drives |
||||||
|
(scan_hpacucli_physical_drive_uuid, |
||||||
|
scan_hpacucli_physical_drive_host_uuid, |
||||||
|
scan_hpacucli_physical_drive_logical_drive_uuid, |
||||||
|
scan_hpacucli_physical_drive_serial_number, |
||||||
|
scan_hpacucli_physical_drive_model, |
||||||
|
scan_hpacucli_physical_drive_interface, |
||||||
|
scan_hpacucli_physical_drive_status, |
||||||
|
scan_hpacucli_physical_drive_size, |
||||||
|
scan_hpacucli_physical_drive_type, |
||||||
|
scan_hpacucli_physical_drive_rpm, |
||||||
|
scan_hpacucli_physical_drive_temperature, |
||||||
|
scan_hpacucli_physical_drive_last_failure_reason, |
||||||
|
scan_hpacucli_physical_drive_port, |
||||||
|
scan_hpacucli_physical_drive_box, |
||||||
|
scan_hpacucli_physical_drive_bay, |
||||||
|
modified_date) |
||||||
|
VALUES |
||||||
|
(history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_uuid, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_host_uuid, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_logical_drive_uuid, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_serial_number, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_model, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_interface, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_status, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_size, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_type, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_rpm, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_temperature, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_last_failure_reason, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_port, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_box, |
||||||
|
history_scan_hpacucli_physical_drives.scan_hpacucli_physical_drive_bay, |
||||||
|
history_scan_hpacucli_physical_drives.modified_date); |
||||||
|
RETURN NULL; |
||||||
|
END; |
||||||
|
$$ |
||||||
|
LANGUAGE plpgsql; |
||||||
|
ALTER FUNCTION history_scan_hpacucli_physical_drives() OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TRIGGER trigger_scan_hpacucli_physical_drives |
||||||
|
AFTER INSERT OR UPDATE ON scan_hpacucli_physical_drives |
||||||
|
FOR EACH ROW EXECUTE PROCEDURE history_scan_hpacucli_physical_drives(); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- ------------------------------------------------------------------------------------------------------- -- |
||||||
|
-- Each data type has several variables that we're not storing in the component-specific tables. To do so -- |
||||||
|
-- would be to create massive tables that would miss variables not shown for all controllers or when new -- |
||||||
|
-- variables are added or renamed. So this table is used to store all those myriade of variables. Each -- |
||||||
|
-- entry will reference the table it is attached to and the UUID of the record in that table. The column -- |
||||||
|
|
||||||
|
-- 'scan_hpacucli_variable_is_temperature' will be used to know what data is a temperature and will be then -- |
||||||
|
-- used to inform on the host's thermal health. -- |
||||||
|
-- ------------------------------------------------------------------------------------------------------- -- |
||||||
|
|
||||||
|
-- This stores various variables found for a given controller but not explicitely checked for (or that |
||||||
|
-- change frequently). |
||||||
|
CREATE TABLE scan_hpacucli_variables ( |
||||||
|
scan_hpacucli_variable_uuid uuid not null primary key, |
||||||
|
scan_hpacucli_variable_host_uuid uuid not null, |
||||||
|
scan_hpacucli_variable_source_table text not null, |
||||||
|
scan_hpacucli_variable_source_uuid uuid not null, |
||||||
|
scan_hpacucli_variable_is_temperature boolean not null default FALSE, |
||||||
|
scan_hpacucli_variable_name text not null, |
||||||
|
scan_hpacucli_variable_value text not null, |
||||||
|
modified_date timestamp with time zone not null, |
||||||
|
|
||||||
|
FOREIGN KEY(scan_hpacucli_variable_host_uuid) REFERENCES hosts(host_uuid) |
||||||
|
); |
||||||
|
ALTER TABLE scan_hpacucli_variables OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TABLE history.scan_hpacucli_variables ( |
||||||
|
history_id bigserial, |
||||||
|
scan_hpacucli_variable_uuid uuid, |
||||||
|
scan_hpacucli_variable_host_uuid uuid, |
||||||
|
scan_hpacucli_variable_source_table text, |
||||||
|
scan_hpacucli_variable_source_uuid uuid, |
||||||
|
scan_hpacucli_variable_is_temperature boolean, |
||||||
|
scan_hpacucli_variable_name text, |
||||||
|
scan_hpacucli_variable_value text, |
||||||
|
modified_date timestamp with time zone |
||||||
|
); |
||||||
|
ALTER TABLE history.scan_hpacucli_variables OWNER TO admin; |
||||||
|
|
||||||
|
CREATE FUNCTION history_scan_hpacucli_variables() RETURNS trigger |
||||||
|
AS $$ |
||||||
|
DECLARE |
||||||
|
history_scan_hpacucli_variables RECORD; |
||||||
|
BEGIN |
||||||
|
SELECT INTO history_scan_hpacucli_variables * FROM scan_hpacucli_variables WHERE scan_hpacucli_variable_uuid=new.scan_hpacucli_variable_uuid; |
||||||
|
INSERT INTO history.scan_hpacucli_variables |
||||||
|
(scan_hpacucli_variable_uuid, |
||||||
|
scan_hpacucli_variable_host_uuid, |
||||||
|
scan_hpacucli_variable_source_table, |
||||||
|
scan_hpacucli_variable_source_uuid, |
||||||
|
scan_hpacucli_variable_is_temperature, |
||||||
|
scan_hpacucli_variable_name, |
||||||
|
scan_hpacucli_variable_value, |
||||||
|
modified_date) |
||||||
|
VALUES |
||||||
|
(history_scan_hpacucli_variables.scan_hpacucli_variable_uuid, |
||||||
|
history_scan_hpacucli_variables.scan_hpacucli_variable_host_uuid, |
||||||
|
history_scan_hpacucli_variables.scan_hpacucli_variable_source_table, |
||||||
|
history_scan_hpacucli_variables.scan_hpacucli_variable_source_uuid, |
||||||
|
history_scan_hpacucli_variables.scan_hpacucli_variable_is_temperature, |
||||||
|
history_scan_hpacucli_variables.scan_hpacucli_variable_name, |
||||||
|
history_scan_hpacucli_variables.scan_hpacucli_variable_value, |
||||||
|
history_scan_hpacucli_variables.modified_date); |
||||||
|
RETURN NULL; |
||||||
|
END; |
||||||
|
$$ |
||||||
|
LANGUAGE plpgsql; |
||||||
|
ALTER FUNCTION history_scan_hpacucli_variables() OWNER TO admin; |
||||||
|
|
||||||
|
CREATE TRIGGER trigger_scan_hpacucli_variables |
||||||
|
AFTER INSERT OR UPDATE ON scan_hpacucli_variables |
||||||
|
FOR EACH ROW EXECUTE PROCEDURE history_scan_hpacucli_variables(); |
||||||
|
|
||||||
|
-- - Array: [ZZZZ] |
||||||
|
-- - Logical Drive: [9999] |
||||||
|
-- - Physical Drive: [2I:1:8], sn: [11428100010010790594] |
||||||
|
-- - Data; carrier_application_version: [11] |
||||||
|
-- - Data; carrier_bootloader_version: [6] |
||||||
|
-- - Data; device_number: [380] |
||||||
|
-- - Data; drive_authentication_status: [OK] |
||||||
|
-- - Data; drive_type: [Unassigned Drive] |
||||||
|
-- - Data; firmware_revision: [1.0] |
||||||
|
-- - Data; firmware_version: [RevB] |
||||||
|
-- - Data; interface_type: [Solid State SATA] |
||||||
|
-- - Data; model: [SRCv8x6G] |
||||||
|
-- - Data; phy_count: [1] |
||||||
|
-- - Data; phy_transfer_rate: [6.0Gbps] |
||||||
|
-- - Data; sata_ncq_capable: [True] |
||||||
|
-- - Data; sata_ncq_enabled: [True] |
||||||
|
-- - Data; size: [128.0 GB] |
||||||
|
-- - Data; ssd_smart_trip_wearout: [Not Supported] |
||||||
|
-- - Data; status: [OK] |
||||||
|
-- - Data; vendor_id: [PMCSIERA] |
||||||
|
-- - Data; wwid: [5001438030E9B24F] |
@ -0,0 +1,308 @@ |
|||||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||||
|
|
||||||
|
<!-- |
||||||
|
Company: Alteeve's Niche, Inc. |
||||||
|
License: GPL v2+ |
||||||
|
Author: Madison Kelly <mkelly@alteeve.ca> |
||||||
|
|
||||||
|
NOTE: All string keys MUST be prefixed with the agent name! ie: 'scan_hpacucli_log_0001'. |
||||||
|
--> |
||||||
|
|
||||||
|
<words> |
||||||
|
<meta version="3.0.0" languages="en_CA,jp"/> |
||||||
|
<!-- Canadian English --> |
||||||
|
<language name="en_CA" long_name="Canadian English" description="ScanCore scan agent for HPE machines with RAID controllers managed by the 'hpacucli' tool."> |
||||||
|
|
||||||
|
<!-- Strings that can change by rebranding --> |
||||||
|
<key name="scan_hpacucli_brand_0001">HP Enterprise RAID controller scan agent using the 'hpacucli' tool</key> |
||||||
|
|
||||||
|
<!-- Storcli Agent-specific messages --> |
||||||
|
<key name="scan_hpacucli_message_0001">Starting #!string!scan_hpacucli_brand_0001!#:</key> |
||||||
|
<key name="scan_hpacucli_message_0002">#!free!#</key> |
||||||
|
|
||||||
|
<!-- Warnings --> |
||||||
|
<key name="scan_hpacucli_warning_0001">Diagnostics not available for the drive: [#!variable!serial_number!#] in port: [#!variable!port!#], box: [#!variable!box!#], bay: [#!variable!bay!#]. Unable to predict failures! Is this a third-party drive?</key> |
||||||
|
<key name="scan_hpacucli_warning_0002">The RAID controller's properties have changed: |
||||||
|
- Model: ................. [#!variable!old_model!#] -> [#!variable!new_model!#] |
||||||
|
- Serial Number: ......... [#!variable!old_serial_number!#] -> [#!variable!new_serial_number!#] |
||||||
|
- Status: ................ [#!variable!old_status!#] -> [#!variable!new_status!#] |
||||||
|
- Status: ................ [#!variable!old_alarm_state!#] -> [#!variable!new_alarm_state!#] |
||||||
|
- Cache Present: ......... [#!variable!old_cache_present!#] -> [#!variable!new_cache_present!#] |
||||||
|
- Drive Write Cache: ..... [#!variable!old_drive_write_cache!#] -> [#!variable!new_drive_write_cache!#] |
||||||
|
- Firmware Version: ...... [#!variable!old_firmware_version!#] -> [#!variable!new_firmware_version!#] |
||||||
|
- Unsafe Write-Back Cache: [#!variable!old_unsafe_writeback_cache!#] -> [#!variable!new_unsafe_writeback_cache!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_warning_0003">The RAID controller has returned: |
||||||
|
- Model: ................. [#!variable!new_model!#] |
||||||
|
- Serial Number: ......... [#!variable!new_serial_number!#] |
||||||
|
- Status: ................ [#!variable!new_status!#] |
||||||
|
- Status: ................ [#!variable!new_alarm_state!#] |
||||||
|
- Cache Present: ......... [#!variable!new_cache_present!#] |
||||||
|
- Drive Write Cache: ..... [#!variable!new_drive_write_cache!#] |
||||||
|
- Firmware Version: ...... [#!variable!new_firmware_version!#] |
||||||
|
- Unsafe Write-Back Cache: [#!variable!new_unsafe_writeback_cache!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_warning_0004">The RAID controller's cache module has changed: |
||||||
|
- Serial Number: ......... [#!variable!old_serial_number!#] -> [#!variable!new_serial_number!#] |
||||||
|
- Controller: ............ [#!variable!old_controller_serial_number!#] -> [#!variable!new_controller_serial_number!#] |
||||||
|
- Status: ................ [#!variable!old_status!#] -> [#!variable!new_status!#] |
||||||
|
- Type: .................. [#!variable!old_type!#] -> [#!variable!new_type!#] |
||||||
|
- Size: .................. [#!variable!say_old_size!#] -> [#!variable!say_new_size!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_warning_0005">The RAID controller's cache module has returned: |
||||||
|
- Serial Number: ......... [#!variable!new_serial_number!#] |
||||||
|
- Controller: ............ [#!variable!new_controller_serial_number!#] |
||||||
|
- Status: ................ [#!variable!new_status!#] |
||||||
|
- Type: .................. [#!variable!new_type!#] |
||||||
|
- Size: .................. [#!variable!say_new_size!#] |
||||||
|
</key> |
||||||
|
|
||||||
|
<!-- Errors --> |
||||||
|
<key name="scan_hpacucli_error_0001">The 'hpacucli' program was not found at: [#!variable!path!#], exiting.</key> |
||||||
|
<key name="scan_hpacucli_error_0002">The 'hpacucli' program was found at: [#!variable!path!#], but it is not executable. exiting.</key> |
||||||
|
<key name="scan_hpacucli_error_0003">No HPE-type RAID controllers were found, exiting.</key> |
||||||
|
<key name="scan_hpacucli_error_0004">Failed to find the serial number for the adapter: [#!variable!adapter!#]. Please check the output of '#!data!path::hpacucli!# #!data!sys::arguments::controller_info!#' and look for the 'Serial Number = X' string. Exiting.</key> |
||||||
|
<key name="scan_hpacucli_error_0005">The attempt to generate the XML diagnostics file: [#!variable!file!#] appears to have failed.</key> |
||||||
|
<key name="scan_hpacucli_error_0006">Non-numeric value in a numeric variable; controller last diagnostics (unix time): [#!variable!last_diagnostics!#]. This is likely a program error.</key> |
||||||
|
<key name="scan_hpacucli_error_0007">Non-numeric value in a numeric variable; cache module size: [#!variable!size!#]. This is likely a program error.</key> |
||||||
|
<key name="scan_hpacucli_error_0008">Non-numeric value in a numeric variable; array unused space: [#!variable!unused_space!#]. This is likely a program error.</key> |
||||||
|
<key name="scan_hpacucli_error_0009">Non-numeric value in a numeric variable; logical drive size: [#!variable!logical_drive_size!#], strip size: [#!variable!strip_size!#], or stripe size: [#!variable!stripe_size!#]. This is likely a program error.</key> |
||||||
|
<key name="scan_hpacucli_error_0010">Non-numeric value in a numeric variable; drive size: [#!variable!size!#], RPM: [#!variable!rpm!#] or temperature: [#!variable!temperature!#]. This is likely a program error.</key> |
||||||
|
<key name="scan_hpacucli_error_0011">Failed to find the serial number of the physical drive at the following location: |
||||||
|
- RAID Controller Serial Number: [#!variable!serial_number!#] |
||||||
|
- Array Name: .................. [#!variable!array_name!#] |
||||||
|
- Logical Drive Name: .......... [#!variable!logical_drive_name!#] |
||||||
|
- Port: ........................ [#!variable!port!#] |
||||||
|
- Box: ......................... [#!variable!box!#] |
||||||
|
- Bay: ......................... [#!variable!bay!#] |
||||||
|
</key> |
||||||
|
|
||||||
|
<!-- Notices --> |
||||||
|
<key name="scan_hpacucli_note_0001">A new HP RAID controller has been found. |
||||||
|
- Model Name: .............. [#!variable!model!#] |
||||||
|
- Serial Number: ........... [#!variable!serial_number!#] |
||||||
|
- Status: .................. [#!variable!status!#] |
||||||
|
- Drive Write Cache: ....... [#!variable!drive_write_cache!#] |
||||||
|
- Firmware: ................ [#!variable!firmware_version!#] |
||||||
|
- Write-Back on bad FBU/BBU: [#!variable!unsafe_writeback_cache!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0002">A new cache module has been found. |
||||||
|
- Serial Number: [#!variable!serial_number!#] |
||||||
|
- Cache Size: .. [#!variable!cache_size!#] |
||||||
|
- Status: ...... [#!variable!status!#] |
||||||
|
- Type: ........ [#!variable!type!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0003">Other detected variables (if any):</key> |
||||||
|
<key name="scan_hpacucli_note_0004">- #!variable!name!#: [#!variable!value!#]</key> |
||||||
|
<key name="scan_hpacucli_note_0005"> |
||||||
|
The temperature sensor: [#!variable!sensor_name!#] on the controller: [#!variable!serial_number!#] is above the high critical temperature of: [#!variable!high_critical_temperature!#]!: |
||||||
|
- #!variable!name!#: [#!variable!value!#] |
||||||
|
NOTE: If the other node is cooler, automatic live migration of hosted servers (if any) will occur soon. |
||||||
|
NOTE: If enough sensors go into warning or critical on both nodes, load shedding will occur to slow room heating. |
||||||
|
WARNING: If enough sensors go critical, emergency power off will occure to protect the node from damage. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0006"> |
||||||
|
The temperature sensor: [#!variable!sensor_name!#] on the controller: [#!variable!serial_number!#] is above the high warning temperature of: [#!variable!high_warning_temperature!#]. It will go critical at: [#!variable!high_critical_temperature!#]!: |
||||||
|
- #!variable!name!#: [#!variable!value!#] |
||||||
|
NOTE: If the other node is cooler, automatic live migration of hosted servers (if any) will occur soon. |
||||||
|
NOTE: If enough sensors go into warning or critical on both nodes, load shedding will occur to slow room heating. |
||||||
|
WARNING: If enough sensors go critical, emergency power off will occure to protect the node from damage. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0007"> |
||||||
|
The temperature sensor: [#!variable!sensor_name!#] on the controller: [#!variable!serial_number!#] is below the low critical temperature of: [#!variable!low_critical_temperature!#]!: |
||||||
|
- #!variable!name!#: [#!variable!value!#] |
||||||
|
NOTE: If the other node is cooler, automatic live migration of hosted servers (if any) will occur soon. |
||||||
|
NOTE: If enough sensors go into warning or critical on both nodes, load shedding will occur to slow room heating. |
||||||
|
WARNING: If enough sensors go critical, emergency power off will occure to protect the node from damage. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0008"> |
||||||
|
The temperature sensor: [#!variable!sensor_name!#] on the controller: [#!variable!serial_number!#] is below the low warning temperature of: [#!variable!low_warning_temperature!#]. It will go critical at: [#!variable!low_critical_temperature!#]!: |
||||||
|
- #!variable!name!#: [#!variable!value!#] |
||||||
|
NOTE: If the other node is cooler, automatic live migration of hosted servers (if any) will occur soon. |
||||||
|
NOTE: If enough sensors go into warning or critical on both nodes, load shedding will occur to slow room heating. |
||||||
|
WARNING: If enough sensors go critical, emergency power off will occure to protect the node from damage. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0009">- The variable: [#!variable!name!#] has changed: |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0010">- Controller: [#!variable!serial_number!#]: '#!variable!name!#' has returned: [#!variable!new_value!#]</key> |
||||||
|
<key name="scan_hpacucli_note_0011">- Controller: [#!variable!serial_number!#]: Temperature sensor: '#!variable!name!#' is no longer critically hot. |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0012">- Controller: [#!variable!serial_number!#]: Temperature sensor: '#!variable!name!#' is no longer hot enough to be in a warning state. |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0013">- Controller: [#!variable!serial_number!#]: Temperature sensor: '#!variable!name!#' is no longer critically cold. |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0014">- Controller: [#!variable!serial_number!#]: Temperature sensor: '#!variable!name!#' is no longer cold enough to be in a warning state. |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0015">- Controller: [#!variable!serial_number!#]: Temperature sensor: '#!variable!name!#' has jumped: [#!variable!delta!#] since the last scan. |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0016">- Controller: [#!variable!serial_number!#]: Temperature sensor: '#!variable!name!#' has dropped: [#!variable!delta!#] since the last scan. |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0017">The HP RAID controller: [#!variable!model!#] with the serial number: [#!variable!serial_number!#] has vanished!</key> |
||||||
|
<key name="scan_hpacucli_note_0018">The HP RAID cache module with the serial number: [#!variable!serial_number!#] has vanished!</key> |
||||||
|
<key name="scan_hpacucli_note_0019">The temperature sensor: [#!variable!name!#] on the HP RAID controller with the serial number: [#!variable!serial_number!#] has vanished!</key> |
||||||
|
<key name="scan_hpacucli_note_0020">The sensor: [#!variable!name!#] on the HP RAID controller with the serial number: [#!variable!serial_number!#] has vanished!</key> |
||||||
|
<key name="scan_hpacucli_note_0021">A new array has been found: [#!variable!name!#]. It is a: [#!variable!type!#] array and it's status is: [#!variable!status!#]!</key> |
||||||
|
<key name="scan_hpacucli_note_0022">A new array has been found: [#!variable!name!#] and it appears to have a problem. It is a: [#!variable!type!#] array and it's status is: [#!variable!status!#]. The error message is: [#!variable!error!#]!</key> |
||||||
|
<key name="scan_hpacucli_note_0023">The status of the HP RAID array: [#!variable!name!#] has changed: |
||||||
|
- [#!variable!old_status!#] -> [#!variable!new_status!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0024">The HP RAID array: [#!variable!name!#] has changed is back to a healthy state.</key> |
||||||
|
<key name="scan_hpacucli_note_0025">The HP RAID array: [#!variable!name!#] has moved to a new controller. |
||||||
|
- [#!variable!old_serial_number!#] -> [#!variable!new_serial_number!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0026">The error message for the HP RAID array: [#!variable!name!#] has changed: |
||||||
|
- [#!variable!old_error_message!#] -> [#!variable!new_error_message!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0027">The HP RAID array: [#!variable!name!#] has cleared the old error message: [#!variable!old_error_message!#]</key> |
||||||
|
<key name="scan_hpacucli_note_0028">The HP RAID array: [#!variable!name!#] has an error message: [#!variable!new_error_message!#]</key> |
||||||
|
<key name="scan_hpacucli_note_0029">The error message for the HP RAID array: [#!variable!name!#] has changed: |
||||||
|
- [#!variable!old_error_message!#] -> [#!variable!new_error_message!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0030">The HP RAID array: [#!variable!name!#] type has changed: |
||||||
|
- [#!variable!old_type!#] -> [#!variable!new_type!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0031">The HP RAID array: [#!variable!name!#] on the controller: [#!variable!serial_number!#] has vanished!</key> |
||||||
|
<key name="scan_hpacucli_note_0032">The HP RAID array: [#!variable!name!#] on the controller: [#!variable!serial_number!#] has returned.</key> |
||||||
|
<key name="scan_hpacucli_note_0033">The HP RAID array: [#!variable!name!#] has a new logical drive: [#!variable!logical_drive!#]: |
||||||
|
- Status: .............. [#!variable!new_status!#] |
||||||
|
- Write-Back Caching: .. [#!variable!new_caching!#] |
||||||
|
- Device Name in the OS: [#!variable!new_os_device_name!#] |
||||||
|
- Drive Type: .......... [#!variable!new_type!#] |
||||||
|
- RAID Level: .......... [#!variable!new_raid_level!#] |
||||||
|
- Logical Drive Size: .. [#!variable!new_size!#] |
||||||
|
- Strip Size: .......... [#!variable!new_strip_size!#] |
||||||
|
- Stripe Size: ......... [#!variable!new_stripe_size!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0034">The write-back caching on the HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] has changed! |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0035">The write-back caching has been re-enabled on the HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#].</key> |
||||||
|
<key name="scan_hpacucli_note_0036">The write-back caching has been disabled on the HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#]. |
||||||
|
WARNING: Storage performance can be significantly impacted when write-back caching has been disabled! This can be caused by a failed battery or capacitor on the RAID controller. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0037">The status on the HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] has changed! |
||||||
|
- [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0038">The HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] is back to normal.</key> |
||||||
|
<key name="scan_hpacucli_note_0039">The HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] is has begun recovering. |
||||||
|
NOTE: The array is still degraded, and will remain so until the rebuild process is complete. How long this rebuild will take is a factor of the replacement drive's speed and size. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0040">The rebuild of the HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] is now at: [#!variable!recovered!# %].</key> |
||||||
|
<key name="scan_hpacucli_note_0041">The HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] is degraded! |
||||||
|
WARNING: This is generally caused by a drive failing or having been removed. Please replace the drive as soon as possible. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0042">The HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] has changed! |
||||||
|
- Drive Name in OS: [#!variable!old_os_drive_name!#] -> [#!variable!new_os_drive_name!#] |
||||||
|
- Drive Type: ..... [#!variable!old_type!#] -> [#!variable!new_type!#] |
||||||
|
- RAID Level: ..... [#!variable!old_raid_level!#] -> [#!variable!new_raid_level!#] |
||||||
|
- Drive Size: ..... [#!variable!old_size!#] -> [#!variable!new_size!#] |
||||||
|
- Strip Size: ..... [#!variable!old_strip_size!#] -> [#!variable!new_strip_size!#] |
||||||
|
- Stripe Size: .... [#!variable!old_stripe_size!#] -> [#!variable!new_stripe_size!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0043">A variable on the HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] has changed! |
||||||
|
- #!variable!variable_name!#: [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0044">The HP RAID logical drive: [#!variable!logical_drive!#] has vanished!</key> |
||||||
|
<key name="scan_hpacucli_note_0045">The HP RAID logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] has returned!</key> |
||||||
|
<key name="scan_hpacucli_note_0046">A new physical disk was found on the HP RAID controller: [#!variable!controller_serial_number!#]: |
||||||
|
- Serial Number: ..... [#!variable!drive_serial_number!#] |
||||||
|
- Model: ............. [#!variable!model!#] |
||||||
|
- Size: .............. [#!variable!size!#] |
||||||
|
- Status: ............ [#!variable!status!#] |
||||||
|
- Temperature: ....... [#!variable!temperature!#] |
||||||
|
- Interface: ......... [#!variable!interface!#] |
||||||
|
- Location: .......... [#!variable!port!#:#!variable!box!#:#!variable!bay!#] (Port:Box:Bay) |
||||||
|
- Type: .............. [#!variable!rpm!#] |
||||||
|
- Array: ............. [#!variable!array_name!#] |
||||||
|
- Logical Drive: ..... [#!variable!logical_drive_name!#] |
||||||
|
- Last Failure Reason: [#!variable!last_failure_reason!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0047">The physical disk: [#!variable!drive_serial_number!#] has moved to a new logical disk. |
||||||
|
- Host: ........................ [#!variable!old_host_name!#] -> [#!variable!new_host_name!#] |
||||||
|
- RAID Controller Serial Number: [#!variable!old_controller_serial_number!#] -> [#!variable!new_controller_serial_number!#] |
||||||
|
- Array Name: .................. [#!variable!old_array_name!#] -> [#!variable!new_array_name!#] |
||||||
|
- Logical Drive Name: .......... [#!variable!old_logical_drive_name!#] -> [#!variable!new_logical_drive_name!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0048">The status of the physical disk [#!variable!serial_number!#] has changed! [#!variable!old_status!#] -> [#!variable!new_status!#]</key> |
||||||
|
<key name="scan_hpacucli_note_0049">The physical disk: [#!variable!serial_number!#] has vanished!</key> |
||||||
|
<key name="scan_hpacucli_note_0050">The physical disk: [#!variable!serial_number!#] has returned.</key> |
||||||
|
<key name="scan_hpacucli_note_0051">The physical disk: [#!variable!serial_number!#] is back to normal.</key> |
||||||
|
<key name="scan_hpacucli_note_0052">The physical disk: [#!variable!serial_number!#] has changed in an unusual way: |
||||||
|
- Model: ............. [#!variable!old_model!#] -> [#!variable!new_model!#] |
||||||
|
- Interface: ......... [#!variable!old_interface!#] -> [#!variable!new_interface!#] |
||||||
|
- Size: .............. [#!variable!old_size!#] -> [#!variable!new_size!#] |
||||||
|
- RPM: ............... [#!variable!old_rpm!#] -> [#!variable!new_rpm!#] |
||||||
|
- Last Failure Reason: [#!variable!old_last_failure_reason!#] -> [#!variable!new_last_failure_reason!#] |
||||||
|
- Location: .......... [#!variable!old_port!#:#!variable!old_box!#:#!variable!old_bay!#] -> [#!variable!new_port!#:#!variable!new_box!#:#!variable!new_bay!#] (Port:Box:Bay) |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0053">The temperature of the physical disk [#!variable!serial_number!#] has changed: [#!variable!old_temperature!#] -> [#!variable!new_temperature!#]</key> |
||||||
|
<key name="scan_hpacucli_note_0054">The temperature of the physical disk: [#!variable!serial_number!#] is no longer critically hot. |
||||||
|
- [#!variable!old_temperature!#] -> [#!variable!new_temperature!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0055">The temperature of the physical disk: [#!variable!serial_number!#] is no longer hot enough to be in a warning state. |
||||||
|
- [#!variable!old_temperature!#] -> [#!variable!new_temperature!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0056">The temperature of the physical disk: [#!variable!serial_number!#] is no longer critically cold. |
||||||
|
- [#!variable!old_temperature!#] -> [#!variable!new_temperature!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0057">The temperature of the physical disk: [#!variable!serial_number!#] is no longer cold enough to be in a warning state. |
||||||
|
- [#!variable!old_temperature!#] -> [#!variable!new_temperature!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0058">The temperature of the physical disk: [#!variable!serial_number!#] has jumped: [#!variable!delta!#] since the last scan. |
||||||
|
- [#!variable!old_temperature!#] -> [#!variable!new_temperature!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0059">The temperature of the physical disk: [#!variable!serial_number!#] has dropped: [#!variable!delta!#] since the last scan. |
||||||
|
- [#!variable!old_temperature!#] -> [#!variable!new_temperature!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0060"> |
||||||
|
The temperature of the physical drive: [#!variable!serial_number!#] is above the high critical temperature of: [#!variable!high_critical_temperature!#]!: |
||||||
|
- Current temperature: [#!variable!new_temperature!#] |
||||||
|
NOTE: If the other node is cooler, automatic live migration of hosted servers (if any) will occur soon. |
||||||
|
NOTE: If enough temperature sensors go into warning or critical on both nodes, load shedding will occur to slow room heating. |
||||||
|
WARNING: If enough sensors go critical, emergency power off will occure to protect the node from damage. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0061"> |
||||||
|
The temperature of the physical drive: [#!variable!serial_number!#] is above the high warning temperature of: [#!variable!high_warning_temperature!#]. It will go critical at: [#!variable!high_critical_temperature!#]!: |
||||||
|
- Current temperature: [#!variable!new_temperature!#] |
||||||
|
NOTE: If the other node is cooler, automatic live migration of hosted servers (if any) will occur soon. |
||||||
|
NOTE: If enough temperature sensors go into warning or critical on both nodes, load shedding will occur to slow room heating. |
||||||
|
WARNING: If enough sensors go critical, emergency power off will occure to protect the node from damage. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0062"> |
||||||
|
The temperature of the physical drive: [#!variable!serial_number!#] is below the low critical temperature of: [#!variable!low_critical_temperature!#]!: |
||||||
|
- Current temperature: [#!variable!new_temperature!#] |
||||||
|
NOTE: If the other node is cooler, automatic live migration of hosted servers (if any) will occur soon. |
||||||
|
NOTE: If enough sensors go into warning or critical on both nodes, load shedding will occur to slow room heating. |
||||||
|
WARNING: If enough sensors go critical, emergency power off will occure to protect the node from damage. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0063"> |
||||||
|
The temperature of the physical drive: [#!variable!serial_number!#] is below the low warning temperature of: [#!variable!low_warning_temperature!#]. It will go critical at: [#!variable!low_critical_temperature!#]!: |
||||||
|
- Current temperature: [#!variable!new_temperature!#] |
||||||
|
NOTE: If the other node is cooler, automatic live migration of hosted servers (if any) will occur soon. |
||||||
|
NOTE: If enough sensors go into warning or critical on both nodes, load shedding will occur to slow room heating. |
||||||
|
WARNING: If enough sensors go critical, emergency power off will occure to protect the node from damage. |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0064">The new physical disk with the serial number: [#!variable!drive_serial_number!#] is not healthy!</key> |
||||||
|
<key name="scan_hpacucli_note_0065">A variable on the physical drive: [#!variable!serial_number!#] has changed: |
||||||
|
- #!variable!variable_name!#: [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0066">A variable on the logical drive: [#!variable!logical_drive!#] under the array: [#!variable!array!#] on the controller: [#!variable!serial_number!#] has changed: |
||||||
|
- #!variable!variable_name!#: [#!variable!old_value!#] -> [#!variable!new_value!#] |
||||||
|
</key> |
||||||
|
<key name="scan_hpacucli_note_0067">The variable: [#!variable!name!#] on the physical drive with the serial number: [#!variable!serial_number!#] has vanished!</key> |
||||||
|
<key name="scan_hpacucli_note_0068">The diagnostics variable: [#!variable!name!#] on the physical drive with the serial number: [#!variable!serial_number!#] has vanished!</key> |
||||||
|
|
||||||
|
<!-- Log strings --> |
||||||
|
<key name="scan_hpacucli_log_0001">Found: [#!variable!count!#] controller(s).</key> |
||||||
|
<key name="scan_hpacucli_log_0002">The thermal sensor named: [#!variable!sensor_name!#], on: [#!variable!sensor_host!#] has not changed.</key> |
||||||
|
<key name="scan_hpacucli_log_0003">Running: [#!variable!shell_call!#] to gather drive diagnostics. This will take up to fifteen seconds to run.</key> |
||||||
|
|
||||||
|
</language> |
||||||
|
</words> |
Loading…
Reference in new issue