macbook 下hadoop伪分布式安装

1 准备原材料

1.1  jdk 1.8.0_171(事先安装并配置环境变量HAVA_HOME,PATH)

1.2 Hadoop 2.8.3

2 免密登陆配置(否则安装过程需要不断输入密码)

2.1 开启macbook 允许远程登录

系统偏好设置--共享--选中 远程登录(远程登录状态为绿灯时,说明OK)

2.2 打开终端工具(macbook自带的terminal或者iterm2),输入:

ssh -keyagent -t

多次回车,执行完成之后在~/.ssh目录下查看,有如下文件:

之后,再次执行如下代码:

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

通过ssh localhost验证:

输出:

Last login: Sun Jun  3 12:57:41 2018

到这里,完成免密登陆配置。

3 解压安装hadoop

解压hadoop到某个目录 tar -zxvf [hadoop tar包名]

4 修改配置文件

需要修改的配置文件均在hadoop安装目录下的hadoop-2.8.3/etc/hadoop中:

4.1 编辑hadoop-env.sh,添加如下代码:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home

4.2 编辑core-site.xml

<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/[用户名]/software/hadoop-2.8.3/tmp</value>
</property>
</configuration>

4.3 编辑hdfs-site.xml

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

4.4 编辑 mapred-site.xml

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

4.5 编辑yarn-site.xml

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

5 配置Hadoop环境变量

在终端工具执行如下命令:

5.1 sudo vim /etc/profile【如果是普通用户全新,必须使用sudo,否则编辑后无法保存】

或者

vim /etc/profile 【su root,获取root用户权限】

5.2 我的 /etc/profile配置如下:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home

export HADOOP_HOME=/Users/【用户名】/software/hadoop-2.8.3

export SCALA_HOME=/Users/【用户名】/software/scala-2.11.12

export HIVE_HOME=/Users/【用户名】/software/hive-2.3.3

 

export PATH=.:$JAVA_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$SCALA_HOME/bin:$PATH:/usr/local/mysql/bin:$HIVE_HOME/bin

 

5.3 执行 source /etc/profile

echo $HADOOP_HOME,确认环境变量配置生效

6 运行hadoop

6.1 格式化namenode

进入 hadoop/bin 输入命令格式化namenode【因为$HADOOP_HOME/sbin 和 bin都配置在环境变量中,因此可以任意位置输入格式化namenode的指令】
hadoop namenode -format(hdfs namenode -format 以前的方式)
在格式化的时候,会有这样的输出:
Storage directory /tmp/hadoop-root/dfs/name has been successfully formatted

6.2 启动hadoop

因为$HADOOP_HOME/sbin 和 bin都配置在环境变量中,因此,任意位置执行start-all.sh可以开启hadoop

6.3 使用hadoop

hadoop fs -mkdir /hadooptest
hadoop fs -ls /

6.4 页面访问hdfs 和 yarn:

启动完hdfs访问: http://localhost:50070

启动完yarn访问: http://localhost:8088

posted @ 2018-06-03 12:51  后山前堂客  阅读(658)  评论(0)    收藏  举报