Free Storage, SAN and LAN Performance and Capacity Monitoring

Lenovo storage installation

Back to storage installation home.


In case of usage of Virtual Appliance
  • Use local account lpar2rrd for hosting of STOR2RRD on the virtual appliance
  • Use /home/stor2rrd/stor2rrd as the product home
  • Use lpar2rrd account on storages as it is configured in /home/stor2rrd/stor2rrd/etc/stor2rrd.cfg (STORAGE_USER)
  • Replace lpar2rrd by stor2rrd user in all examples below.

Create a user on the storage for download of perf data

  • Allow access from the STOR2RRD host to the storage on port 22 (ssh).
    Test if port is open:
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 22
      Connection to "192.168.1.1" on port "22" is ok
    
  • Create ssh-keys on STOR2RRD host under stor2rrd user if do not exist yet.
    It should already exist on the Virtual Appliance, skip it there.
    Type enter instead of passphrase
    # su - stor2rrd # (use lpar2rrd user on the Appliance)
    $ ls -l ~/.ssh/id_rsa.pub
    $ ssh-keygen -t rsa -N ""
      Generating public/private rsa key pair.
      Enter file in which to save the key (/home/stor2rrd/.ssh/id_rsa):
      ...
    $ ls -l ~/.ssh/id_rsa.pub
      -rw-r--r-- 1 stor2rrd stor2rrd 382 Jun  1 12:47 /home/stor2rrd/.ssh/id_rsa.pub
    
  • Copy ssh-key into the storage under storage superuser
    $ scp ~/.ssh/id_rsa.pub superuser@[svc/storwize control enclosure IP]:/tmp/123tmp
    
  • Create new user "stor2rrd" on the storage (lpar2rrd in case of Virtual Appliance)
    $ ssh superuser@[svc|storwize control enclosure IP address] "svctask mkuser -name stor2rrd -usergrp Administrator -keyfile /tmp/123tmp"  
    
    Unfortunately "Administrator" role is the lowest role which allows retrieve of statistics data from the storage.
    Read this for explanation.

    If stor2rrd user already exists on the storage then assign him new ssh-keys:
    $ ssh superuser@[svc|storwize control enclosure IP address] "svctask chuser -keyfile /tmp/123tmp stor2rrd"
    
  • Check if that works:
    $ ssh -i ~/.ssh/id_rsa stor2rrd@[svc|storwize control enclosure IP address] "svcinfo lssystem"
      id 00000100C0906BAA
      name SVC
      location local
      partnership
      bandwidth
      ...
    

STOR2RRD storage configuration

  • All actions below under stor2rrd user (lpar2rrd on Virtual Appliance)

  • STOR2RRD v2.60+:
    Add storage into configuration from the UI:
    Settings icon ➡ Storages ➡ New ➡ Vendor:device ➡ Lenovo V series
    Storage management

  • STOR2RRD v2.50 and olders:
    • Configure storages in etc/storage-list.cfg
      Uncomment (remove the hash) example line and adjust it:
      $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg  
      
      #
      # IBM STORWIZE, IBM SVC and IBM FlashSystem and Lenovo V series (Storwize)
      #
      # Storage name alias:SWIZ:control enclosure IP/hostname:ssh_key_file:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
      #
      #storwize01:SWIZ:storwize_host.example.com:/home/stor2rrd/.ssh/id_rsa
      #svc01:SWIZ:svc_host.example.com:/home/stor2rrd/.ssh/id_rsa:2048:512:5
      #svc02:SWIZ:storage_IP:
      
      storwize01:SWIZ:192.168.1.1:
      
      Above shows Storwize/SVC storage with IP 192.168.1.1 which will be visible in the UI as storwize01
    • Assure you have enough of disk space on the filesystem where is STOR2RRD installed
      Roughly you might count 2 - 30 GB per a storage (it depends on number of volumes, 30GB for 5000 volumes)
      $ df -g /home   # AIX
      $ df -h /home   # Linux
      
    • Test the storage connectivity:
      $ cd /home/stor2rrd/stor2rrd
      $ ./bin/config_check.sh 
        =========================
        STORAGE: storwize01: SWIZ
        =========================
        ssh -o ConnectTimeout=15 -i /home/stor2rrd/.ssh/id_rsa  stor2rrd@192.168.1.1 "lscurrentuser"
        connection ok
      
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -l | grep load_svcperf.sh
    $
    
    Add if it does not exist as above
    $ crontab -e  
    
    # IBM Storwize/SVC storage agent and Lenovo Storwize
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_svcperf.sh > /home/stor2rrd/stor2rrd/load_svcperf.out 2>&1
    
    Assure there is already an entry with the UI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD UI (just ONE entry of load.sh must be there)
    5 * * * * /home/stor2rrd/stor2rrd/load.sh > /home/stor2rrd/stor2rrd/load.out 2>&1
    
  • Let run the storage agent for 15 - 20 minutes to get data, then:
    $ cd /home/stor2rrd/stor2rrd
    $ ./load.sh
    
  • Go to the web UI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

