My requirement is to have a SAS program that will start the SAS VA 7.4 LASR servers after a server restart. Our SAS VA LASR servers (running on Windows 2012 R2) are rebooted monthly as part of standard server maintenance. While the reboot starts all SAS services automatically, the VA LASR servers don't start automatically and I'm not aware of any configuration option to make this happen.
So I've been investigating a programmatic solution. I've found that the following LIBNAME statement will restart a LASR server but as soon as the LIBNAME is cleared the LASR server stops. How do I ensure that the LASR server(s) keep running?
* STARTSERVER option starts the LASR server.;
libname VALIBLA SASIOLA startserver = (path = "\\sasservername\sas$\SAS\Config\Lev1\AppData\SASVisualAnalytics\VisualAnalyticsAdministrator\sigfiles")
host = "sasservername.com" port = 10011 tag = HPS
signer = "https://sasservername.com:443/SASLASRAuthorization"
;
Isn't that just the way it works with non-distributed VA? The process you use to launch the server will block until someone shuts that server down. It could be a batch program launched in the background so it doesn't lock up an interactive session (DMS, EG, etc). If that's not preferred, have you looked into the alternative autoload option?
Have you seen this SAS blog post by Gilles Chrzaszcz? How LASR servers are started from SAS Visual Analytics Administrator
Being on Windows yours is a non-distributed VA right? There's some sample code at the end of the post which uses proc vasmp serverwait after the libname statement to keep the server running.
@PaulHomes - thanks for pointing out that blog post. It's very useful.
I actually have tried the recommended code:
/* Keep the SAS session up until SERVERTERM received */
proc vasmp;
serverwait port=10013;
quit;
But what I found is the program pauses and never completes when it runs the SERVERWAIT statement and this happens regardless of whether this code runs in a batch job or not. If you kill the batch job or stop the session running the SERVERWAIT statement then the LASR server stops too. My question is, how can I keep the LASR server running without the SERVERWAIT statement continuously running?
The documentation appears to be consistent with the behaviour I'm seeing - that SERVERWAIT suspends execution of the VASMP procedure:
Isn't that just the way it works with non-distributed VA? The process you use to launch the server will block until someone shuts that server down. It could be a batch program launched in the background so it doesn't lock up an interactive session (DMS, EG, etc). If that's not preferred, have you looked into the alternative autoload option?
@PaulHomes - Yes, it appears that is by design. I guess the batch job starting the LASR server can just keep running. I just wanted to check in case there was something I had missed. ATM AUTOLOAD is disabled as we prefer to load on demand, so we will probably go with the program solution.
The SAS Users Group for Administrators (SUGA) is open to all SAS administrators and architects who install, update, manage or maintain a SAS deployment.
SAS technical trainer Erin Winters shows you how to explore assets, create new data discovery agents, schedule data discovery agents, and much more.
Find more tutorials on the SAS Users YouTube channel.