Overview
Under the following conditions, you must make changes in the LASRMonitor configuration in order to support the Explore HDFS tab in SAS Visual Analytics Administrator:
- You applied the SAS Visual Analytics container Hot Fix B2B010.
- You applied the SAS Plug-ins for Hadoop Hot Fix D9U001 (or the SAS Plug-ins for Hadoop package that is included with a SAS® 9.4M6 (TS1M6) software depot).
The Explore HDFS tab is deployed only in the following SAS Visual Analytics environments:
- You selected Hadoop (co-located HDFS) as the SAS Visual Analytics Data Provider during SAS Visual Analytics deployment.
- You use the distributed SAS® LASR Analytic Server.
The LASRMonitor process has always required passwordless Secure Shell (SSH) capabilities for the user that is running the process in order to connect to the High-Performance Analytics Environment (TKGrid). These capabilities are also required to invoke other processes that return information for resource and memory monitors that are displayed in SAS Visual Analytics Administrator. The significant change is that SSH is now also used to connect to Hadoop when you use the HDFS browser.
Quick Setup
The LASRMonitor component is deployed on the SAS Visual Analytics compute tier. Here are the instructions to make the required changes.
- In many cases, the only change necessary is to add the following property to Compute-Tier-Config-Dir/LevX/Applications/SASVisualAnalytics/HighPerformanceConfiguration/service.properties:
hadoop.plugins.hadoop.home=<path to Hadoop directory containing bin/hadoop>
Cloudera Example:
In Cloudera environments, add the following property:
hadoop.plugins.hadoop.home=/opt/cloudera/parcels/CDH/lib/hadoop/
Hortonworks Example:
In Hortonworks environments, add the following property:
hadoop.plugins.hadoop.home=/usr/hdp/current/hadoop-client/
Note: The path might vary in your Hadoop cluster. Ensure that the path contains bin/hadoop. The slash (/) at the end of the path is required.
- Run the following command to restart LASRMonitor and make the change effective:
./LASRMonitor.sh restart
- You might need to press Enter to return to a command prompt after starting or restarting LASRMonitor.
HDFS-Related Properties List for Service.properties
Here are some additional properties that might be useful in certain scenarios:
Property Name |
Default value |
Description |
hadoop.plugins.use.ssh |
true |
If set to false, com.sas.cas.hadoop.service.restrict=false is required in the hdfs-site.xml file and you must restart HDFS. This changes the behavior to use the older functionality where SSH is not used by the Explore HDFS tab. |
hadoop.plugins.ssh.command |
/usr/bin/ssh |
Path to the SSH executable. The default is valid in most scenarios. Note: Under Windows, the SAS TKSSH module is used by default. |
hadoop.plugins.ssh.options |
-o StrictHostKeyChecking=no -o PasswordAuthentication=no |
Additional SSH options, separated by spaces exactly as entered on the command line. Quotation marks are not needed around this string. For example, to specify a login and SSH key that differs from the user running the LASRMonitor process, you could specify hadoop.plugins.ssh.options=-o StrictHostKeyChecking=no -l testuser -i /path/to/id_rsa. Note: Under Windows, additional options are not supported. |
sas.grid.broker.hadoop.host |
<none> |
Required. The Hadoop NameNode host name. Usually this is already included in the service.properties based on input during SAS Visual Analytics deployment. |
hadoop.plugins.hadoop.home |
<none> |
Required if hadoop.plugins.use.ssh=true. Path to the Hadoop directory that contains bin/hadoop. A forward slash (/) at the end of the path is required. |
hadoop.plugins.ssh.stderr.redirection |
2>/dev/null |
Useful for diagnostic information. The default sends stderr to /dev/null. To capture the output, redirect to a file. Example: 2>/tmp/vaa-plugins-stderr.log. |
Property Testing
This section describes how to test your properties.
- In order to test your service.properties options, construct an SSH command using your selected options in this format:
<hadoop.plugins.ssh.command> <hadoop.plugins.ssh.options> <sas.grid.broker.hadoop.host> <hadoop.plugins.hadoop.home>bin/hadoop fs -ls / <hadoop.plugins.ssh.stderr.redirection>
Here is an example.
The example service.properties contains the following:
hadoop.plugins.ssh.options=-o StrictHostKeyChecking=no -o PasswordAuthentication=no -l myuser -i /mnt/ssh/myuser/id_rsa
sas.grid.broker.hadoop.host=namenode.example.com
hadoop.plugins.hadoop.home=/usr/hdp/current/hadoop-client/
hadoop.plugins.ssh.stderr.redirection=2>/tmp/vaa-plugins-stderr.log
Here is the example command using the specified values and the default values for those that are not specified:
/usr/bin/ssh -o StrictHostKeyChecking=no -o PasswordAuthentication=no -l myuser -i /mnt/ssh/myuser/id_rsa namenode.example.com /usr/hdp/current/hadoop-client/bin/hadoop fs -ls / 2>/tmp/vaa-plugins-stderr.log
- Run the SSH command on the LASRMonitor system as the user that runs the LASRMonitor process. The command should successfully execute a hadoop fs -ls / command on the Hadoop NameNode and produce a file that lists output.
Configuration for Hadoop Clusters That Use Kerberos Authentication
In order for SSH sessions initiated by LASRMonitor to have valid, unexpired Kerberos credentials anytime that the HDFS Browser is used, a keytab is required for either of the following user scenarios:
- a user that is running LASRMonitor
- a user that is specified by additional SSH options in the hadoop.plugins.ssh.options property
Add a kinit command in the user's ~/.ssh/rc file on the Hadoop NameNode so that the keytab is used to obtain a Kerberos TGT whenever SSH is invoked.
Here is an example:
- LASRMonitor is started by the lasrmon user on the SAS Visual Analytics compute tier.
- The Kerberos administrator creates a keytab file for the lasrmon user and places the keytab at /home/lasrmon/lasrmon.keytab on the Hadoop NameNode.
- The lasrmon user or administrator creates /home/lasrmon/.ssh/rc on the Hadoop NameNode with the following contents:
kinit -kt /home/lasrmon/lasrmon.keytab lasrmon
- When the HDFS Browser is accessed, the LASRMonitor that is running under the lasrmon identity sends an SSH command to the Hadoop NameNode, invoking the kinit command in /home/lasrmon/.ssh/rc. This action creates a new Kerberos ticket that ensures that the lasrmon user can authenticate to Hadoop and retrieve information that is displayed in the HDFS browser.
Problem Symptoms
If you have not applied SAS Visual Analytics container Hot Fix B2B010, but you have updated the SAS Plug-ins for Hadoop, the Explore HDFS tab might display no content and no error.
Under any of the following conditions, clicking the Explore HDFS tab returns "An error occurred when the Hadoop content explorer tried to contact the SAS LASR Analytic Server Monitor. Please contact your system administrator."
- You have applied SAS Visual Analytics container Hot Fix B2B010, but you have not updated the SAS Plug-ins for Hadoop.
- You have updated both SAS Visual Analytics container Hot Fix B2B010 and SAS Plug-ins for Hadoop but have not added the properties described in this SAS Note to the service.properties file.
- You have updated both SAS Visual Analytics container Hot Fix B2B010 and SAS Plug-ins for Hadoop and have added the properties described in this SAS Note to the service.properties file. However, the properties cannot be used to make a successful connection to Hadoop and obtain a file listing.
Here is a screen shot of the error that you see:

Troubleshooting
Here are some troubleshooting steps that you can take when you see errors:
- Test your service.properties options as described in the Property Testing section above.
- Set hadoop.plugins.ssh.stderr.redirection in service.properties to a path on the Hadoop NameNode to which the LASRMonitor user has Write access.
Here is an example:
hadoop.plugins.ssh.stderr.redirection=2>/tmp/vaa-plugins-stderr.log
- Use the following command to restart LASRMonitor:
./LASRMonitor.sh restart
- Reproduce the problem, and then review the following logs or send them to SAS Technical Support:
From the Hadoop NameNode:
/tmp/vaa-plugins-stderr.log
From the SAS Visual Analytics compute tier:
Compute-Tier-Config-Dir/LevX/Applications/SASVisualAnalytics/HighPerformanceConfiguration/Logs/bihpgrdc.monitor.console.log
Operating System and Release Information
SAS System | SAS Visual Analytics | Microsoft® Windows® for x64 | 7.4 | | 9.4 TS1M4 | |
Linux for x64 | 7.4 | | 9.4 TS1M4 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.