Mac环境下Hadoop的安装与配置

这是在Mac OS环境下Hadoop 3.2.1伪单机模式的配置笔记

Step 01 下载与安装Hadoop 3.2.1

​ 前往官网下载Hadoop 3.2.1压缩包,页面如下:

点击Download tar.gz,等待下载结束。

​ 下载结束后,开启Terminal,前往Hadoop压缩包的存储目录,并将其解压到指定目录下(目录可以换)。命令如下:

cd ~/Downloads
tar -zxf hadoop-3.2.1.tar.gz -C /usr/local/Cellar

​ 然后进入解压目录,将文件名重命名为hadoop

cd /usr/local/Cellar
mv hadoop-3.2.1 hadoop

Step 02 配置环境变量

​ 为了方便执行hadoop程序,可以通过编辑~/.bash_profile文件为hadoop添加环境变量。使用Mac自带的vim编辑器修改文件:

vim ~/.bash_profile

​ 在文件最后添加如下内容(直接复制粘贴即可,需要注意HADOOP_HOME的值为hadoop的实际存储根目录):

export HADOOP_HOME=/usr/local/Cellar/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

Step 03 配置Hadoop

Hadoop的配置总共需要修改四个文件core-site.xmlhdfs-site.xmlyarn-site.xmlmapred-site.xml

​ 首先前往这四个配置文件的存放目录:

# 当前目录为Hadoop根目录
cd etc/hadoop

​ 然后通过vim编辑器修改上述四个文件的<comfiguration>如下:

  • core-site.xml:其中hadoop.tmp.dir必须是实际存在的目录,如果不存在则需要自己创建。hadoop.proxyuser.Ray.hosts中的Ray则是计算机登陆账户的用户名。hadoop.proxyuser.Ray.groups同理,自行修改。
<configuration>
      <property>
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>
      </property>
      <property>
            <name>hadoop.tmp.dir</name>
            <value>file:/usr/local/Cellar/hadoop/tmp</value>
      </property>
      <property>
            <name>hadoop.proxyuser.Ray.hosts</name>
            <value>*</value>
      </property>
      <property>   
            <name>hadoop.proxyuser.Ray.groups</name>
            <value>*</value>
      </property>
</configuration>
  • hdfs-site.xml
<configuration>
      <property>
            <name>dfs.replication</name>
            <value>1</value>
      </property>
      <property>
            <name>dfs.namenode.name.dir</name>
            <value>file:/usr/local/Cellar/hadoop/tmp/dfs/name</value>
      </property>
      <property>
            <name>dfs.datanode.data.dir</name>
            <value>file:/usr/local/Cellar/hadoop/tmp/dfs/data</value>
      </property>
</configuration>
  • yarn-site.xml
<configuration>
      <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
      </property>
      <property>
            <name>yarn.nodemanager.env-whitelist</name>
            <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
      </property>
</configuration>
  • mapred-site.xml
<configuration>
      <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
      </property>
      <property>
            <name>mapreduce.application.classpath</name>
            <value>$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value>
      </property>
</configuration>

Step 04 设置SSH免密登陆

​ 首先测试是否能够通过SSH免密登陆本机。

ssh localhost

​ 如果不能,依次执行如下三条命令设置免密登陆:

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

Step 05 格式化文件系统

​ 在确保完成以上步骤后,可以格式化HDFS文件系统:

  • 如果已经配置了环境变量:在任意目录下执行如下命令即可

    hdfs namenode -format
    
  • 如果没有配置环境变量:首先需要进入hadoop/bin目录,然后执行上述命令即可

​ 格式化成功后,能够在Terminal打印输出中查找到successfully formatted字样。

Step 06 开启Hadoop集群

​ 通过以上步骤,便已经完成了MacHadoop 3.2.1的安装与配置。

​ 下面开启Hadoop集群:

  • 如果已经配置了环境变量:在任意目录下执行如下命令即可

    # 方法一:依次开启hdfs和yarn
    start-dfs.sh
    start-yarn.sh
    # 方法二:同时开启hdfs和yarn,此方法在配置了Spark环境变量后会与Spark的服务开启命令冲突
    start-all.sh
    
  • 如果没有配置环境变量:首先需要进入hadoop/sbin目录,然后执行上述命令即可(此情况下start-all.sh不会与Spark冲突)

​ 输入命令jps,可以查看Hadoop集群是否正常开启:

​ 如果输出内容相比上图有缺失,则说明有服务没有正常开启。否则则说明Hadoop集群已经正常开启运行。

​ 在浏览器输入localhost:9870可以访问hadoop文件系统:

​ 在浏览器输入localhost:8088可以访问资源调度系统:

posted @ 2021-01-25 17:45  Chiak1  阅读(932)  评论(0编辑  收藏  举报