Troubleshooting

  • In case you find below error during initial configuration then follow this page
    $ cd /home/stor2rrd/stor2rrd/logs
    $ tail -1 error.log-<storage name>
      Can't locate object method "new" via package "XML::LibXML::SAX" at /usr/opt/perl5/lib/site_perl/5.10.1/XML/SAX/ParserFactory.pm line 43.
    
  • In case of a problem check our forum or contact us via support@stor2rrd.com

In case of usage of Virtual Appliance
  • Use local account lpar2rrd for hosting of STOR2RRD on the virtual appliance
  • Use /home/stor2rrd/stor2rrd as the product home
The product uses SMI-S and XML API interfaces natively provided by the storage.

Storage connectivity

  • Allow access from the STOR2RRD host to the storage on ports 80 (HTTP) and 5988 (SMI-S) and optionally 22 (ssh) if you use cmd line configuration as in examples below (you can use the storage UI instead).
    Test if ports are open:
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 80
      Connection to "192.168.1.1" on port "80" is ok
    
  • Assure that SMI-S 5988 and HTTP protocols are enabled on the storage
    $ ssh -l manage <storage_hostname>
    # show protocols
      Service and Security Protocols
      ------------------------------
      Web Browser Interface (HTTP): Enabled
      Secure Web Browser Interface (HTTPS): Enabled
      Command Line Interface (Telnet): Disabled
      Secure Command Line Interface (SSH): Enabled
      Storage Management Initiative Specification (SMI-S): Disabled
      Unsecure Storage Management Initiative Specification (SMI-S 5988): Enabled
      ...
    
    If SMI-S 5988 or HTTP is not enabled:
    # set protocols usmis enabled
    # set protocols http enabled
    
  • Create user stor2rrd on the storage with monitor role and allow SMI-S and XML API.
    Adjust password to your prefered one from used Test1234.
    $ ssh -l manage <storage_hostname>
    # create user interfaces smis,wbi locale English password Test1234 roles monitor stor2rrd
    
  • In case you want to use SSL access to the storage
    enable ports 5989 and 443 and start up SSL services on the storage instead of non SSL ones
    # set protocols smis enabled
    # set protocols https enabled
    

Install prerequisites

