SAS 连接kerberos hadoop集群
公司业务人员都是从传统银行过来的,都是使用SAS作为分析工具,需要将SAS集成hadoop获取数据。
集成步骤如下:
1.在sas windows服务器安装MIT Kerberos客户端.http://web.mit.edu/kerberos/dist/index.html
2. 在C:\ProgramData\MIT\Kerberos5 中修改krb5.ini 文件(复制hadoop kerberos服务的配置文件),如下:
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = realm
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
[realms]
realm = {
kdc = xxx
admin_server =xxx
kdc = xxx
}
[domain_realm]
.realm = realm
realm = realm
3. 配置SAS访问Hadoop的环境变量,将CDH集群/opt/cloudera/parcels/CDH/jars目录下的所有jar包下载至本地,目录可自行定义(例如目录为:C:\hadoop-jars)
4. 下载HDFS客户端配置至本地,目录可自行定义(例如目录为:C:\hadoop-conf
5. 配置相关的环境变量
- SAS_HADOOP_CONFIG_PATH= C:\hadoop-conf (目录可自行定义)
- SAS_HADOOP_JAR_PATH= C:\hadoop-jars (目录可自行定义)
- SAS_HADOOP_RESTFUL=1
6. 在安装了SAS服务的本机配置修改hosts文件
文件路径为: C:\Windows\System32\Drivers\etc\hosts
需将CDH集群的hosts信息同步到C:\Windows\System32\drivers\etc\hosts文件中
7. 使用SAS访问hadoop,打开MIT kerberos客户端,并使用kinit进行连接。
如windows系统时间未在有效期之前,请将时间调整为有效期之前。
打开SAS并进行连接。
options compress=yes;
options set=SAS_HADOOP_JAR_PATH="C:\hadoop-jars";
options set=SAS_HADOOP_CONFIG_PATH="C:\hadoop-conf";
libname HIVE hadoop server="ipxxxx" port=10001
database='dbname'
HIVE_PRINCIPAL="hive/[email protected]";