美文网首页我爱编程
Mac os 搭建Hadoop和hive环境

Mac os 搭建Hadoop和hive环境

作者: hitchc | 来源:发表于2017-09-23 17:29 被阅读1015次

    参考文章:搭建Hadoop 搭建hive

    使用brew install Hadoop 和brew install hive  搭建环境很方便,我按照上面两篇文章做了一下,整体还算顺利遇到了一点点小问题,不过最后都解决了,最后安装的Hadoop版本为2.8.1,hive版本为2.1.1。

    一、 安装Hadoop

    0. 默认已安装:brew,java

    1.  使用 brew install Hadoop 安装Hadoop,然后等待......

    hadoop 成功安装

    2. 配置ssh 免密码登录

    首先在设置中开启远程登录:系统偏好设置--->共享--->勾选“远程登录”

    然后执行以下命令: 这里参考的是 这篇文章的第二部分

    1. ssh-keygen -t rsa

    Press enterforeach line 提示输入直接按回车就好

    2. cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys

    3. chmod og-wx ~/.ssh/authorized_keys

    之后测试 ssh localhost 如果不需要输入密码就成功了。

    3. 配置hadoop相关文件

    包括core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml 配置的方式按照文章开头给出的的“搭建hadoop”链接中的配置方式即可。

    4. 运行hadoop样例程序

    1)进入hadoop目录:cd /usr/local/Cellar/hadoop/2.8.1/libexec

         格式化hadoop文件系统:bin/hdfs namenode -format

    2) 启动NameNode 和 DataNode的守护进程:sbin/start-dfs.sh

    3) 启动ResourceManager 和NodeManager的守护进程 sbin/start-yarn.sh

    4) 访问localhost:50070 和localhost:8088,见下图

    localhost:50070 localhost:8088

    5. 创建hdfs目录:bin/hdfs dfs -mkdir -p /user/chenghengchao/input (chenghengchao可以替换成任意的用户名) 这步的操作是指在hadoop文件系统中创建了一个/user/chenghengchao/input 目录,在50070页面的utiities标签下的browse the file system可以看到创建的目录,现在input目录下什么都没有

    6. 拷贝一些文件到input目录 bin/hdfs dfs -put etc/hadoop input 这步操作将本地的etc/hadoop下面的文件拷贝到了input目录下

    7. 运行样例  根据hadoop版本号修改命令,这里是执行share/hadoop/mapreduce下面的jar文件,从而检测环境是否已经搭建好

    bin/hadoop jar  share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.1.jar grep input/hadoop  output 'dfs[a-z.]+' 大概的意思是说,将hdfs文件系统中input/hadoop下的以dfs开头的文件名输出到output中

    运行过程截图:

    截图一 截图二

    8. 运行成功

    生成了output1文件夹(output 是之前生成的,不能重名)

    在output1 下面有一个part-r-00000文件,下载之后可以看到结果

    运行结果

    ps:如果中间遇到了问题,仔细看一下报错的地方,看看错误的原因是什么,比如文件路径不存在之类的。如果自己能够解决就更好了,这样才能快速学到东西,也能加深自己的理解

    二、安装hive

    0. 默认已安装brew,mysql

    按照文章开头给出的”搭建hive“链接中的方法

    运行brew install hive 安装hive,在mysql中创建元数据库,之后修改hive的配置,按照步骤一步一步做就好。

    我遇到的问题是在最后”初始化库“的时候有错误,看了下日志发现是用户名密码在前一步配置错了重新配置之后就OK了。

    最后可以将hadoop和hive的安装目录加入到环境变量中,方便下一次启动:

    export HADOOP_HOME="/usr/local/Cellar/hadoop/2.8.1/libexec"

    export HIVE_HOME="/usr/local/Cellar/hive/2.1.1"

    export PATH="$PYENV_ROOT/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin"

    到这里,整个搭建过程基本就完成了,搭建的目的是为了更好的学习hive,接下来可能会有相关文章更新。欢迎大家交流!


    补充:

    按照以上教程配置好之后,在后续的使用中发现了一些问题,都是由于之前缺少配置造成的,更新如下:

    1. /usr/local/Cellar/hadoop/2.8.1/libexec/etc/hadoop/hdfs-site.xml 文件需要配置

    <property><name>dfs.datanode.data.dir</name><value>/usr/local/Cellar/hadoop/2.8.1/libexec/etc/hadoop/tmp</value><property>

    value 值为已经存在的一个目录即可

    2./usr/local/Cellar/hadoop/2.8.1/libexec/etc/hadoop/core-site.xm 文件需要配置

    <proprety><name>hadoop.tmp.dir</name><value>/usr/local/Cellar/hadoop/2.8.1/libexec/etc/hadoop/tmp</value><property>

    以上两个value值应该要一致。

    暂时发现这两个问题。

    相关文章

      网友评论

        本文标题:Mac os 搭建Hadoop和hive环境

        本文链接:https://www.haomeiwen.com/subject/xebcextx.html