Skip that in case of Virtual Appliance
  • Linux:
    Install sblim-wbemcli package:
    # yum list |grep sblim-wbemcli
      sblim-wbemcli.x86_64                       1.6.2-9.el7                 base
    # yum install sblim-wbemcli     # RedHat
    # apt-get install sblim-wbemcli # Debian based (Ubuntu etc)
    # /usr/bin/wbemcli -noverify -nl ei https://<storage_hostname>:5988/root/smis:cim_computersystem
      *
      * ./wbemcli: Http Exception: Username/password required.
      *
    
    If you prefere to use https on port 5989 then you must use wbemcli with this patch 0002742
    Download the package from:
    Test the package:
    # rpm -q sblim-wbemcli
      sblim-wbemcli-1.6.3-31.1.x86_64
    # /usr/bin/wbemcli -v
      * wbemcli Version 1.6.3
    # /usr/bin/wbemcli -noverify -nl ei http://<storage_hostname>:5988/root/smis:cim_computersystem
      *
      * ./wbemcli: Http Exception: Username/password required.
      *
    
  • AIX:
    Download and install
    # rpm -Uvh libffi-3.1-1.aix5.1.ppc.rpm --nodeps
    # rpm -Uvh libiconv-1.14-2.aix5.1.ppc.rpm --nodeps
    # rpm -Uvh libidn-1.29-1.aix5.1.ppc.rpm --nodeps
    # rpm -Uvh libssh2-1.4.3-2.aix5.1.ppc.rpm --nodeps
    # rpm -Uvh openssl-1.0.1j-1.aix5.1.ppc.rpm
    # rpm -Uvh openldap-2.4.23-0.3.aix5.1.ppc.rpm
    # rpm -Uvh curl-7.27.0-1.aix5.1.ppc.rpm
    # rpm -Uvh wbemcli-1.6.3-1.aix5.1.ppc.rpm
    
    # LIBPATH=/opt/freeware/lib; export LIBPATH
    # /opt/freeware/bin/wbemcli -noverify -nl ei http://<storage_hostname>:5988/root/smis:cim_computersystem
      *
      * ./wbemcli: Http Exception: Username/password required.
      *
    

STOR2RRD storage configuration

  • All actions below under stor2rrd user (lpar2rrd on Virtual Appliance)

  • STOR2RRD v2.60+:
    Add storage into configuration from the UI:
    Settings icon ➡ Storages ➡ New ➡ Vendor:device ➡ Lenovo S series
    Storage management

  • STOR2RRD v2.50 and olders:
    • Uncomment (remove the hash) example line and adjust it:
      $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
      
      #
      # Dot Hill AssuredSAN and its rebrands like Lenovo S2200 or HPE MSA2000/P2000, Dell EMC PowerVault ME4 Series, Quantum StorNex
      #
      # Storage Alias:DOTHILL:Controller_A IP address or hostname:Controller_B IP address or hostname:[http|https]:storage user:encrypted password:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
      # to encrypt password use: perl ./bin/spasswd.pl
      #DOTHILL_AssuredSAN-alias01:DOTHILL:ctla_host.example.com:ctlb_host.example.com:http:stor2rrd:KT4mXVI9N0BUPjZdVQo=:1024:10:
      #LENOVO_S2000-alias01:DOTHILL:ctla_host.example.com:ctlb_host.example.com:http:stor2rrd:KT4mXVI9N0BUPjZdVQo=
      #HPE_MSA2000-alias01:DOTHILL:ctla_host.example.com:ctlb_host.example.com:http:stor2rrd:KT4mXVI9N0BUPjZdVQo=
      
      Lenovo-alias01:DOTHILL:192.168.1.1:192.168.1.2:http:stor2rrd:KT4mXVI9N0BUPjZdVQo=
      
      Above shows storage with IP 192.168.1.1 which will be visible in the UI as Lenovo-alias01

      Use encrypted password in storage line above, encrypt it like this:
      Do not use shell special characters like @#!?|$*[]\{}`"'& in the password, use rather ;:.+- instead.
      $ cd /home/stor2rrd/stor2rrd
      $ perl bin/spasswd.pl
      
        Encode password for storage authentication:
        -------------------------------------------
        Enter password:
        Re-enter password:
      
        Copy the following string to the password field of the corresponding line in etc/storage-list.cfg:
      
        KT4mXVI9N0BUPjZdVQo=
      
    • Assure you have enough of disk space on the filesystem where is STOR2RRD installed
      Roughly you might count 2 - 30 GB per a storage (it depends on number of volumes, 30GB for 5000 volumes)
      $ df -g /home   # AIX
      $ df -h /home   # Linux
      
    • Check storage connectivity
      $ cd /home/stor2rrd/stor2rrd
      $ ./bin/config_check.sh 
        =====================
        STORAGE: Lenovo-alias01 : DOTHILL
        =====================
        connection ok
      
      If you use HTTPS and do not have installed Perl SSL support then you get an error:
      "Missing LWP::Protocol::https", "Connection reset by peer" or "500 SSL negotiation failed"
      Follow this or switch to HTTP on the storage line in etc/storage-list.cfg.

      Newer storage firmware releases (GL225R003) might require higher user role for SMI-S access.
      Try to use "manage" role if you get this error:
      *
      * /usr/bin/wbemcli: Http Exception: Invalid username/password.
      *
      
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -l | grep load_dothillperf.sh
    $
    
    Add if it does not exist as above
    $ crontab -e
    
    # DotHill AssuredSAN and its rebrands like Lenovo S2200 or HPE MSA2000/P2000, Dell EMC PowerVault ME4 Series, Quantum StorNex
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_dothillperf.sh > /home/stor2rrd/stor2rrd/load_dothillperf.out 2>&1
    
    Assure there is already an entry with the UI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD UI (just ONE entry of load.sh must be there)
    5 * * * * /home/stor2rrd/stor2rrd/load.sh > /home/stor2rrd/stor2rrd/load.out 2>&1
    
  • Let run the storage agent for 15 - 20 minutes to get data, then:
    $ cd /home/stor2rrd/stor2rrd
    $ ./load.sh
    
  • Go to the web UI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

