BookmarkSubscribeRSS Feed
mliem
Calcite | Level 5

Hello,

 

I am trying to configure SAS access to Hadoop and running into the below error when running the Sample Lib code for SAS Hadoop connectivity. I am using HDP 2.2 and used the hadooptracer.py script to get all the jar and conf files. I set the SAS_HADOOP_CONFIG_PATH and SAS_HADOOP_JAR_PATH to the respective files. 

 

We are using kerberos so maybe I am missing some other step? From the SAS Server i can access hdfs and hive. This is the error we are recieving as well as the lib code we are using: (also not i tried settign subprotocol=hive2 but that did not resolve anything)

 

 

options set=SAS_HADOOP_CONFIG_PATH "/sasdev/app/sasinst/hadoop/conf";

options set=SAS_HADOOP_JAR_PATH "/sasdev/app/sasinst/hadoop/lib";

libname hdplib hadoop server="700224-hdp.coach.com";

 

 

1          ;*';*";*/;quit;run;

2          OPTIONS PAGENO=MIN;

3          %LET _CLIENTTASKLABEL='Program';

4          %LET _CLIENTPROJECTPATH='';

5          %LET _CLIENTPROJECTNAME='';

6          %LET _SASPROGRAMFILE=;

7         

8          ODS _ALL_ CLOSE;

9          OPTIONS DEV=ACTIVEX;

10         GOPTIONS XPIXELS=0 YPIXELS=0;

11         FILENAME EGSR TEMP;

12         ODS tagsets.sasreport13(ID=EGSR) FILE=EGSR STYLE=HtmlBlue

12       ! STYLESHEET=(URL="file:///C:/Program%20Files/SASHome/SASEnterpriseGuide/5.1/Styles/HtmlBlue.css") NOGTITLE NOGFOOTNOTE

12       ! GPATH=&sasworklocation ENCODING=UTF8 options(rolap="on");

NOTE: Writing TAGSETS.SASREPORT13(EGSR) Body file: EGSR

13        

14         GOPTIONS ACCESSIBLE;

15         options set=SAS_HADOOP_CONFIG_PATH "/sasdev/app/sasinst/hadoop/conf";

16         options set=SAS_HADOOP_JAR_PATH "/sasdev/app/sasinst/hadoop/lib";

17         libname hdplib hadoop server="700224-hdp.coach.com";

ERROR: Unable to connect to the Hive server.

WARNING: Connection to HiveServer2 failed. Attempting to connect using Hive1. Set SUBPROTOCOL=hive2 if you are running HiveServer2.

         Set SUBPROTOCOL=hive if you are running Hive1.

ERROR: Could not open connection to jdbc:hive://700224-hdp.coach.com:10000/default;principal=hive/_HOST@DEV.COACH.COM. Check your

       Hive server status and also set option SUBPROTOCOL= appropriately.  Set SUBPROTOCOL=hive2 if you are running HiveServer2. 

       Set SUBPROTOCOL=hive if you are running Hive1.

ERROR: Error trying to establish connection.

ERROR: Error in the LIBNAME statement.

18        

19         GOPTIONS NOACCESSIBLE;

20         %LET _CLIENTTASKLABEL=;

21         %LET _CLIENTPROJECTPATH=;

22         %LET _CLIENTPROJECTNAME=;

23         %LET _SASPROGRAMFILE=;

24        

25         ;*';*";*/;quit;run;

26         ODS _ALL_ CLOSE;

27        

28        

29         QUIT; RUN;

30        

1 REPLY 1
mliem
Calcite | Level 5

So i have confirmed that it is soemthing kerberos related. 

 

I ran the SAS deployment manager which pulled down the JAR/CONF files and i have verified that the SAS_HADOOP_CONFIG_PATH and SAS_HADOOP_JAR_PATH are pointing to the correct path. 

 

Can someone outline the steps involved with kerberos? It is a little unclear. Which user does it try to authenticate with when it runs the libname command? 

 

I created a ticket (kinit) with the user on the SAS server (this allows me to access hdfs) and tried to EXPORT KRB5CCNAME=/tmp/krb5_"id" but that did not work either. 

 

Does the HDFS/HIVE on the cluster user need to have a valid ticket? 

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

How to connect to databases in SAS Viya

Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 1 reply
  • 1827 views
  • 0 likes
  • 1 in conversation