Architecting, installing and maintaining your SAS environment

SAS Work Directory setting

Reply
Contributor
Posts: 37

SAS Work Directory setting

Hi SAS Gurus!

 

I need some help with this.

In the normal SAS configuration scenario, when our SAS Users generally open a SAS EG session, a script (sasv9.conf) is run setting all sorts of settings MEMSIZE etc, and a setting is also done for our default Work Directory:

 

-work "X:\WORK"

 

The drive is located on our SAS server.

We now need to set up a different area for data which requires that we have a different Metadata Group, which will access data on a different server. We are required to have some script setting the WORK directory:

If 2 of these groups log in they must assign work to another folder, but everyone else must use the default X:\WORK folder.

Is it possible to set this criteria up in as some form of "If The else if else" statement?

As follows:

If &SYSGROUP = "LIBRAX" then -WORK "\\LIBRA\WORK"

else if &SYSGROUP = "LIBRAY" then -WORK "\\LIBRA\WORK"

ELSE -WORK "X:\WORK"

 

Is this possible based on the SAS Metadata User Group Membership?

Super User
Posts: 6,938

Re: SAS Work Directory setting

If you need to control this through metadata, I'd clone the Workspace Server definition, change the WORK location in its configuration, and set the metadata permissions so that "normal" users see the "normal" WS, and the "special users" see only the cloned WS.

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
Contributor
Posts: 37

Re: SAS Work Directory setting

Hi Kurt

Thanks for your quick reply.

As this is new territory for me - never been done before, I would need some guidance on this.

How do I clone a Workspace Server?

I looked online to see if there is some example, but found none.

Do you have some documentation for me ?

 

We use SAS9.4 TS1M2 with 2 Compute Servers, so I would need to do this on each compute server.

Super User
Posts: 6,938

Re: SAS Work Directory setting

In SAS MC, under Server Manager, create a new SAS Application Server, name it (eg) SASApp1. Within that Server, create a Workspace Server.

Copy all settings from SASApp to SASApp1. In the SASApp1 - Workspace Server properties/options, add -work your_new_work_location to the WorkspaceServer.sh (or WorkspaceServer.bat) commandline. In the connection SASApp1 - Workspace Server, use a new (yet unused) port number instead of the default 8591.

Add the new workspace server to the servers in the spawner definition. Restart the spawner. Now change the metadata permissions so that only the "special" users see SASApp1, and don't see the SASApp workspace server. This might need some tinkering.

 

Caveat: this is what I would try to do; I do have some experience with all steps involved, but I am no high-level SAS installation guru. In case of doubt, contact SAS TS before changing metadata permissions. Also work in small steps with frequent testing, and record every step, so you have a notion how to get back to the previous state if something breaks.

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
Contributor
Posts: 37

Re: SAS Work Directory setting

Thank you Kurt

 

Based on your recommendation and also advice from SAS TS we will follow this route.

I started by creating the new SASApp....

 

Thank you for this as it seems the most feasible solution to pursue.

Len

Trusted Advisor
Posts: 1,141

Re: SAS Work Directory setting

Hello @Lenvdb,

 

this is a very good question.

 

While it could be virtually possible (and difficult) to set specific SASWORK locations for your users depending on a metadata business unit or team, it still would not work fine.

 

As @KurtBremser suggested you, the recommended way to move forward is to create a new SAS Application Server (SASApp) for each functional unit/team that would require different configuration settings (SASWORK, MEMSIZE, autoexec, etc, etc).

 

Then, with authorizations, you can set the metadata visibility and OS permissions for each SASApp and its related resources.

 

Once you do this, the users connecting to apps as SASStudio, SAS DI or SAS EG, will see only the SASApp you selected for them.

 

Here is a thing to consider: your web applications are pre-configured to use an specific SASApp, and every user will connect to that/those SASApp. Be sure to keep allowing those connections Smiley Happy

Ask a Question
Discussion stats
  • 5 replies
  • 259 views
  • 3 likes
  • 3 in conversation