Free SAN and storage performance and capacity monitoring

EMC 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

Prerequisites

  • Allow access from the STOR2RRD host to the storage service processors ports 6389,443 (TCP).
    Test if ports are open:
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 6389
      Connection to "192.168.1.1" on port "6389" is ok
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 443
      Connection to "192.168.1.1" on port "443" is ok
    
  • Install Navisphere Secure CLI. Download it from EMC support page:
    (Note: use always the latest version to avoid compatability issues)
    • AIX download of Navisphere CLI (AIX) 7.33.9.1.84-1
      Install it as a lpp source, it will be installed into /usr/bin/naviseccli
      # smitty installp ➡ select actuall directory ➡ find package F4 ➡ install
      
    • Linux download of Navisphere CLI (Linux x64) 7.33.9.1.84-1
      It will be installed into /opt/Navisphere/bin/naviseccli)
      # rpm -i NaviCLI-Linux-64-x86-en_US-7.33.9.1.84-1.x86_64.rpm
      
    • Debian, Ubuntu packages:
      Use either Debian download or conver it via "alien" cmd
      # alien NaviCLI-Linux-64-x86-en_US-7.33.9.1.84-1.x86_64.rpm
        NaviCLI-Linux-64-x86-en_US-7.33.9.1.84-1.x86_64.deb generated
      
    During installation select low verifying level.
    In case you select "medium" then accept and store certificate during first manuall connection to the storage.

  • Create stor2rrd user on the storage (lpar2rrd on Virtual Appliance)
    Open the storage GUI and navigate to storage ➡ settings ➡ user management ➡ local users ➡ add.
    Create user account stor2rrd with role operator.
    Do not use shell special characters like #!?|.*[]\{} in the password

  • Allow statistics logging on the storage
    GUI ➡ Storage ➡ System properties ➡ Statistics logging ➡ yes

  • Configure naviseccli, on AIX use /usr/bin/naviseccli (lpar2rrd user on Virtual Appliance)
    User your own scope <0 - global; 1 - local; 2 - LDAP>
    # su - stor2rrd
    $ /opt/Navisphere/bin/naviseccli -addusersecurity -scope 1 -password XXXXXXXXXXX -user stor2rrd 
    $ /opt/Navisphere/bin/naviseccli -h <storage controller IP/hostname> getcontrol -all
      System Fault LED:              OFF
      Statistics Logging:            ON
                    ...
    
    Statistics logging must be ON

    If you get bellow error assure you use right user/password combination and scope (loca/global/LDAP)
    $ /opt/Navisphere/bin/naviseccli -h <storage controller IP/hostname> getcontrol -all
      Error returned from the Management Server on 192.168.1.1
      Authentication failed. Possible reasons for failure are invalid security file, invalid username, password and/or scope.
    
    Remove user and define it again with different scope (like below) or user credentials:
    $ /opt/Navisphere/bin/naviseccli -RemoveUserSecurity 
    $ /opt/Navisphere/bin/naviseccli -addusersecurity -scope 0 -password XXXXXXXXXXX -user stor2rrd 
    
    If you have selected medium security level then accept and store certificate
    $ /opt/Navisphere/bin/naviseccli -h 10.176.207.230  getsptime
      Unable to validate the identity of the server.  There are issues with the certificate presented.
      Only import this certificate if you have reason to believe it was sent by a trusted source.
      Certificate details:
      Subject:        CN=10.176.207.230,CN=VNX46EM_SPA,OU=CLARiiON
      Issuer: CN=10.176.207.230,CN=VNX46EM_SPA,OU=CLARiiON
      Serial#:        2c3c9aaa
      Valid From:     20140724193051Z
      Valid To:       20190723193051Z
      Would you like to [1]Accept the certificate for this session, [2] Accept and store ,[3] Reject the certificate?
      Please input your selection(The default selection is [1]):
      --> select "2"
    
      Time on SP A: 04/04/17 09:53:54
      Time on SP B: 04/04/17 09:49:00
    

