mirror of
https://github.com/munin-monitoring/contrib.git
synced 2018-11-08 00:59:34 +01:00
POD style
This commit is contained in:
parent
8b2808b90a
commit
a8e1084bb8
2 changed files with 76 additions and 61 deletions
|
@ -1,78 +1,93 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
######################################################################################################################
|
|
||||||
# Plugin to monitor basic statistics of EMC VNX 5300 Unified Datamovers #
|
|
||||||
######################################################################################################################
|
|
||||||
|
|
||||||
# Author: Evgeny Beysembaev <megabotva@gmail.com>
|
: <<=cut
|
||||||
|
|
||||||
#####################################
|
=head1 NAME
|
||||||
# Description #
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
# The plugin monitors LUN of EMC Unified Storage FLARE SP's. Probably it can also be compatible with
|
emc_vnx_block_lun_perfdata - Plugin to monitor Block statistics of EMC VNX 5300 Unified Storage Processors
|
||||||
# other Clariion systems. It uses SSH to connect to Control Stations, then remotely executes
|
|
||||||
# /nas/sbin/navicli and fetches and parses data from it. Obviously, it's easy to reconfigure plugin not to use
|
=head1 AUTHOR
|
||||||
# Control Stations' navicli in favor of using locally installed /opt/Navisphere's cli. There is no difference which
|
|
||||||
# Storage Processor to use to gather data, so this plugin tries both of them and uses the first active one.
|
Evgeny Beysembaev <megabotva@gmail.com>
|
||||||
# This plugin also automatically chooses Primary Control Station from the list by calling /nasmcd/sbin/getreason and
|
|
||||||
# /nasmcd/sbin/t2slot.
|
=head1 LICENSE
|
||||||
#
|
|
||||||
# I left some parts of this plugin as rudimental to make easy to reconfigure it to draw more (or less) data.
|
GPLv2
|
||||||
|
|
||||||
|
=head1 MAGIC MARKERS
|
||||||
|
|
||||||
|
#%# family=auto
|
||||||
|
#%# capabilities=autoconf
|
||||||
|
|
||||||
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
|
The plugin monitors LUN of EMC Unified Storage FLARE SP's. Probably it can also be compatible with
|
||||||
|
other Clariion systems. It uses SSH to connect to Control Stations, then remotely executes
|
||||||
|
/nas/sbin/navicli and fetches and parses data from it. Obviously, it's easy to reconfigure plugin not to use
|
||||||
|
Control Stations' navicli in favor of using locally installed /opt/Navisphere's cli. There is no difference which
|
||||||
|
Storage Processor to use to gather data, so this plugin tries both of them and uses the first active one.
|
||||||
|
This plugin also automatically chooses Primary Control Station from the list by calling /nasmcd/sbin/getreason and
|
||||||
|
/nasmcd/sbin/t2slot.
|
||||||
|
|
||||||
#####################################
|
I left some parts of this plugin as rudimental to make easy to reconfigure it to draw more (or less) data.
|
||||||
# Configuration #
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
######### Prerequisites #########
|
=head1 COMPATIBILITY
|
||||||
|
|
||||||
# First of all, be sure that statistics collection is turned on. You can do this by typing:
|
The plugin has been written for being compatible with EMC VNX5300 Storage system, as this is the only EMC storage which
|
||||||
# navicli -h spa setstats -on
|
i have. By the way, i am pretty sure it can also work with other VNX1 storages, like VNX5100 and VNX5500, and old-style
|
||||||
# on your Control Station or locally through /opt/Navisphere
|
Clariion systems.
|
||||||
|
About VNX2 series, i don't know whether the plugin will be able to work with them. Maybe it would need some corrections
|
||||||
|
in command-line backend. The same situation is with other EMC systems, so i encourage you to try and fix the plugin.
|
||||||
|
|
||||||
|
=head1 CONFIGURATION
|
||||||
|
|
||||||
# Also, the plugin actively uses buggy "cdef" feature of Munin, and here we can be hit by the following bugs:
|
=head2 Prerequisites
|
||||||
# http://munin-monitoring.org/ticket/1017 - Here I have some workarounds in plugin, be sure that they are working.
|
|
||||||
# http://munin-monitoring.org/ticket/1352 -
|
|
||||||
# Metrics in my plugin can be much longer than 15 characters, so you have to edit the following file:
|
|
||||||
# /usr/share/perl5/Munin/Master/GraphOld.pm
|
|
||||||
# Find get_field_name() function and change "15" to "255".
|
|
||||||
|
|
||||||
######### Installation #########
|
First of all, be sure that statistics collection is turned on. You can do this by typing:
|
||||||
|
navicli -h spa setstats -on
|
||||||
|
on your Control Station or locally through /opt/Navisphere
|
||||||
|
|
||||||
# The plugin uses SSH to connect to Control Stations. It's possible to use 'nasadmin' user, but it would be better
|
Also, the plugin actively uses buggy "cdef" feature of Munin, and here we can be hit by the following bugs:
|
||||||
# if you create read-only global user by Unisphere Client. The user should have only Operator role.
|
http://munin-monitoring.org/ticket/1017 - Here I have some workarounds in plugin, be sure that they are working.
|
||||||
# I created "operator" user but due to the fact that Control Stations already had one internal "operator" user,
|
http://munin-monitoring.org/ticket/1352 -
|
||||||
# the new one was called "operator1". So be careful.
|
Metrics in my plugin can be much longer than 15 characters, so you have to edit the following file:
|
||||||
#
|
/usr/share/perl5/Munin/Master/GraphOld.pm
|
||||||
# On munin-node side choose a user which will be used to connect through SSH. Generally user "munin" is ok. Then,
|
Find get_field_name() function and change "15" to "255".
|
||||||
# execute "sudo su munin -s /bin/bash", "ssh-keygen" and "ssh-copy-id" to both Control Stations with newly created
|
|
||||||
# user.
|
|
||||||
#
|
|
||||||
# Make a link from /usr/share/munin/plugins/emc_vnx_dm_basic_stats to /etc/munin/plugins/emc_vnx_dm_basic_stats_<NAME>,
|
|
||||||
# where <NAME> is any arbitrary name of your storage system. The plugin will return <NAME> in its answer
|
|
||||||
# as "host_name" field.
|
|
||||||
# Assume your storage system is called "VNX5300".
|
|
||||||
#
|
|
||||||
# Make a configuration file at /etc/munin/plugin-conf.d/emc_vnx_block_lun_perfdata_VNX5300
|
|
||||||
#
|
|
||||||
# [emc_vnx_block_lun_perfdata_VNX5300]
|
|
||||||
# user munin # SSH Client local user
|
|
||||||
# env.username operator1 # Remote user with Operator role
|
|
||||||
# env.cs_addr 192.168.1.1 192.168.1.2 # Control Stations addresses
|
|
||||||
|
|
||||||
#####################################
|
=head2 Installation
|
||||||
# Errata #
|
|
||||||
#####################################
|
|
||||||
# It counts Queue Length in not fully correct way. We take parameters totally from both SP's, but after we divide them
|
|
||||||
# independently by load of SPA and SPB. Anyway, in most AAA / ALUA cases the formula is correct.
|
|
||||||
|
|
||||||
|
The plugin uses SSH to connect to Control Stations. It's possible to use 'nasadmin' user, but it would be better
|
||||||
|
if you create read-only global user by Unisphere Client. The user should have only Operator role.
|
||||||
|
I created "operator" user but due to the fact that Control Stations already had one internal "operator" user,
|
||||||
|
the new one was called "operator1". So be careful.
|
||||||
|
|
||||||
|
On munin-node side choose a user which will be used to connect through SSH. Generally user "munin" is ok. Then,
|
||||||
|
execute "sudo su munin -s /bin/bash", "ssh-keygen" and "ssh-copy-id" to both Control Stations with newly created
|
||||||
|
user.
|
||||||
|
|
||||||
|
Make a link from /usr/share/munin/plugins/emc_vnx_dm_basic_stats to /etc/munin/plugins/emc_vnx_dm_basic_stats_<NAME>,
|
||||||
|
where <NAME> is any arbitrary name of your storage system. The plugin will return <NAME> in its answer
|
||||||
|
as "host_name" field.
|
||||||
|
Assume your storage system is called "VNX5300".
|
||||||
|
|
||||||
|
Make a configuration file at /etc/munin/plugin-conf.d/emc_vnx_block_lun_perfdata_VNX5300
|
||||||
|
|
||||||
|
[emc_vnx_block_lun_perfdata_VNX5300]
|
||||||
|
user munin # SSH Client local user
|
||||||
|
env.username operator1 # Remote user with Operator role
|
||||||
|
env.cs_addr 192.168.1.1 192.168.1.2 # Control Stations addresses
|
||||||
|
|
||||||
#####################################
|
=head1 ERRATA
|
||||||
# History #
|
|
||||||
#####################################
|
|
||||||
|
|
||||||
# 09.11.2016 - First Release
|
It counts Queue Length in not fully correct way. We take parameters totally from both SP's, but after we divide them
|
||||||
|
independently by load of SPA and SPB. Anyway, in most AAA / ALUA cases the formula is correct.
|
||||||
|
|
||||||
######################################################################################################################
|
=head1 HISTORY
|
||||||
|
|
||||||
|
09.11.2016 - First Release
|
||||||
|
26.12.2016 - Compatibility with Munin coding style
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
export LANG=C
|
export LANG=C
|
||||||
TARGET=$(echo "${0##*/}" | cut -d _ -f 6)
|
TARGET=$(echo "${0##*/}" | cut -d _ -f 6)
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
=head1 NAME
|
=head1 NAME
|
||||||
|
|
||||||
emc_vnx_file_stats - Plugin to monitor NFS statistics of EMC VNX 5300 Unified Storage system
|
emc_vnx_file_stats - Plugin to monitor Basic, NFSv3 and NFSv4 statistics of EMC VNX 5300 Unified Storage system's Datamovers
|
||||||
|
|
||||||
=head1 AUTHOR
|
=head1 AUTHOR
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue