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文件


     
        hadoop.tmp.dir
        /Users/zzjmay/hadoopwork/hadoop-2.7.5/data
    
      
        fs.default.name  
        hdfs://localhost:8000  
      

2. hdfs-site.xml

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


    
    
        dfs.replication
        1
    

3. mapred-site.xml

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


 
     
        mapreduce.framework.name 
        yarn 
     

4. yarn-site.xml



    yarn.nodemanager.aux-services
    mapreduce_shuffle

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

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

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

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

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
    格式化命令:hadoop namenode -format

  2. 启动所有进程

    sbin/start-all.sh

访问方式1: 通过WEBUI访问

访问localhost:50070和localhost:8088测试是否正常。

访问方式2: 通过hdfs命令访问

hdfs dfs -ls /
注意:本地模式下,hdfs的文件目录是本机的,但是到了伪分布模式下,就是启动所有进程后的hadoop自己的

你可能感兴趣的:(大数据)