Troubleshooting

  • Assure SMI-S is working for user stor2rrd. Adjust password and storage_hostname in example below:
    $ /usr/bin/wbemcli -nl -t -noverify ein 'http://stor2rrd:<password>@<storage_hostnamew>:5988/root/smis:SMI_Controller'
      192.168.1.1:5988/root/smis:SMI_Controller.Name="208000c0ff261f53:A",CreationClassName="SMI_Controller"
      192.168.1.2:5988/root/smis:SMI_Controller.Name="208000c0ff261f53:B",CreationClassName="SMI_Controller"
    
    When it does not work then check user rights of stor2rrd user (must have "smis"), network visibility (firewall), user/password combination.

In case of usage of Virtual Appliance
  • Use local account lpar2rrd for hosting of STOR2RRD on the virtual appliance
  • Use /home/stor2rrd/stor2rrd as the product home
The product uses SMI-S and XML API interfaces natively provided by the storage.

Storage connectivity

  • Allow access from the STOR2RRD host to the storage on ports 80 (HTTP) and 5988 (SMI-S) and optionally 22 (ssh) if you use cmd line configuration as in examples below (you can use the storage UI instead).
    Test if ports are open:
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 80
      Connection to "192.168.1.1" on port "80" is ok
    
  • Assure that SMI-S 5988 and HTTP protocols are enabled on the storage
    $ ssh -l manage <storage_hostname>
    # show protocols
      Service and Security Protocols
      ------------------------------
      Web Browser Interface (HTTP): Enabled
      Secure Web Browser Interface (HTTPS): Enabled
      Command Line Interface (Telnet): Disabled
      Secure Command Line Interface (SSH): Enabled
      Storage Management Initiative Specification (SMI-S): Disabled
      Unsecure Storage Management Initiative Specification (SMI-S 5988): Enabled
      ...
    
    If SMI-S 5988 or HTTP is not enabled:
    # set protocols usmis enabled
    # set protocols http enabled
    
  • Create user stor2rrd on the storage with monitor role and allow SMI-S and XML API.
    Adjust password to your prefered one from used Test1234.
    $ ssh -l manage <storage_hostname>
    # create user interfaces smis,wbi locale English password Test1234 roles monitor stor2rrd
    
  • In case you want to use SSL access to the storage
    enable ports 5989 and 443 and start up SSL services on the storage instead of non SSL ones
    # set protocols smis enabled
    # set protocols https enabled
    
    Use this fix to enable SSL communication if you run STOR2RRD v2.00 or v2.01: dothill-ssl.tar.gz.
    $ gunzip dothill-ssl.tar.gz
    $ ls -l dothill-ssl.tar
      -rw-rw-r-- 1 lpar2rrd lpar2rrd 92160 Jun  5 14:41 dothill-ssl.tar
    $ cd /home/stor2rrd/stor2rrd
    $ tar xvf dothill-ssl.tar
      -rwxr-xr-x lpar2rrd/lpar2rrd 4081  2017-06-01 13:34 bin/dothill_apitest.pl
      -rwxr-xr-x lpar2rrd/lpar2rrd 81664 2017-06-05 11:59 bin/dothillperf.pl
    
    kill all running  dothillperf.pl processes
    

