Record, Rewind, Replay

Sometimes you find yourself wanting to repeat a SAS® software installation or deployment with the same, or slightly different, options. Perhaps you want to start an installation again after realizing that you chose a wrong option the first time around. Maybe you want to test out a slightly different configuration. It might be that you are planning on doing multiple client installs, choosing exactly the same settings each time, and want to automate the process. For all of these reasons, you might be interested in the SAS Deployment Wizard’s ability to record an installation and replay it later. You might make the replay automatic and silent so there is no interaction, or you might just want to use the smart defaults from an old installation and make a few minor changes here and there.

It’s such a handy feature, that you might even decide to always record your installs, just in case you need them later.

For more information, have a look at the following SAS documents:

I’ve listed the SAS 9.4 documents above, but there’s equivalent documentation available for the earlier SAS releases too.

Here are a few examples:

1. Record a manual install/deploy:

/sasdepot/sas94ts1m0-rev940-13w30/setup.sh -record -deploy -responsefile /opt/sas94m0/sasdw-response.txt

If the response file already exists it appears to be overwritten without reading the contents. I haven’t yet found a way to get the SAS Deployment Wizard to read an existing response file, make changes and save an updated or new response file. If someone knows how to do this please let me know.

2. Interactively replay a previously recorded install/deploy, picking up defaults from the response file, and allowing changes to be made along the way (these changes are not saved in the response file however):

/sasdepot/sas94ts1m0-rev940-13w30/setup.sh -responsefile /opt/sas94m0/sasdw-response.txt

3. Quietly and non-interactively replay a previously recorded response file for automated install/deploy:

/sasdepot/sas94ts1m0-rev940-13w30/setup.sh -quiet -responsefile /opt/sas94m0/sasdw-response.txt

The SAS Deployment Wizard has several other options and modes that you might find useful, so check the documentation for more info.

If you have any extra tips for using response files with the SAS Deployment Wizard, please let me know by leaving a comment below.

Hotfixing a SAS Depot

I’ve been doing a few SAS® platform installations lately and I noticed in the documentation some neat enhancements in SAS 9.3 M2:

  1. The SAS Download Manager, in addition to downloading a SAS software depot for your order, also downloads specially selected hotfixes for the products in that depot.
  2. The SAS Deployment Wizard will then apply those downloaded hotfixes during installations from that depot (so you don’t have to manually apply them post-deployment).
  3. The SAS Deployment Wizard also provides the ability to refresh that depot by downloading additional, more recent, hotfixes. This can be useful if the installation/deployment is being done a little while after the depot was initially downloaded.

You can find a summary of these enhancements in the What’s New in Installation and Configuration for the SAS 9.3 Intelligence Platform section of the SAS® 9.3 Intelligence Platform: Installation and Configuration Guide.

Here’s an example of using the SAS Deployment Wizard to refresh a depot. First step is to select the “Manage this SAS Software Depot” action: Continue reading “Hotfixing a SAS Depot”

SAS Web Report Studio In-Process Scheduling Port Allocations for Lev1, Lev2 …

Today I was installing SAS 9.2 with the latest 4.3 web apps on Linux 64-bit (from a very new 920_11w03 depot). After successfully setting up a Lev1 environment I then went on to create a Lev2 environment (on the same machine). All was going ok until I got to the page in the SAS Deployment Wizard where you choose the SAS Web Report Studio: In-Process Scheduling Ports. This is what it looked like:

These ports (7570, 7571, 7572) looked very familiar. Checking my notes I saw that they were the very same ports from the Lev1 configuration. This was odd because I had specifically selected Lev2 in an earlier page and although all of my other ports were automatically incremented for a Lev2 environment (e.g. 8561 to 8562, 8591 to 8592 etc.) these ports were the same as the Lev1 ports.

This sounded like a recipe for a port clash so I needed to pick some alternative ports. I prefer to stick with standard well-known ports for SAS where I can, so I went looking for resources. I spent a fair amount of time searching but I finally found what I needed at the bottom of the the following page:
SAS(R) 9.2 Intelligence Platform: Web Application Administration Guide, Fourth Edition > SAS Web Report Studio Administration > Configuring SAS Web Report Studio > Modify Port Numbers for In-Process Scheduling in a Clustered Environment

The SAS document explains that SAS Web Report Studio 4.3 has 30 ports available in the range of 7560 to 7589. The defaults ports for Lev1 are 7570, 7571 and 7572 (as I saw in the installation) and incrementing blocks of 3 can be used for other levels. i.e. Lev2 would use 7573, 7573 and 7574 and so on. Based on my experience above I assume these assignments haven’t made it into the SAS Deployment Wizard as yet.

It is also possible to set the ports after the installation from with the SAS Management Console as explained at the end of the SAS document.

Armed with this info I drew up the following table I can refer to with future installations:

  In-Process
Scheduling
Port 1
In-Process
Scheduling
Port 2
In-Process
Scheduling
Port 3
Lev 1: 7570 7571 7572
Lev 2: 7573 7574 7575
Lev 3: 7576 7577 7578
Lev 4: 7579 7580 7581
Lev 5: 7582 7583 7584
Lev 6: 7585 7586 7587
Lev 7: 7588 7589 7560
Lev 8: 7561 7562 7563
Lev 9: 7564 7565 7566
Lev 0: 7567 7568 7569

You might notice in the Lev7 row that the third port drops down to 7560 rather than incrementing to 7590. I did this because the documentation suggests the range is only 30 ports from 7560-7589. I haven’t yet tried using a port outside that range to see what happens (I don’t know if WRS validates the port number before it uses it).

Now I have my Lev2 port numbers I can carry on with my installation.