Installation of IBM i OS agent

IBM i OS agent main page.
Upgrade instruction.
Licensing details.

LPAR2RRD server

  • Download the latest LPAR2RRD server.

  • Configure LPAR2RRD server as per documentation, add your HMCs ...
    Then you have to start up LPAR2RRD daemon.
    Skip that if you already use the OS agent feature for your AIX/Linux environment.
    # su - lpar2rrd
    $ cd /home/lpar2rrd/lpar2rrd
    $ vi etc/lpar2rrd.cfg
      LPAR2RRD_AGENT_DAEMON=1
    $ ./load.sh
      Starting LPAR2RRD daemon on port:8162 
      ...
    $ ps -ef|grep lpar2rrd-daemon
      lpar2rrd 10289314 1 0 19:46:44 pts/0 0:01 /usr/bin/perl -w /home/lpar2rrd/dev/bin/lpar2rrd-daemon.pl
    $ netstat -an| grep 8162
      tcp4       0      0  *.8162                 *.*                    LISTEN
    

LPAR2RRD IBM i agent

  • Download the latest OS agent for IBM i (R6.1.0+).
    After unzipping you get LPAR2RRD.savf in save file format.

  • Open TCP communication on your network between each IBM i LPAR with the OS agent installed and LPAR2RRD server on port 8162. Connections are initiated from the agent side (IBM i).

  • Create User Profile LPAR2RRD This user profile will be owner of all restored objects in library LPAR2RRD and this user profile is the name of the user profile for the agent being submitted.
    Parameters of CRTUSRPRF command depend on AS400 security policy you have in place.

  • Create save file destination:
    CRTSAVF FILE(QGPL/LPAR2RRD) 
    
  • Execute that only if you installing Enterprise Edition of LPAR2RRD IBM i OS agent.
    It contains ASP latency monitoring.

    Use Grant Object Authority (GRTOBJAUT) command to grant *USE authority for APIs QPMWKCOL and QPMLPFRD:
    GRTOBJAUT OBJ(QSYS/QPMLPFRD) OBJTYPE(*PGM) USER(LPAR2RRD) AUT(*use)
    GRTOBJAUT OBJ(QSYS/QPMWKCOL) OBJTYPE(*PGM) USER(LPAR2RRD) AUT(*use)
    
  • Transfer LPAR2RRD.savf to IBM i system from your PC via ftp.
    All below under LPAR2RRD user account.
    ftp <ph.server.com>
      Connected to as400.
      220-QTCP at 192.168.177.50.
      220 Connection will close if idle more than 5 minutes.
      Name (as400.server.com:lpar2rrd): lpar2rrd
      431 Requested security mechanism not available at this time.
      331 Enter password.
      Password:
      230 LPAR2RRD logged on.
      Remote system type is .
    ftp> bin
    ftp> cd qgpl
    ftp> put LPAR2RRD.savf LPAR2RRD
      local: LPAR2RRD.savf remote: LPAR2RRD
      200 PORT subcommand request successful.
      150 Sending file to member LPAR2RRD in file LPAR2RRD in library QGPL.
      226 File transfer completed successfully.
      3590400 bytes sent in 0.41 secs (9007.2 kB/s)
    ftp> by
    
    Do not forget to logoff from ftp session to do not lock it out.

  • Display library
    DSPSAVF FILE(QGPL/LPAR2RRD) OUTPUT(*)
         LPAR2RRD    *LIB      PROD        LPAR2RRD            152  YES
         ACCEPTFREE  *PGM      CLE         LPAR2RRD            176  YES
         ...
    
  • Restore Library
    RSTLIB SAVLIB(LPAR2RRD) DEV(*SAVF) SAVF(QGPL/LPAR2RRD)  
         MBROPT(*ALL) ALWOBJDIF(*ALL)
      35 object restored from LPAR2RRD to LPAR2RRD.
    
    CHGJOBD JOBD(LPAR2RRD/LPAR2RRD) JOBQ(LPAR2RRD/LPAR2RRD)                   
         TEXT('RTV_SYSSTS') USER(LPAR2RRD) RQSDTA(*NONE) INLLIBL(LPAR2RRD QGPL QTEMP) 
    
    After this command see LPAR2RRD *JOBD object in restored LPAR2RRD library.

  • In the "initial user part of the library list" specify LPAR2RRD library. Parameter INLLIBL in *JOBD object.
    See LPAR2RRD *JOBD object into restored LPAR2RRD library.
    CHGUSRPRF USRPRF(LPAR2RRD) JOBD(LPAR2RRD/LPAR2RRD)   
    
  • Create directory* /home/LPAR2RRD.
    MKDIR DIR('/home/LPAR2RRD')
    
  • Grant rights LPAR2RRD user for *SRVPGM QSYS/QPMLPMGT
    GRTOBJAUT OBJ(QSYS/QPMLPMGT) OBJTYPE(*SRVPGM) USER(LPAR2RRD) AUT(*use)
    
  • Test network connectivity
    For example if hostname of LPAR2RRD server is LPAR2RRD-SERVER.SERVER.COM.
    • ping:
      PING RMTSYS('LPAR2RRD-SERVER.SERVER.COM') 
        Verifying connection to host system LPAR2RRD-SERVER.SERVER.COM at address 192.168.1.2.
        Connection verification statistics: 5 of 5 successful (100 %). 
      
    • telnet:
      TELNET RMTSYS('LPAR2RRD-SERVER.SERVER.COM') PORT(8162) RMTUSER(TESTSTRING) INZWAIT(15)
        Connecting to remote host 192.168.1.2 using port 8162
      
      If you get after 15 seconds "No response from remote host system within open time-out." then it is wrong!.
      Either LPAR2RRD server daemon is not running or TCP connection is filtered on the network by a firewall.
      If connection hanging (it times out in 10 mins) then it is ok, you can interrupt it by:
         SysRq ➡ Enter ➡ 2. End previous request

  • Configure LPAR2RRD server host
    Change Monitor Server Name or IP addr (IPADR) to your running LPAR2RRD server
    This step must be done, because default server IP address for sending data is LOOPBACK.
    • Using hostname:
      CHGCMDDFT CMD(LPAR2RRD/RTV_SYSSTS) NEWDFT('IPADR(LPAR2RRD-SERVER.SERVER.COM)')
      
    • Using IP address:
      CHGCMDDFT CMD(LPAR2RRD/RTV_SYSSTS) NEWDFT('IPADR(''192.168.1.2'')')
      
  • Recommendation: Change User profile LPAR2RRD PASSWORD to *NONE to forbid remote LPAR2RRD user access.
    CHGUSRPRF USRPRF(LPAR2RRD) PASSWORD(*NONE)
    
  • Accept license agreement
    Only for users using free version without support. Licensing details.
    ADDLIBLE LPAR2RRD
    GO MENU
      Select: 14 Accept Software Licensing Agreement ➞ page down ➞ F14 Accept
      OK:CL_ACCEPT Expiration date of this client is 2017-06-25
    
    In the case that the start LPAR2RRD agent is executed without acceptance, then an error message appears.
    ER: RTV_SYSSTS: frp.HASH512not not correct.
    ER: RTV_SYSSTS: Please revalidate i5/OS client from MENU option F14.
    ER: RTV_SYSSTS: i5/OS client ended.
    
    Agent is licensed to free use for 1 year. You will have to re-accept license in the same way next year.
    You can see expiration dates of all agents in the LPAR2RRD UI ➞ menu ➞ LPAR2RRD ➞ Data check ➞ IBM i

  • Start of the agent
    AS400 screenshot go menu

    You can start LPAR2RRD agent in two ways.
    • As a command RTV_SYSSTS.
      CHGJOBD JOBD(LPAR2RRD/LPAR2RRD) TEXT('RTV_SYSSTS') RQSDTA(*NONE) 
      RMVAJE SBSD(LPAT2RRD/LPAR2RRD) JOB(LPAR2RRD)
      ADDLIBLE LPAR2RRD
      GO MENU
        Option 1. Set up parameters to start client as RTV_SYSSTS (opt.10)
          Accept all default parameters for command CHGJOBD and RMVAJE.
        Option 10. RTV_SYSSTS
      
    • As an autostart job entry in LPAR2RRD subsystem.
      CHGJOBD JOBD(LPAR2RRD) TEXT('STRSBS SBSD(LPAR2RRD/LPAR2RRD)') RQSDTA('RTV_SYSSTS')  
      ADDAJE  SBSD(LPAR2RRD/LPAR2RRD) JOB(LPAR2RRD) JOBD(LPAR2RRD/LPAR2RRD)
      ADDLIBLE LPAR2RRD
      GO MENU
        Option 2. Set up parameters to start client as STRSBS LPAR2RRD (option 11)
          Accept all default parameters for command CHGJOBD and ADDAJE.
        Option 11. STRSBS LPAR2RRD
      
    You can start LPAR2RRD agent from command line or from your CL program as a command RTV_SYSSTS or STRSBS LPAR2RRD.
    Option 1 and Option 2 is used only once or when you decide to change the way the program starts.
    Use F1 as a help for RTV_SYSSTS command.

  • Status of the agent.
    GO MENU
      Select: Option 50
    
    AS400 screenshot 1

    On the SND_SYSSTS line ➞ type 5 ➞ type 10 ➞ F10 and you have to see:
    AS400 screenshot 2


    You have to see this message after 10 - 20 minutes from the agent start:
    It says that connection to LPAR2RRD server has been established and some data has been already sent out.
    IF: C_SNDSTS  - connection Established()
    
  • LPAR2RRD UI
    You will see IBM i data in the UI after first load.sh run on the server (it usually runs once an hour).
    Go to the UI, follow the server and lpar. (Ctrl-F5 is necessary to refresh the UI)

  • Stop of the agent
    ADDLIBLE LPAR2RRD 
    GO MENU
     Select: 13. END_SYSSTS ➞  Enter ➞ Enter
    
    On the job log you will see:
    WRKJOB 	
     ➞ option 10 ➞ Display job log, if active, on job queue, or pending
      F10, F18 ...
                    
      IN: END_SYSSTS No active jobs in subsystem LPAR2RRD    
      Ending of subsystem LPAR2RRD in progress.              
      IN: END_SYSSTS EndSbs LPAR2RRD   *Immed                
      EN: END_SYSSTS - *ALL.                
          
    GO MENU
     Select: option 50 ➞  WRKSBSJOB LPAR2RRD 
    
    AS400 screenshot 3
    See above that subsystem LPAR2RRD is not active.

  • if you create your user profile LPAR2RRD set JOBD parameter as a Job description which includes in INLLIBL LPAR2RRD library too (QTEMP,LPAR2RRD).
    CRTUSRPRF USRPRF(LPAR2RRD)  ..... JOBD(LPAR2RRD/LPAR2RRD) ......
    CHGJOBD JOBD(LPAR2RRD/LPAR2RRD) ....  INLLIBL(LPAR2RRD QTEMP)     ....
    