Install prerequisites

Skip that in case of Virtual Appliance
  • Linux:
    Install sblim-wbemcli package:
    # yum list |grep sblim-wbemcli
      sblim-wbemcli.x86_64                       1.6.2-9.el7                 base
    # yum install sblim-wbemcli     # RedHat
    # apt-get install sblim-wbemcli # Debian based (Ubuntu etc)
    # /usr/bin/wbemcli -noverify -nl ei https://<storage_hostname>:5988/root/smis:cim_computersystem
      *
      * ./wbemcli: Http Exception: Username/password required.
      *
    
    If you prefere to use https on port 5989 then you must use wbemcli with this patch 0002742
    Download the package from:
    Test the package:
    # rpm -q sblim-wbemcli
      sblim-wbemcli-1.6.3-31.1.x86_64
    # /usr/bin/wbemcli -v
      * wbemcli Version 1.6.3
    # /usr/bin/wbemcli -noverify -nl ei http://<storage_hostname>:5988/root/smis:cim_computersystem
      *
      * ./wbemcli: Http Exception: Username/password required.
      *
    
  • AIX:
    Download and install
    # rpm -Uvh libffi-3.1-1.aix5.1.ppc.rpm --nodeps
    # rpm -Uvh libiconv-1.14-2.aix5.1.ppc.rpm --nodeps
    # rpm -Uvh libidn-1.29-1.aix5.1.ppc.rpm --nodeps
    # rpm -Uvh libssh2-1.4.3-2.aix5.1.ppc.rpm --nodeps
    # rpm -Uvh openssl-1.0.1j-1.aix5.1.ppc.rpm
    # rpm -Uvh openldap-2.4.23-0.3.aix5.1.ppc.rpm
    # rpm -Uvh curl-7.27.0-1.aix5.1.ppc.rpm
    # rpm -Uvh wbemcli-1.6.3-1.aix5.1.ppc.rpm
    
    # LIBPATH=/opt/freeware/lib; export LIBPATH
    # /opt/freeware/bin/wbemcli -noverify -nl ei http://<storage_hostname>:5988/root/smis:cim_computersystem
      *
      * ./wbemcli: Http Exception: Username/password required.
      *
    

