Hadoop那些事儿(五)---Hive安装与配置

来源:互联网 发布:软件时间校正 编辑:程序博客网 时间:2024/06/12 05:34

我在安装Hive的过程中遇到了好多问题,捣鼓了好久,所以下面的有些操作可能不是必要的操作。

1.配置YARN

YARN 是从 MapReduce 中分离出来的,负责资源管理与任务调度。YARN 运行于 MapReduce 之上,提供了高可用性、高扩展性。
伪分布式环境不启动YARN也可以,一般不影响程序运行,所以在前边的Hadoop安装与配置中没有配置YARN。
我在安装Hive的过程中,由于一个异常牵扯到了yarn下的jar,所以我觉得还是有必要先把yarn配置一下(这步可能不是必要的)
找到目录usr/local/hadoop/hadoop2(前边的路径是我的路径,可能和你们的不同)/etc/hadoop
使用下面的命令:

mv ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml

对mapred-site.xml.template文件进行重命名
使用下面命令:

gedit ./etc/hadoop/mapred-site.xml 

开始编辑,由于我已经为用户分配了整个安装目录的操作权限,所以直接右键打开也可以编辑,写入如下配置:

<configuration>        <property>             <name>mapreduce.framework.name</name>             <value>yarn</value>        </property></configuration>

同样找到yarn-site.xml文件,加入如下配置:

<configuration>        <property>             <name>yarn.nodemanager.aux-services</name>             <value>mapreduce_shuffle</value>            </property></configuration>

在hadoop已经启动的前提下,使用下面命令即可启动yarn:

./sbin/start-yarn.sh      # 启动YARN./sbin/mr-jobhistory-daemon.sh start historyserver  # 开启历史服务器,才能在Web中查看任务运行情况

2.安装Hive

首先创建hive文件夹并分配权限:

cd /usr/localsudo mkdir hivesudo chown hadoop ./hivesudo chmod -R 777 ./hive

然后下载hive,我的hadoop使用的是2.6.0版本,hive安装的是1.2.1版本,下载地址如下:
hive1.2.1
下载完成后,先将目录切换到下载目录,
然后使用下面命令进行解压:

tar zxvf apache-hive-1.2.1-bin.tar.gz

然后将解压好的文件夹中的文件全部拷贝到/usr/local/hive目录下
接下来配置环境变量,使用如下命令进入配置文件:

vim ~/.bashrc

输入E开启可编辑模式,移动光标到文件上部,加入如下配置:

export HIVE_HOME=/usr/local/hiveexport PATH=$PATH:$HIVE_HOME/binexport CLASSPATH=$CLASSPATH:/usr/local/Hadoop/lib/*:.export CLASSPATH=$CLASSPATH:/usr/local/hive/lib/*:.

ESC+shift+z+z 组合键退出编辑,使用下面命令使配置生效:

source ~/.bashrc

然后将Hive配置到hadoop环境中:

cd $HIVE_HOME/confcp hive-env.sh.template hive-env.sh

生成hive-env.sh文件后,加入以下行:

export HADOOP_HOME=/usr/local/hadoop

到这里hive就算安装成功了,接下来我们需要安装外部数据库配置metastore,这里我们使用默认支持的Derby数据库

3.Derby安装与配置

首先使用下面命令下载derby:

 cd ~ wget http://archive.apache.org/dist/db/derby/db-derby-10.4.2.0/db-derby-10.4.2.0-bin.tar.gz

下载完成后,命令行切换到下载目录,使用下面命令进行解压:

tar zxvf db-derby-10.4.2.0-bin.tar.gz

使用下面命令创建derby文件夹并授权:

cd /usr/localsudo mkdir derbysudo chown hadoop ./derbysudo chmod -R 777 ./derby

将解压好的文件夹中的文件拷贝到derby文件夹下。
使用上面用到的方式,进行环境变量的配置,配置信息如下:

export DERBY_HOME=/usr/local/derbyexport PATH=$PATH:$DERBY_HOME/binexport CLASSPATH=$CLASSPATH:$DERBY_HOME/lib/derby.jar:$DERBY_HOME/lib/derbytools.jar

同样适用下面命令生效:

source ~/.bashrc

接下来创建用于存放metastore数据的目录

mkdir $DERBY_HOME/data

接下来配置hive的metastore

cd $HIVE_HOME/confcp hive-default.xml.template hive-site.xml

首先通过复制获取到hive-site.xml,
然后加入如下配置:

<property>       <name>Javax.jdo.option.ConnectionURL</name>       <value>jdbc:derby:;databaseName=metastore_db;create=true</value>       <description>JDBC connect string for a JDBC metastore </description>    </property>    <property>      <name>javax.jdo.option.ConnectionDriverName</name>      <value>org.apache.derby.jdbc.EmbeddedDriver</value>      <description>Driver class name for a JDBC metastore</description>    </property>    <property>      <name>javax.jdo.option.ConnectionUserName</name>      <value>APP</value>      <description>username to use against metastore database</description>    </property>    <property>      <name>javax.jdo.option.ConnectionPassword</name>      <value>mine</value>      <description>password to use against metastore database</description>    </property> 

配置完成后使用如下命令进行验证:

cd $HIVE_HOMEbin/hive

如果成功了,那恭喜你,如果报错了也别害怕,本宝宝在这一步出异常捣鼓了好久
a.如果是与system:java.io.tmpdir有关的那个错,
查看hive-site.xml配置,会看到配置值含有”system:java.io.tmpdir”的配置项
2.新建文件夹/usr/local/hive/iotmp
3.将含有”system:java.io.tmpdir”的配置项的值修改为如上地址
b.如果是Found class jline.Terminal, but interface was expecte
将/usr/local/hive/lib/jline-2.12.jar拷贝到/usr/local/hadoop/hadoop2/share/hadoop/yarn/lib下,并删除旧版本的对应jar包。
修改完后重新验证即可,出现下面情况则表示安装成功

hadoop@nagsh-VirtualBox:/usr/local/hadoop/hadoop2$ cd $HIVE_HOMEhadoop@nagsh-VirtualBox:/usr/local/hive$ bin/hiveLogging initialized using configuration in jar:file:/usr/local/hive/lib/hive-common-1.2.1.jar!/hive-log4j.propertieshive> show tables    > ;OKTime taken: 1.006 secondshive> 
0 0
原创粉丝点击