Notes

  • LPAR2RRD agent uses dlpar_get_info API - service program QPMLPMGT in QSYS.
    When user profile LPAR2RRD under which LPAR2RRD agent being submitted is not authorized to this service program, obtain authority to this service program e.g. by command:
    GRTOBJAUT OBJ(QSYS/QPMLPMGT) OBJTYPE(*SRVPGM) USER(LPAR2RRD) AUT(*USE)
    
    Be careful if you upgrade your i5/OS. Service program QPMLPMGT is into QSYS library.

Troubleshooting

  • Communication problem: repeated connections with failures.
    This is a bug in v1.1.0 agent version which might very rare occure, upgrade to v1.1.1+.
    AS400 agent bug

  • Communication problem: errors when the agent connecting the server
    If you see into SND_SYSSTS eny errno > 0 message: AS400 screenshot 4

    There is a communication error.
    It might have 2 reasons:
    • IP address or port is wrong. (check above how to change it)
    • IP connection between LPAR2RRD server and IBM i is not allowed on port 8162.
    Execute ping and telnet tests mentioned above to verify network accesibility

    Stop the agent and correct IP address/port or firewall setup. Start it up as soon as it is fixed.
    ADDLIBLE LPAR2RRD
    LPAR2RRD/END_SYSSTS
    
  • Error during FTP:
    530 Not able to set ASP group for user LPAR2RRD; logon rejected.
    
    Change User profile JOBD job description via QSECOFR account:
    CHGUSRPRF USRPRF(LPAR2RRD) JOBD(QGPL/QDFTJOBD)   
    
  • Error during RSTLIB:
    Cannot use lib LPAR2RRD in library QSYS
    
    LPAR2RRD library is being used by someone else, release it (open ftp session etc) and try it again:

  • In case of a problem check our forum or contact us via support@lpar2rrd.com
Feel free to comment our implementation or discuss issues on our web forum