STOR2RRD storage configuration

  • All actions below under stor2rrd user (lpar2rrd on Virtual Appliance)

  • STOR2RRD v2.60+:
    Add storage into configuration from the UI:
    Settings icon ➡ Storages ➡ New ➡ Vendor:device ➡ Lenovi S series
    Storage management

  • STOR2RRD v2.50 and olders:
    • Uncomment (remove the hash) example line and adjust it:
      $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
      
      #
      # Dot Hill AssuredSAN and its rebrands like Lenovo S2200 or HPE MSA2000/P2000, Dell EMC PowerVault ME4 Series, Quantum StorNex
      #
      # Storage Alias:DOTHILL:Controller_A IP address or hostname:Controller_B IP address or hostname:[http|https]:storage user:encrypted password:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
      # to encrypt password use: perl ./bin/spasswd.pl
      #DOTHILL_AssuredSAN-alias01:DOTHILL:ctla_host.example.com:ctlb_host.example.com:http:stor2rrd:KT4mXVI9N0BUPjZdVQo=:1024:10:
      #LENOVO_S2000-alias01:DOTHILL:ctla_host.example.com:ctlb_host.example.com:http:stor2rrd:KT4mXVI9N0BUPjZdVQo=
      #HPE_MSA2000-alias01:DOTHILL:ctla_host.example.com:ctlb_host.example.com:http:stor2rrd:KT4mXVI9N0BUPjZdVQo=
      
      Lenovo-alias01:DOTHILL:192.168.1.1:192.168.1.2:http:stor2rrd:KT4mXVI9N0BUPjZdVQo=
      
      Above shows storage with IP 192.168.1.1 which will be visible in the UI as Lenovo-alias01

      Use encrypted password in storage line above, encrypt it like this:
      Do not use shell special characters like @#!?|$*[]\{}`"'& in the password, use rather ;:.+- instead.
      $ cd /home/stor2rrd/stor2rrd
      $ perl bin/spasswd.pl
      
        Encode password for storage authentication:
        -------------------------------------------
        Enter password:
        Re-enter password:
      
        Copy the following string to the password field of the corresponding line in etc/storage-list.cfg:
      
        KT4mXVI9N0BUPjZdVQo=
      
    • Assure you have enough of disk space on the filesystem where is STOR2RRD installed
      Roughly you might count 2 - 30 GB per a storage (it depends on number of volumes, 30GB for 5000 volumes)
      $ df -g /home   # AIX
      $ df -h /home   # Linux
      
    • Check storage connectivity
      $ cd /home/stor2rrd/stor2rrd
      $ ./bin/config_check.sh 
        =====================
        STORAGE: Lenovo-alias01 : DOTHILL
        =====================
        connection ok
      
      If you use HTTPS and do not have installed Perl SSL support then you get an error:
      "Missing LWP::Protocol::https", "Connection reset by peer" or "500 SSL negotiation failed"
      Follow this or switch to HTTP on the storage line in etc/storage-list.cfg.

      Newer storage firmware releases (GL225R003) might require higher user role for SMI-S access.
      Try to use "manage" role if you get this error:
      *
      * /usr/bin/wbemcli: Http Exception: Invalid username/password.
      *
      
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -l | grep load_dothillperf.sh
    $
    
    Add if it does not exist as above
    $ crontab -e
    
    # DotHill AssuredSAN and its rebrands like Lenovo S series, Lenovo ThinkSystem DS series or HPE MSA2000/P2000
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_dothillperf.sh > /home/stor2rrd/stor2rrd/load_dothillperf.out 2>&1
    
    Assure there is already an entry with the UI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD UI (just ONE entry of load.sh must be there)
    5 * * * * /home/stor2rrd/stor2rrd/load.sh > /home/stor2rrd/stor2rrd/load.out 2>&1
    
  • Let run the storage agent for 15 - 20 minutes to get data, then:
    $ cd /home/stor2rrd/stor2rrd
    $ ./load.sh
    
  • Go to the web UI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

Troubleshooting

  • Assure SMI-S is working for user stor2rrd. Adjust password and storage_hostname in example below:
    $ /usr/bin/wbemcli -nl -t -noverify ein 'http://stor2rrd:<password>@<storage_hostnamew>:5988/root/smis:SMI_Controller'
      192.168.1.1:5988/root/smis:SMI_Controller.Name="208000c0ff261f53:A",CreationClassName="SMI_Controller"
      192.168.1.2:5988/root/smis:SMI_Controller.Name="208000c0ff261f53:B",CreationClassName="SMI_Controller"
    
    When it does not work then check user rights of stor2rrd user (must have "smis"), network visibility (firewall), user/password combination.

