温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
Fayson的github:
https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢
1.文档编写目的
在使用Hive CLI客户端执行SQL语句时,默认的日志输出在/tmp/${user}/目录下,由于tmp目录的空间大小有限,需要为Hive CLI客户端指定日志输出目录,但在Cloudera Manager上不支持为Hive CLI客户端配置日志输出目录。本篇文章Fayson主要介绍如何为Hive CLI运行时指定日志输出目录。
- 内容概述
1.指定日志输出目录
2.总结
- 测试环境
1.RedHat7.3
2.CM和CDH版本为5.15
2.指定日志输出目录
1.创建一个Hive CLI客户端日志存放目录
[root@cdh03 conf]# mkdir -p /data/disk1/hive-log/
[root@cdh03 conf]# chmod 777 /data/disk1/hive-log
[root@cdh03 conf]#
(可左右滑动)
2.在hive命令增加–hiveconf参数指定日志输出目录
[root@cdh03 ~]$ hive --hiveconf hive.log.dir=/data/disk1/hive-log/$USER
(可左右滑动)
命令运行成功后会在/data/disk1/hive-log/$USER目录下生成hive.log日志文件
3.为了方便不用每次只需hive命令指定日志输出目录,这里在Shell中为hive命令创建一个别名
编辑/etc/profile文件,在文件末尾增加如下内容:
alias hive="hive --hiveconf hive.log.dir=/data/disk1/hive-log/$USER"
(可左右滑动)
执行source /etc/profile命令使环境变量立即生效,执行hive命令验证是否生效即可
3.总结
1.不能通过Cloudera Manager为Hive CLI客户端配置日志输出目录,只能在命令行中增加参数指定日志输出目录。
2.在指定日志输出目录时,需要考虑日志输出目录的权限(如:/data/disk1/hive-log),考虑到不同的用户运行,所以指定日志输出目录中增加了$USER变量。
3.为了不用每次运行hive命令指定日志输出目录,通过在OS的环境变量中增加hive的别名方式,将日志输出目录固化在环境变量中。
提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。