Over the years I’ve used RSTAT to monitor the performance of Linux servers during performance tests many times. Historically I’ve asked Linux admins to enable RSTAT for me but over the last year or two I’ve incorporated various Linux machines into my test and demo environment so I’ve had to do this myself.
I’m primarily a Microsoft specialist so I always seem to rely on Google searches and some trial and error to resolve problems that I encounter with Linux and this weekend was no exception. I spotted a FaceBook post from Scott Moore describing problems that he was having with LoadRunner and RSTAT so I decided to see if I could help him.
I installed RSTAT on my Ubuntu test machine at home and immediately saw the dreaded error message “Error while creating the RPC client. Ensure that the machine can be connected and that it runs the rstat daemon (use rpcinfo utility for this verification).”
Whatever I tried, I could’t get RSTAT to start. After some ‘Googling’, I found a number of posts in various places which helped me to resolve this problem.
A post on StackExchange (related to NFS issues) told me that rpcbind may have a dependency on a package called nfs-common. I installed this “just in case”. The same post told me that to start STATD (which I think is related to RSTAT) automatically at boot, I needed to add “NEED_STATD=yes” to the file “/etc/default/nfs-common”.
A post on GadgetWiz.com told me that I should edit my /etc/hosts.allow file to ensure that the local host could make rstatd requests.
After restarting my Ubuntu PC, I checked that RSTATD was running using the commands “rsysinfo localhost” and “rup localhost”. I was pleased to see that after making these changes, it was possible to monitor my Ubuntu machine using LoadRunner.
I repeated my test on a new Ubuntu 16.04 LTS machine which I monitored using LoadRunner 12.53. A list of the commands that I used is below:
Install rstatd and related components:
sudo apt-get install rstatd rstat-client nfs-common
Add a line to /etc/hosts.allow to allow certain hosts to make rstatd requests:
rpc.rstatd: localhost
Added a line to /etc/default/nfs-common to start STATD automatically:
NEED_STATD=yes
These commands confirm that RSTATD is running:
rpcinfo -p localhost rsysinfo localhost rup localhost