In case of usage of Virtual Appliance
  • Use local account lpar2rrd for hosting of STOR2RRD on the virtual appliance
  • Use /home/stor2rrd/stor2rrd as the product home
Product uses Lenovo ThinkSystem Storage Manager for DE Series API for getting data from the stortage.

Storage Manager installation
  • Download and install SMcli package from Lenovo download site.

  • If there is already installed SMcli from IBM to monitor DS3000/4000/5000 storages then it must be removed:
    # /opt/IBM_DS/Uninstall\ IBM\ System\ Storage\ DS\ Storage\ Manager\ 10/Uninstall\ IBM\ System\ Storage\ DS\ Storage\ Manager\ 10
    
  • Install SMcli under root user :
    # umask 022
    # chmod 775 lnvgy_utl_storagemanager_11.52.0A54.0003_linux_x86-64.bin
    # ./lnvgy_utl_storagemanager_11.52.0A54.0003_linux_x86-64.bin  -i console
    
      ===============================================================================
      Select Installation Type
      ------------------------
    
      Please choose the Install Set to be installed by this installer.
    
      ->1- Typical (Full Installation)
        2- Management Station
        3- Host
    
        4- Customize...
    
      ENTER THE NUMBER FOR THE INSTALL SET, OR PRESS  TO ACCEPT THE DEFAULT
       : 2
    
      ===============================================================================
      Installation Complete
      ---------------------
    
      Congratulations. Lenovo ThinkSystem Storage Manager has been successfully
      installed to:
    
       /opt/ThinkSystem/SMgr
    
    # ls -lL /usr/bin/SMcli
      -r-xr-xr-x 1 root root 996 May 17 21:10 /usr/bin/SMcli
    
    In case of any problem check Install logs in /opt/ThinkSystem/SMgr/InstallLogs

  • Stop SMmonitor service
    # /opt/ThinkSystem/SMgr/client/SMmonitor stop 
    # chkconfig --list SMmonitor 
    # chkconfig --level 2345 SMmonitor off 
    alternatively: 
      # rm -f /etc/rc2.d/S99SMmonitor /etc/rc.d/init.d/SMmonitor
    
    Linux systemd:
    # systemctl stop smmonitor.service
    # systemctl disable smmonitor.service
    
  • Allow user stor2rrd run SMcli API (lpar2rrd user on Virtual Appliance)
    Under root execute following:
    # rm -f /var/opt/SM/emwdata_v04_bin.lock /var/opt/SM/pref_01_bin.lock /var/opt/SM/PMServer.lock
    # chown stor2rrd /opt/ThinkSystem/SMgr/client/SMcli /var/opt/SM/prefbackup_01.bin
    # chown stor2rrd /var/opt/SM/emwback_v04.bin /var/opt/SM /var/opt/SM/emwdata_v04.bin
    # chown stor2rrd /var/opt/SM /var/opt/SM/pref_01.bin
    # chmod -f 644 /opt/ThinkSystem/SMgr/jre/lib/security/java.security /usr/SMruntime/jre/lib/security/java.security
    # chmod -f 755 /opt/ThinkSystem/SMgr/client/lib/*
    
    If you do not do it then you get such error by running it under someone else than root:
    (Do not forget to deactivate SMmonitor as above as it can change file rights back to root itself)
    # su - stor2rrd
    $ SMcli -d
      An internal error, error code 12, has occurred.  This is possibly due to
      initialization problems when loading the necessary internal files.  Please check
      your installation of the storage management client. If problems continue 
      to persist, re-install the storage management client.
    
  • Allow "The legacy management interface" via ThinkSystem System Manager (it is necessary only on some firmare releases)
    Lenovo ThinkSystem System Manager

