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 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
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
  • 2017 views
  • 0 likes
  • 1 in conversation