环境
Ubuntu STL 16.0.4
Hadoop 2.7.4
Hive 2.1.1
sentry 1.7.0
maven 3.5.0
//注:伪分布式环境
安装maven
1.apache maven官网下载maven,用于编译sentry源码。
2.修改~/.bashrc文件,添加maven路径。
export MAVEN_HOME=/etc/usr/local/maven
export PATH=$PATH:MAVEN_HOME/bin
3.使.bashrc生效source ~/.bashrc
。
4.执行mvn -v
可查看maven是否安装成功。
编译sentry源码
- 在apache sentry官网下载sentry源码(很有意思,官网上没有直接运行的binary文件,只有源码,所以需要maven编译)。
- 在README.md文件里可知,在apache-sentry-1.7.0-src文件夹里执行
mvn install -DskiTests
即可进行编译。
- 当终端出现下图情况时即编译成功:
- 编译结果在apache-sentry-1.7.0-src/sentry-dist/target/apache-stnery-1.7.0下。
编译结果上传至百度网盘,密码: e5hp。
配置sentry环境
将mysql-connector的jar包拷入sentry/lib下
sudo mv mysql-connector-java-5.0.8-bin.jar /usr/local/sentry/lib
修改sentry-site.xml文件
注意:在sentry/conf下有sentry-site.xml.service.template和sentry-site.xml.hive-client.template两种类型的文件,其中service文件是用于在sentry/conf下配置sentry环境的,hive-client文件是需要拷贝到hive/conf下配置hive和sentry关联的。
参考sentry-site.xml.service.template修改sentry-site.xml,
sudo cp sentry-site.xml.service.template sentry-site.xml
;
<!-- 修改内容 -->
<property>
<name>sentry.store.jdbc.url</name>
<value>jdbc:mysql://localhost:3306/sentry</value>
</property>
<property>
<name>sentry.store.jdbc.driver</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>sentry.store.jdbc.user</name>
<value>sentry</value>
</property>
<property>