本地虚拟机
操作系统 :CentOS 6.5
Cpu : 1 核
内存: 2G
硬盘 :20G
JDK:1.8 ( jdk-8u161-linux-x64.rpm )
Hadoop:2.8.2 (hadoop-2.8.4.tar.gz)
Hive : 2.3 (apache-hive-2.3.4-bin.tar.gz)
JDK :
http://www.oracle.com/technetwork/java/javase/downloads
Hadopp:
http://www.apache.org/dyn/closer.cgi/hadoop/common
Hive
http://mirror.bit.edu.cn/apache/hive/
在配置 Hadoop+Hive 之前,应该先做一下配置。
做这些配置为了方便,使用 root 权限。
[root@master conf]# vi /etc/sysconfig/network
注:主机名称更改之后,要重启(reboot)才会生效。**
[root@master bin]# vi /etc/hosts
[root@master bin]# service iptables stop
永久关闭命令:
[root@master bin]# chkconfig iptables off
备注:本次搭建单机 Hadoop ,安装配置简述如下:
编辑 /etc/profile 文件 :
[root@master bin]# vi /etc/profile
配置文件 :
export HADOOP_HOME=/home/hadoop/hadoop2.8
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=.:$JAVA_HOME/bin:${HADOOP_HOME}/bin:$PATH
先切换到 /home/hadoop/hadoop2.8/etc/hadoop/ 目录下
[ root@master hadoop]# vi core-site.xml
添加 :
hadoop.tmp.dir
/root/hadoop/tmp
Abase for other temporary directories.
fs.default.name
hdfs://192.168.1.5:9000
输入 :
[root@master hadoop]# vi hadoop-env.sh
将 ${JAVA_HOME} 修改为自己的 JDK 路径
export JAVA_HOME=${JAVA_HOME}
修改为:
export JAVA_HOME=/usr/java/default
输入 :
[root@master hadoop]# vi hdfs-site.xml
添加:
dfs.name.dir
/root/hadoop/dfs/name
Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.
dfs.data.dir
/root/hadoop/dfs/data
Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.
dfs.replication
2
dfs.permissions
true
need not permissions
如果没有 mapred-site.xml 该文件,就复制 mapred-site.xml.template 文件并重命名为 mapred-site.xml 。
输入 :
[root@master hadoop]# vi mapred-site.xml
修改这个新建的 mapred-site.xml 文件,在节点内加入配置 :
mapred.job.tracker
192.168.1.5:9001
mapred.local.dir
/root/hadoop/var
mapreduce.framework.name
yarn
启动之前需要先格式化
切换到 /home/hadoop/hadoop2.8/bin 目录下
输入 :
[root@master bin]# ./hadoop namenode -format
格式化成功后,再切换到 /home/hadoop/hadoop2.8/sbin 目录下
启动 hdfs 和 yarn
输入 :
[root@master sbin]# start-dfs.sh
[root@master sbin]# start-yarn.sh
启动成功后,输入 jsp 查看是否启动成功
在浏览器输入 ip+8088 和 ip +50070 界面查看是否能访问
能正确访问则启动成功
将下载下来的 Hive 的配置文件进行解压
在 linux 上输入 :
[root@master opt]# tar -xvf apache-hive-2.3.4-bin.tar.gz
然后移动到 /opt/hive 里面,将文件夹重命名为 hive2.3
输入
[root@master opt]#mv apache-hive-2.3.4-bin /opt/hive
[root@master opt]#mv apache-hive-2.3.4-bin hive2.3
编辑 /etc/profile 文件
输入 :
[root@master sbin]# vi /etc/profile
添加 :
export HIVE_HOME=/opt/hive/hive2.3
export HIVE_CONF_DIR=${HIVE_HOME}/conf
export PATH=.:$JAVA_HOME/bin:${HADOOP_HOME}/bin:${HIVE_HOME}/bin$PATH
输入如下命令使配置生效:
[root@master sbin]# source /etc/profile
在修改配置文件之前,需要先在 root 目录下建立一些文件夹。
[root@master sbin]# mkdir /root/hive/
[root@master sbin]# mkdir /root/hive/warehouse/
新建完该文件之后,需要让 hadoop 新建 /root/hive/warehouse 和 /root/hive/ 目录。
执行命令:
$HADOOP_HOME/bin/hadoop fs -mkdir -p /root/hive/
$HADOOP_HOME/bin/hadoop fs -mkdir -p /root/hive/warehouse
给刚才新建的目录赋予读写权限,执行命令:
$HADOOP_HOME /bin/hadoop fs -chmod 777 /root/hive/
$HADOOP_HOME/bin/hadoop fs -chmod 777 /root/hive/warehouse
检查这两个目录是否成功创建
输入 :
$HADOOP_HOME /bin/hadoop fs -ls /root/
$HADOOP_HOME /bin/hadoop fs -ls /root/hive/
切换到 /opt/hive/hive2.3/conf 目录下
将 hive-default.xml.template 拷贝一份,并重命名为 hive-site.xml
然后编辑 hive-site.xml 文件
[root@master conf]#cp hive-default .xml.template hive-site.xml
[root@master conf]# vi hive-site .xml
编辑 hive-site.xml 文件,添加 :
hive.metastore.warehouse.dir
/root/hive/warehouse
hive.exec.scratchdir
/root/hive
hive.metastore.uris
javax.jdo.option.ConnectionURL
jdbc:mysql://192.168.1.5:3306/hive?createDatabaseIfNotExist=true
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUserName
root
javax.jdo.option.ConnectionPassword
root
hive.metastore.schema.verification
false
注:由于hive-site.xml文件中的配置过多,可以通过FTP将它下载下来进行编辑。也可以直接配置自己所需的,其他的可以删除。MySQL的连接地址中的master是主机的别名,可以换成ip。**
修改 hive-env.sh 文件,没有就复制 hive-env.sh.template ,并重命名为 hive-env.sh
在这个配置文件中添加
export HADOOP_HOME=/home/hadoop/hadoop2.8
export HIVE_CONF_DIR=/opt/hive/hive2.3/conf
export HIVE_AUX_JARS_PATH=/opt/hive/hive2.3/lib
由于 Hive 默认自带的数据库是使用 mysql ,所以这块就是用 mysql
将 mysql 的驱动包 上传到 /opt/hive/hive2.3/lib
**
在成功启动 Hadoop 之后
切换到 Hive 目录下
输入 :
[root@master lib]# cd /opt/hive/hive2.3/bin
首先初始化数据库
初始化的时候注意要将 mysql 启动
[root@master lib]# schematool -initSchema -dbType mysql
**
执行成功之后,可以看到 hive 数据库和一堆表已经创建成功了
切换到 cd /opt/hive/hive2.3/bin
进入 hive ( 确保 hadoop 以及成功启动 )
输入 :
[root@master lib]# cd /opt/hive/hive2.3/bin
[root@master bin]# hive
进入 hive 之后
做一些简单的操作
新建一个库,然后在建一张表
基本操作和普通的关系型数据库差不多
创建库 :
hive> create database wszhao;
hive> create table wszhao.test(id int,name string) row format delimited fields terminated by '\t';
说明: terminated by '\t'表示文本分隔符要使用Tab,行与行直接不能有空格**
查看刚才建立的库:**
**
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞0
添加新评论0 条评论