mac下安装hadoop(一)

本文介绍了在Mac系统下安装Hadoop的过程,包括执行protobuf编译,使用mvn命令打包并复制native库到Hadoop 2.7.0的相应目录,以确保Hadoop的正确运行。
摘要由CSDN通过智能技术生成
一、配置java环境
我安装的是 JDK:1.8.0_111  网上java环境的配置教程很多 配置好JAVA_HOME环境变量 验证java 和javac
在.bash_profile中加上
JAVA_HOME= 这里填你的jdk安装安装路径
CLASSPAHT=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH:
export JAVA_HOME
export CLASSPATH
export PATH

二、配置ssh 确认ssh能远程登录管理
我的是mac 所以安装方法如下:
首先确认能够远程登录 
系统偏好设置-共享 
在终端执行
ssh-keygen -t rsa  
一路回车就行 
会在~/.ssh目录下生成两个文件 
 
然后执行
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys  
验证ssh
ssh localhost  
三、安装hadoop
下载链接:http://hadoop.apache.org/releases.html
解压到相应目录
$tar -zxvf hadoop-2.8.1.tar.gz
四、修改配置文件
core-site.xml 
该配置文件用于指明namenode的主机名和端口,hadoop临时目录
其中value修改成你自己hadoop的路劲
<configuration>  
    <!-- 指定HDFS老大(namenode)的通信地址 -->  
    <property>  
        <name>fs.defaultFS</name>  
        <value>hdfs://0.0.0.0:9000</value>  
    </property>  
    <!-- 指定hadoop运行时产生文件的存储路径 -->  
    <property>  
        <name>hadoop.tmp.dir</name>  
        <value>/Users/eleme/Documents/ProgramFiles/apache-software-foundation/hadoop-2.7.3/temp</value>  
    </property>  
</configuration>  
hadfs-site.xml  
默认副本数3,修改为1,dfs.namenode.name.dir指明fsimage存放目录,多个目录用逗号隔开。dfs.datanode.data.dir指定块文件存放目录,多个目录逗号隔开
其中配置文件中file路劲修改成你自己的设置目录路劲
我在hadoop目录下建了tmp文件夹,又在tmp在建了hdfs文件夹,再在hdfs下建了name和data文件夹,所以才有下面的文件路劲
<property>  
        <name>dfs.replication</name>  
        <value>1</value>  
    </property>  
    <property>  
        <name>dfs.namenode.name.dir</name>  
       <value>file:/Users/eleme/Documents/ProgramFiles/apache-software-foundation/hadoop-2.7.3/tmp/hdfs/name</value>  
    </property>  
    <property>  
        <name>dfs.datanode.data.dir</name>  
          <value>file://Users/eleme/Documents/ProgramFiles/apache-software-foundation/hadoop-2.7.3/tmp/hdfs/data</value>  
    </property>  
    <property>  
        <name>dfs.namenode.secondary.http-address</name>  
        <value>localhost:9001</value>  
    </property>  
    <property>  
      <name>dfs.webhdfs.enabled</name>  
      <value>true</value>  
    </property> 
yarn配置 
mapred-site.xml
<property>  
        <name>mapreduce.framework.name</name>  
        <value>yarn</value>  
    </property>  
    <property>  
        <name>mapreduce.admin.user.env</name>  
        <value>HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME</value>  
    </property>  
    <property>  
        <name>yarn.app.mapreduce.am.env</name>  
        <value>HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME</value>  
    </property>
yarn-site.xml
<property>  
    <name>yarn.nodemanager.aux-services</name>  
    <value>mapreduce_shuffle</value>  
</property>
五、配置hadoop环境变量
vim  ~/. bash_profile  
添加
export HADOOP_HOME=/Users/chenxun/software/hadoop-2.8.1
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native/
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native:$HADOOP_COMMON_LIB_NATIVE_DIR"

source ~/. bash_profile   
7、运行Hadoop
格式化HDFS
hdfs namenode -format
启动hdfs
可以一次启动使用命令: start-all.sh 
打开 http://localhost:50070 ,进入hdfs管理页面
打开 http://localhost:8088 ,进入hadoop进程管理页面
也可以按照下面的方法一个个的启动:
start-dfs.sh  
访问 http://localhost:50070
启动yarn  
start-yarn.sh 
运行测试例子
创建hdfs目录
hdfs dfs -mkdir -p /user/yonglu/input  
上传测试文件
hdfs dfs -put $HADOOP_HOME/etc/hadoop/*.xml input  
执行测试jar
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.0.0-alpha1.jar grep input output ‘dfs[a-z.]+’ 

查看执行结果

hdfs dfs -cat output/part-r-00000  


16/12/17 12:56:25 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable  
dfsadmin  
dfs.webhdfs.enabled  
dfs.replication  
dfs.namenode.secondary.http  
dfs.namenode.name.dir  
dfs.datanode.data.dir 
如果启动过程出现下面的提示:需要重新编译安装lib/native下面的动态库:
Unable to load native-hadoop library for your platform... using builtin-java classes where applicable  
dfsadmin  
参考文章:
http://blog.csdn.net/beijihukk/article/details/53782508?utm_medium=referral&utm_source=itdadao
重新编译之前需要安装

protobuf

和maven以及cmake,自己百度搜索安装即可

开始编译native库,命令如下:

mvn package -Pdist,native -DskipTests -Dtar

安装过程出现下面的错误可能是zlib没安装 也可能是openssl没设置好,设置openssl的方法如下(我的mac,你根据你自己的openssl安装路径设置)
export OPENSSL_ROOT_DIR=/usr/local/Cellar/openssl/1.0.2k
export OPENSSL_INCLUDE_DIR=/usr/local/Cellar/openssl/1.0.2k/include

将编译出的native library复制到下载的二进制版本的Hadoop 2.6.0相应目录中

编译出的native library库的位置为 

hadoop-2.7.0-src/hadoop-dist/target/hadoop-2.7.0/lib/native

拷贝到二进制版本的Hadoop 2.7.0的目录 

hadoop-2.7.0/lib/native



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值