Storage configuration

  • Allow access from the STOR2RRD host to the storage on both controllers on port 2463.
    Test if port is open:
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 2463
      Connection to "192.168.1.1" on port "2463" is ok
    
  • Connect new storage, you must connect both storage controllers
    # su - stor2rrd
    $ SMcli -d
      There are currently no storage subsystems listed in the configuration file. Add
      storage subsystems using the Add Storage Subsystem option in the storage management
      software or by command line.
    $ SMcli -A 192.168.1.1 192.168.1.2
      New storage subsystem was discovered at address 192.168.1.1
      New storage subsystem was discovered at address 192.168.1.2
      SMcli completed successfully
    $ SMcli -d
      DE6000H  ControlerA_hostname  ControlerB_hostname
    
    Use "DE6000H" further for etc/storage-list.cfg configuration

  • Check if the storage needs user authorization (new firmwares allows to specify password for monitor user role):
    $ SMcli -n DE6000H -e -c "show hostTopology;"            
    
    When it fails then use "monitor" role credetials (password can be set in the storage UI):
    $ SMcli -n DE6000H -e -c "show hostTopology;"            
      The operation needs either the 'Administrator' or 'Monitor' password to be set.
    $ SMcli -n DE6000H -p <password> -R monitor -e -c "show hostTopology;"            
    
    Use that credentials in future etc/storage-list.cfg configuration

STOR2RRD storage configuration

  • All actions below under stor2rrd user (lpar2rrd on Virtual Appliance)

  • STOR2RRD v2.60+:
    Add storage into configuration from the UI:
    Settings icon ➡ Storages ➡ New ➡ Vendor:device ➡ Lenovo DE series
    Storage management

  • STOR2RRD v2.50 and olders:
    • Configure storages in etc/storage-list.cfg
      Uncomment (remove the hash) example line and adjust it:
      $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg  
      
      #
      # Lenovo DE series (use DS5K as storage type)
      #
      #storage_alias:DS5K:storage user:user_password:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
      #new storages can be configured to use username/password (use "monitoring" account), old ones do not have this option
      #
      #DE6000H:DS5K:monitor:password:256:10:5
      #DE6000H:DS5K:
      
      DE6000H:DS5K:
      
    • Assure you have enough of disk space on the filesystem where is STOR2RRD installed
      Roughly you might count 2 - 30 GB per a storage (it depends on number of volumes, 30GB for 5000 volumes)
      $ df -g /home   # AIX
      $ df -h /home   # Linux
      
    • Test the storage connectivity:
      $ cd /home/stor2rrd/stor2rrd
      $ ./bin/config_check.sh 
        =======================
        STORAGE: DE6000H : DS5K
        =======================
        /usr/SMclient/SMcli -n DE6000H -e -c "storageSubsystem summary;"
        connection ok
      
      When connection failed and direct command says this:
      $ SMcli -n DE6000H -e -c "show hostTopology;"
        Warning! No Monitor password is set for the storage subsystem.
      
      Then it looks like that the latest firmwares require enabling of password authorization.
      Set password for monitor account in the storage UI and then place same password into etc/storage-list.cfg
      Do not use shell special characters like #!?|$*[]\{}`"'& in the password, use ;:.+-%@ instead.
      DE6000H:DS5K:monitor:password01:
      
      Then verify connection via:
      $ ./bin/config_check.sh DE6000H
      ...
      
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -l | grep load_ds5perf.sh 
    $
    
    Add if it does not exist as above
    $ crontab -e  
    
    # Lenovo DE series (use same script load_ds5perf.sh as IBM DS3000/DS4000/DS5000 and NetApp E-series)
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_ds5perf.sh > /home/stor2rrd/stor2rrd/load_ds5perf.out 2>&1
    
    Assure there is already an entry with the UI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD UI (just ONE entry of load.sh must be there)
    5 * * * * /home/stor2rrd/stor2rrd/load.sh > /home/stor2rrd/stor2rrd/load.out 2>&1
    
  • Let run the storage agent for 15 - 20 minutes to get data, then:
    $ cd /home/stor2rrd/stor2rrd
    $ ./load.sh
    
  • Go to the web UI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.