Mac下Hadoop的安装和启动

环境条件

JDK1.8
Hadoop 2.7.5
mac os

Hadoop部署步骤

第一步 安装JDK

因为Hadoop是java写的开源框架,所以必须建立在Java的运行环境上。本篇采用的是JDK1.8 ,其实只要1.7以上的版本就可以了
需要配置好JDK的环境变量,这里就不详细说了

第二步 安装Hadoop

a) 下载Hadoop的tar包
下载地址:http://mirrors.shu.edu.cn/apache/hadoop/common/hadoop-2.7.5/hadoop-2.7.5.tar.gz
b) 解压Hadoop的包

 //tar开下载下来的hadoop包
  tar -xzvf hadoop-2.7.5.tar.gz 
//copy到你准备存放的目录
  mv /User/zzjmay/hadoop-2.7.5 /User/zzjmay/hadoopworker/

c) 配置Hadoop的环境变量
在mac os系统上,你需要像配置java环境变量一样,配置hadoop的环境变量哈
我这里设置的全局的环境变量
修改/etc/profile

export HADOOP_HOME=/Users/zzjmay/hadoopwork/hadoop-2.7.5
//需要注意的,hadoop需要配置bin和sbin下两个目录
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

经过以上的配置,你就可以通过Hadoop version命令来诊断是否按配置成功hadoop了

第三步 配置Hadoop

首先我们需要了解Hadoop有三种运行模式

  1. **本地模式(Local) **无需运行任何的守护进程,所有程序都在同一个JVM上执行。HDFS在这种模式下,用的就是本地的文件系统
  2. 伪分布模式 Hadoop守护进程运行在本地机器上,模拟一个小规模的集群
  3. 全分布模式 Hadoop守护进程运行在一个集群
接下来主要说明Hadoop的伪分布模式的部署过程

需要配置几个配置文件 目录 hadoop2.7.5/etc/hadoop

1. core-site.xml文件

<configuration>
     <property>
        <name>hadoop.tmp.dir</name>
        <value>/Users/zzjmay/hadoopwork/hadoop-2.7.5/data</value>
    </property>
    <property>  
        <name>fs.default.name</name>  
        <value>hdfs://localhost:8000</value>  
    </property>  
</configuration>

2. hdfs-site.xml

对于伪分布模式下replication(副本)设置为1

<configuration>
    <configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

3. mapred-site.xml

对于这个配置文件比较特殊,我们需要从目录下找到 mapred-site.xml.template这个的模版文件,自己新建一个mapred-site.xml文件.
说明: 配置成计算框架为yarn


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

4. yarn-site.xml


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

以上配置文件配置好,只是第一步,后面还需要给你的本机mac设置为SSH免登录设置,对于mac的免登录配置这个有一些坑,小编我也是踩坑和搜索了好久才解决了本机的免密登陆

第四步 Mac 系统的SSH免密登陆

1. 设置我们mac的远程登陆打开

系统偏好设置 –> 共享 —> 远程登陆勾选上,以下语句判断是否开启远程登陆
systemsetUp -getremotelogin

2. 生成秘钥对

生产秘钥对语句
ssh-keygen -t dsa -P ” -f ~/.ssh/id_dsa
将生成的公钥提交给服务器上sshd中,本机的话如下
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
对于一般经过以上两步,如果不能实现 ssh localhost的免密效果的话,我们可以考虑从以下几个地方解决
a) 设置authorizd_key的权限为644,外层的/.ssh 的文件夹权限为700
b) mac的sshd一般默认没有打开免密登陆的选项,需要手动开启
/etc/ssh 目录下的sshd_config
PubkeyAuthentication yes

第五步 运行Hadoop

  1. 进入你本机安装的Hadoop的目录,格式化文件系统

目录:/Users/zzjmay/hadoopwork/hadoop-2.7.5/libexec
格式化命令:bin/hdfs namenode -format

  1. 启动所有进程

sbin/start-all.sh

  1. 访问localhost:50070和localhost:8088测试是否正常。
    原文作者:zzjmay
    原文地址: https://www.jianshu.com/p/46bb86ea292b
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