STOR2RRD storage configuration

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

  • Configure storages in etc/storage-list.cfg
    Uncomment (remove the hash) example line and adjust it:
    $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
    
    #
    # EMC VNX block
    #
    # Storage Alias:VNX:IP address SPA:IP address SPB:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM
    #EMC-VNX-block_alias:VNX:192.168.1.2:192.168.1.3:0:5
    
    EMC-VNX-block_alias01:VNX:192.168.1.2:192.168.1.3
    
  • 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: VNX-block_alias01: VNX
      ===============================
      first IP address : 192.168.1.2
      /opt/Navisphere/bin/naviseccli -h 192.168.1.2 getsptime
        Time on SP A: 11/03/16 12:56:45
        Time on SP B: 11/03/16 12:56:57
      connection ok
    
      second IP address : 192.168.1.3
      /opt/Navisphere/bin/naviseccli -h 192.168.1.3 getsptime
        Time on SP A: 11/03/16 12:56:47
        Time on SP B: 11/03/16 12:56:58
      connection ok
    
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -e
    
    # EMC VNX storage agent
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_vnxperf.sh > /home/stor2rrd/stor2rrd/load_vnxperf.out 2>&1
    
    Assure there is already an entry with the GUI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD GUI (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 GUI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

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

Prerequisites

  • Allow access from the STOR2RRD host to the storage on port 22 (do not use data mover IP!).
    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 a user on the storage for download of perf data (lpar2rrd on Virtual Appliance)
    • user name: stor2rrd
    • expiration: 99999
    • CLI access allowed
    • roles: opadmin (operator)

  • Create ssh-keys on STOR2RRD host under stor2rrd user if do not exist yet.
    It should already exist on the Virtuall 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
      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 stor2rrd
    $ scp ~/.ssh/id_rsa.pub stor2rrd@<storage controller>:/tmp/id_rsa.pub
    $ ssh stor2rrd@<storage controller>
      cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys
      rm /tmp/id_rsa.pub
      exit 
    
  • test connectivity, you should no be prompted for password:
    $ ssh -q stor2rrd@<storage controller> "export NAS_DB=/nas; nas_server -i server_2"
      EMC VNX Control Station Linux release 3.0 (NAS 7.1.79) 
      id      type  acl  slot groupID  state  name 
      1        1    0     2              0    server_2 
      2        4    0     3              0    server_3 
    

STOR2RRD storage configuration

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

  • Configure storages in etc/storage-list.cfg
    Uncomment (remove the hash) example line and adjust it:
    $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
    
    #
    # EMC VNX for file (Celerra)
    #
    # Storage Alias:VNXF:IP address:USER:ssh_key_file:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
    #VNX-file_alias:VNXF:192.168.2.1:stor2rrd:/home/stor2rrd/.ssh/id_rsa:0:0:5
    VNX-file_alias01:VNXF:192.168.2.1:stor2rrd
    
  • 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: VNX-file_alias01e01: VNXF
      ==================================
      connection ok
    
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -e
    
    # EMC VNX for file storage agent
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_vnxfperf.sh > /home/stor2rrd/stor2rrd/load_vnxfperf.out 2>&1
    
    Assure there is already an entry with the GUI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD GUI (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 GUI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

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

Prerequisites

  • Allow access from the STOR2RRD host to the storage on port 443 (HTTPS).
    Test if port is open:
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 443
      Connection to "192.168.1.1" on port "443" is ok
    
  • Unity Unisphere UEM CLI download
    https://support.emc.com/downloads
    ➡ Unity ➡ Unity family ➡ PRODUCT TOOL ➡ more ➡ Unity Unisphere UEM CLI ➡ RedHat Linux 64-bit

  • Supported platforms (unfortunatelly there is no AIX support for UEM CLI as per November 2016 at least)
    • Linux RedHat
    • SuSE Linux
    • Solaris (x86 & Sparc)
    • Debian, Ubuntu package:
      Convert RedHat rpm package via "alien" cmd
      # alien UnisphereCLI-Linux-64-x86-en_US-4.0.1.1.3166-1.x86_64.rpm
        UnisphereCLI-Linux-64-x86-en_US-4.0.1.1.3166-1.i386.deb generated
      
  • Unisphere API installation
    # umask 022
    # rpm -i UnisphereCLI-Linux-64-x86-en_US-4.0.1.1.3166-1.x86_64.rpm
    
  • Setting security level under root user:
    # /opt/emc/uemcli/bin/setlevel.sh low
      Setting low verifying level.....
    
    You can even use "medium" level, then you have to accept and store certificate at the first connection.
    1. under root:
      # /opt/emc/uemcli/bin/setlevel.sh medium
        Setting medium verifying level.....
      
    2. under stor2rrd user:
      $ uemcli -d 192.168.1.1 -u Local/admin -p "XXXXXX" /user/account show
        Remote certificate:
        Issuer:     CN=EMC-Unity
        Subject:    CN=EMC-Unity
        Valid from: 2016-07-15 09:54:57 Z
        Valid to:   2019-07-15 09:54:57 Z
        Serial:     0094aea927526b466e
        Id:         2595584890
        Would you like to:
          [1] Accept the certificate for this session
          [2] Reject the certificate
          [3] Accept and store
        Please input your selection (The default selection is [1]): 3
      
        Storage system address: 192.168.1.1
        Storage system port: 443
        HTTPS connection
        1:    ID   = user_admin
              Name = admin
              Role = administrator
              Type = local
      
  • create user stor2rrd under operator role on the storage.
    You might skip it and use already existing account with minimal rights.
    Do not use shell special characters like #!?|.*[]\{} in the password.
    Cmd returns "Error code: 0x6000068" if you do not pass them.
    Do not use directly /opt/emc/uemcli/bin/uemcli, use always /usr/bin/uemcli.
    $ uemcli -d 192.168.1.1 -u Local/admin -p "XXXXXX" /user/account show
      Storage system address: 192.168.1.1
      Storage system port: 443
      HTTPS connection
      1:    ID   = user_admin
            Name = admin
            Role = administrator
            Type = local
    ...
    
    $ uemcli -d 192.168.1.1 -u Local/admin -p "XXXXXX" /user/account create -name stor2rrd -role operator -type local -passwd "Test2test_"
      Storage system address: 192.168.1.1
      Storage system port: 443
      HTTPS connection
    
      ID = user_stor2rrd
      Operation completed successfully.
    

STOR2RRD storage configuration

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

  • Configure storages in etc/storage-list.cfg
    Uncomment (remove the hash) example line and adjust it:
    $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
    
    #
    # EMC Unity
    #
    # Storage Alias:UNITY:IP address or hostname:user:password:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
    # to encrypt password use: perl ./bin/spasswd.pl
    #EMC-Unity:UNITY:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=:0:0:5
    #EMC-Unity:UNITY:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    EMC-Unity_alias01:UNITY:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    Above shows the storage with IP 192.168.1.1 which will be visible in the GUI as EMC-Unity_alias01

    Use encrypted password in storage line above:
    $ 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
    
  • Test the storage connectivity:
    $ cd /home/stor2rrd/stor2rrd
    $ ./bin/config_check.sh
      =====================================
      STORAGE: EMC-Unity_alias01: UNITY
      =====================================
      connection ok
    
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -e
    
    # EMC Unity storage agent
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_unityperf.sh > /home/stor2rrd/stor2rrd/load_unityperf.out 2>&1
    
    Assure there is already an entry with the GUI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD GUI (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 GUI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

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
Storage agent uses the Unisphere as data source, therefore only connection to the Unisphere is necessary to get performance statistic from all VMAX boxes attached there.
Unispheres 1.6.x and 8.1-3 are supported.

Prerequisites

  • Allow access from the STOR2RRD host to the Unisphere on port 8443 (TCP).
    Test if port is open:
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 8443
      Connection to "192.168.1.1" on port "8443" is ok
    
  • Create user stor2rrd under "performance monitor" role on Unisphere.

  • Allow statistics logging on the Unisphere
    GUI ➡ Performance ➡ Settings ➡ System Registrations ➡ Diagnostics ➡ On (Diagnostics interval 5 minutes)
    Unisphere 1.6
    Unisphere 1.6
    Unisphere 8
    Unisphere 8

STOR2RRD storage configuration

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

  • Configure storages in etc/storage-list.cfg
    Uncomment (remove the hash) example line and adjust it.
    Fill in Symmetrix ID. You can find it in Unisphere.
    Each VMAX has 1 configuration line. (unique storage name alias and unique Symmetrix ID).
    $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
    
    #
    # EMC VMAX
    #
    # Storage Alias:VMAX:Symmetrix id:Unisphere IP or hostname:Unisphere port:storage user:encrypted password:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
    # to encrypt password use: perl ./bin/spasswd.pl
    #EMC-VMAX-01-alias:VMAX:0002957XXXXX:192.168.15.155:8443:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    EMC-VMAX-01:VMAX:0002957XXXXX:192.168.1.2:8443:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    Above shows the storage with IP 192.168.1.1 which will be visible in the GUI as EMC-VMAX-01

    Use encrypted password in storage line above:
    $ 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
    
  • Test the storage connectivity:
    $ cd /home/stor2rrd/stor2rrd
    $ ./bin/config_check.sh VMAX_alias01
      ===============================
      STORAGE: VMAX_alias01: VMAX
      ===============================
      connection ok
    
    If you get an errors like "Missing LWP::Protocol::https", "Connection reset by peer" or "500 SSL negotiation failed" then follow this.

  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -e
    
    # VMAX storage agent
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_vmaxperf.sh > /home/stor2rrd/stor2rrd/load_vmaxperf.out 2>&1
    
    Assure there is already an entry with the GUI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD GUI (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 GUI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

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
STOR2RRD storage agent uses these APIs:
  • Performance data via ssh: default VPLEX data collectors available through ssh (port 22) : read only access
  • Configuration data via REST API: VPLEX Element Manager API (port 443)

Storage access options

  • VPLEX 5 full admin access
  • VPLEX 5 non storage UI neither VPLEXcli access
    This kind of access requires only ssh access to VPLEX management host to get files with perf data.
    This will miss in data then:
    • Host section
    • Host mapping (HOST vrs Volume relationship)
    • Host TOP
    • Health status
    • Capacity
  • VPLEX 6 access under vplexuser role

Prerequisites

  • Allow access from the STOR2RRD host to the VPLEX on ports 22 & 443 (TCP).
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 22
      Connection to "192.168.1.1" on port "22" is ok
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 443
      Connection to "192.168.1.1" on port "443" is ok
    
  • Create user stor2rrd on the VPLEX host under "users" group and exchange ssh-keys.
    This will allow download perfromance data and some basic configuration.
    Use vplexuser role on VPLEX 6.
    • Create ssh keys if it does not exist yet in /home/stor2rrd/.ssh/id_rsa (type enter instead of passphrase)
      $ ssh-keygen -t rsa
        Generating public/private rsa key pair.
        Enter file in which to save the key (/home/stor2rrd/.ssh/id_rsa):
        ...
      $ cat ~/.ssh/id_rsa.pub
      AF5afPdciUTJ0PYzB6msRxFrCuDSqDwPshq.....
      
      
    • Create stor2rrd user via VPlexcli under admin priviliges
      # ssh service@VPLEX01
      
      service@VPLEX01:~> vplexcli 
          Trying ::1... 
          Connected to localhost. 
          Escape character is '^]'. 
          Enter User Name: admin 
          Password: 
      
      VPlexcli:/> user add -u stor2rrd
        admin password: 
        New password: 
        Confirm password: 
      
    • VPLEX6 user rights
      VPlexcli:/> ll /management-server/users/local/stor2rrd/
        Name          Value
        ------------  --------
        role-name     vplexuser
        shell-access  true
        user-name     stor2rrd
      
    • Exchange SSH keys
      admin@VPLEX01:~> su - stor2rrd
        Password:
        Password change requested. Choose a new password.
        Old Password:
        New Password:
        Reenter New Password:
      stor2rrd@VPLEX01:~> pwd
        /home/stor2rrd
      stor2rrd@VPLEX01:~> mkdir .ssh 
      stor2rrd@VPLEX01:~> chmod 700 .ssh
        echo "ssh-rsa ...." >> .ssh/authorized_keys
        chmod 600 .ssh/authorized_keys
      stor2rrd@VPLEX01:~> grep stor2rrd /etc/passwd
        stor2rrd:x:1003:100::/home/stor2rrd:/bin/bash 
      stor2rrd@VPLEX01:~> egrep "^user|stor2rrd" /etc/group|grep 100 
        users:x:100: 
        groupAllUsr:!:1002:service,admin,stor2rrd 
      
      User stor2rrd must be created on all VPLEX systems (clusters).

    • Test connection, you should login without typing of password:
      $ ssh vplex01 -l stor2rrd
      stor2rrd@VPLEX01:~> exit
      
      GUI access to https://vplex01 as stor2rrd does not work

    • Allow access to the storage UI (via REST API) under admin priviliges on VPLEX 5
      If you do want to allow it then it will work but without this data:
      • Host section
      • Host mapping (HOST vrs Volume relationship)
      • Host TOP
      • Health status
      • Capacity

    • VPLEX 6 apparently starts VPLEXcli automatically after log on.
      This must be disabled to allow login only to operating system.
      There is a way (perhaps commenting out starting VPLEXcli in .bash_profile or something like that), not sure here as for now.

  • Assure that all monitors we use are running (collecting data), they are all default monitors and should run:
    VPlexcli:/> ll /monitoring/directors/*/monitors/
      /monitoring/directors/director-1-1-A/monitors:
      Name                                                            Ownership  Collecting  Period  Average  Idle   Bucket  Bucket  Bucket  Bucket
      --------------------------------------------------------------  ---------  Data        ------  Period   For    Min     Max     Width   Count
      --------------------------------------------------------------  ---------  ----------  ------  -------  -----  ------  ------  ------  ------
      director-1-1-A_PERPETUAL_vplex_sys_perf_mon_v19                 true       true        5s      4.97s    2s     -       -       -       64
      director-1-1-A_VIRTUAL_VOLUMES_PERPETUAL_MONITOR                true       true        1min    1min     33s    -       -       -       64
    
      /monitoring/directors/director-1-1-B/monitors:
      Name                                              Ownership  Collecting  Period  Average  Idle  Bucket  Bucket  Bucket  Bucket
      ------------------------------------------------  ---------  Data        ------  Period   For   Min     Max     Width   Count
      ------------------------------------------------  ---------  ----------  ------  -------  ----  ------  ------  ------  ------
      director-1-1-B_PERPETUAL_vplex_sys_perf_mon_v19   true       true        5s      5.05s    4s    -       -       -       64
      director-1-1-B_VIRTUAL_VOLUMES_PERPETUAL_MONITOR  true       true        1min    60s      33s   -       -       -       64
      ...
    
    If some do not running then use this procedure to enable it.

STOR2RRD storage configuration

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

  • Configure storages in etc/storage-list.cfg
    Uncomment (remove the hash) example line and adjust it.
    Fill in VPLEX cluster name. You can find it in the GUI.
    Each VPLEX cluster has 1 configuration line. (unique storage name alias and unique VPLEX cluster name).
    $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
    
    #
    # EMC VPLEX
    #
    # Storage Alias:VPLEX:Cluster name:Mgmt server IP or hostname:Mgmt server ssh port:Mgmt server user:use API [1|0] ([yes|no]):Unisphere/API IP or hostname:API port:API user name:API encrypted password:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
    # to encrypt password use: perl ./bin/spasswd.pl
    # If you do not use VPLEX API access then you do not need to fill in API fields, leave them empty 
    #EMC-VPLEX_alias01:VPLEX:VPLEX-cluster-name:vplex_mgmt.example.com:22:stor2rrd:0:vplex_api.example.com:443:stor2rrd:KT4mXVI9N0BUPjZdVQo=:1024:10:
    #EMC-VPLEX_alias01:VPLEX:VPLEX-cluster-name:vplex_mgmt.example.com:22:stor2rrd:0:vplex_api.example.com:443:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    EMC-VPLEX-01:VPLEX:VPLEX-cluster01:192.168.1.1:22:stor2rrd:0:::
    EMC-VPLEX-02:VPLEX:VPLEX-cluster01:192.168.1.2:22:stor2rrd:1:192.168.1.2:443:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    Above shows two VPLEXes
    1. one with IP 192.168.1.1 which will be visible in the GUI as EMC-VPLEX-01
      It does not have VPLEX API access configured
    2. one with IP 192.168.1.2 which will be visible in the GUI as EMC-VPLEX-02
      It has VPLEX API access configured. HOST, HW event log and mapping will work there, but admin role

    Use encrypted password in storage line above:
    $ 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
    
  • Test the storage connectivity:
    $ cd /home/stor2rrd/stor2rrd
    $ ./bin/config_check.sh EMC-VPLEX-01
      ===============================
      STORAGE: EMC-VPLEX-01: VPLEX
      ===============================
      connection ok
    
    If you get an error about missing LWP::Protocol::https then install as per this manual

  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -e
    
    # VPLEX storage agent
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_vplexperf.sh > /home/stor2rrd/stor2rrd/load_vplexperf.out 2>&1
    
    Assure there is already an entry with the GUI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD GUI (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 GUI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

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

Prerequisites

  • Allow access from the STOR2RRD host to the storage service processors on port 443 (TCP).
    Test if port is open:
    $ perl /home/stor2rrd/stor2rrd/bin/conntest.pl 192.168.1.1 443
      Connection to "192.168.1.1" on port "443" is ok
    
  • VNXe Unisphere UEM CLI download
    If you have also EMC Unity in place then use Unity UEM CLI which works also for VNXe.
    VNXe UEM CLI does not support Unity.
    https://support.emc.com/downloads
    VNX/VNXe family ➡ VNXe1/2 series ➡ ADD-ONS ➡ More ➡ VNXe Unisphere CLI ➡ Linux 64-bit

  • Supported platforms (unfortunatelly there is no AIX support for UEM CLI as per November 2016 at least)
    • Linux RedHat
    • SuSE Linux
    • Solaris (x86 & Sparc)
    • Debian, Ubuntu package:
      Convert RedHat rpm package via "alien" cmd
      # alien UnisphereCLI-Linux-64-x86-en_US-4.0.1.1.3166-1.i386.rpm
        UnisphereCLI-Linux-64-x86-en_US-4.0.1.1.3166-1.i386.deb generated
      
  • Unisphere API installation
    # umask 022
    # rpm -i UnisphereCLI-Linux-64-x86-en_US-4.0.1.1.3166-1.x86_64.rpm
    
  • Setting security level under root user:
    # /opt/emc/uemcli/bin/setlevel.sh low
      Setting low verifying level.....
    
    You can even use "medium" level, then you have to accept and store certificate at the first connection.
    1. under root:
      # /opt/emc/uemcli/bin/setlevel.sh medium
        Setting medium verifying level.....
      
    2. under stor2rrd user:
      $ uemcli -d 192.168.1.1 -u Local/admin -p "XXXXXX" /user/account show
        Remote certificate:
        Issuer:     CN=EMC-Unity
        Subject:    CN=EMC-Unity
        Valid from: 2016-07-15 09:54:57 Z
        Valid to:   2019-07-15 09:54:57 Z
        Serial:     0094aea927526b466e
        Id:         2595584890
        Would you like to:
          [1] Accept the certificate for this session
          [2] Reject the certificate
          [3] Accept and store
        Please input your selection (The default selection is [1]): 3
      
        Storage system address: 192.168.1.1
        Storage system port: 443
        HTTPS connection
        1:    ID   = user_admin
              Name = admin
              Role = administrator
              Type = local
      
  • create user stor2rrd under operator role on the storage.
    You might skip it and use already existing account with minimal rights.
    Do not use shell special characters like #!?|.*[]\{} in the password.
    Cmd returns "Error code: 0x6000068" if you do not pass them.
    Do not use directly /opt/emc/uemcli/bin/uemcli, use always /usr/bin/uemcli.
    $ uemcli -d 192.168.1.1 -u Local/admin -p "XXXXXX" /user/account show
      Storage system address: 192.168.1.1
      Storage system port: 443
      HTTPS connection
      1:    ID   = user_admin
            Name = admin
            Role = administrator
            Type = local
    ...
    
    $ uemcli -d 192.168.1.1 -u Local/admin -p "XXXXXX" /user/account create -name stor2rrd -role operator -type local -passwd "Test2test_"
      Storage system address: 192.168.1.1
      Storage system port: 443
      HTTPS connection
    
      ID = user_stor2rrd
      Operation completed successfully.
    

STOR2RRD storage configuration

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

  • Configure storages in etc/storage-list.cfg
    Uncomment (remove the hash) example line and adjust it:
    $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
    
    #
    # EMC VNXe 
    #
    # Storage Alias:VNXE:IP address or hostname:user:password:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
    # to encrypt password use: perl ./bin/spasswd.pl
    #EMC-VNXe:VNXE:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=:0:0:5
    #EMC-VNXe:VNXE:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    EMC-VNXe_alias01:UNITY:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    Above shows the storage with IP 192.168.1.1 which will be visible in the GUI as EMC-VNXe_alias01

    Use encrypted password in storage line above:
    $ 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
    
  • Test the storage connectivity:
    $ cd /home/stor2rrd/stor2rrd
    $ ./bin/config_check.sh
      =====================================
      STORAGE: EMC-VNXe_alias01: VNXE 
      =====================================
      connection ok
    
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -e
    
    # EMC VNXe storage agent
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_vnxeperf.sh > /home/stor2rrd/stor2rrd/load_vnxeperf.out 2>&1
    
    Assure there is already an entry with the GUI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD GUI (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 GUI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

It is under development. Expected release is end of Q4 2017.

Anyone willing to beta test it? Contact us at 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

Prerequisites

  • Allow access from the STOR2RRD host to the storage service processors on port 22 (TCP).
    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 user stor2rrd under user role on the storage.
    EMC DataDomain user screenshot
  • exchange ssh keys
    $ ssh <data domain host> -l stor2rrd
    stor2rrd@data_domain_host> adminaccess add ssh-keys
      Enter the key and then press Control-D, or press Control-C to cancel.
      ssh-rsa AAAAB3NzaC1yc2EAA ....
    

STOR2RRD storage configuration

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

  • Configure storages in etc/storage-list.cfg
    Uncomment (remove the hash) example line and adjust it:
    $ vi /home/stor2rrd/stor2rrd/etc/storage-list.cfg
    
    #
    # EMC DataDomain
    #
    # Storage Alias:VNXE:IP address or hostname:user:password:VOLUME_AGG_DATA_LIM:VOLUME_AGG_IO_LIM:SAMPLE_RATE_MINS
    # to encrypt password use: perl ./bin/spasswd.pl
    #EMC-DataDomain01:DD:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=:0:0:5
    #EMC-DataDomain01:DD:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    EMC-DataDomain01_alias01:DD:192.168.1.1:stor2rrd:KT4mXVI9N0BUPjZdVQo=
    
    Above shows the storage with IP 192.168.1.1 which will be visible in the GUI as EMC-DataDomain01_alias01

    Use encrypted password in storage line above:
    $ 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
    
  • Test the storage connectivity:
    $ cd /home/stor2rrd/stor2rrd
    $ ./bin/config_check.sh EMC-DataDomain01_alias01
      =====================================
      STORAGE: EMC-DataDomain01_alias01: DD
      =====================================
      connection ok
    
  • Schedule to run storage agent from stor2rrd crontab (lpar2rrd on Virtual Appliance, it might already exist there)
    $ crontab -e
    
    # EMC DataDomain storage agent
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * /home/stor2rrd/stor2rrd/load_ddperf.sh > /home/stor2rrd/stor2rrd/load_ddperf.out 2>&1
    
    Assure there is already an entry with the GUI creation running once an hour in crontab
    $ crontab -e
    
    # STOR2RRD GUI (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 GUI: http://<your web server>/stor2rrd/
    Use Ctrl-F5 to refresh the web browser cache.

 

Links

Download

Others

Contact