开始搭建hadoop伪分布式
使用机器:macbook pro, jdk我就不说明了,必备
参考文章http://hadoop.apache.org/docs/r2.5.2/hadoop-project-dist/hadoop-common/SingleCluster.html
hadoop的伪分布式比较简单,基本上按照官网的讲解一步步下载就ok了。
1. 下载hadoop2.5.2.tar.gz
2. 解压到目录中。我的目录是/Users/zhengyifan/app/hadoop2.5.2
3. 配置环境变量sudo vim /etc/profile
添加JAVA_HOME
,mac下默认的是
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents /Home
添加CLASSPATH
export CLASSPAT=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
添加HADOOP_HOME
export HADOOP_HOME=/Users/zhengyifan/app/hadoop2.5.2
添加到PATH中
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
4. 修改etc / hadoop / hadoop-env.sh
文件
# set to the root of your Java installation
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
# Assuming your installation directory is /usr/local/hadoop
export HADOOP_PREFIX=/Users/zhengyifan/app/hadoop2.5.2
尝试运行下面脚本,这将显示hadoop脚本的使用文档
$ bin/hadoop
5. ssh免密登录
保证你的系统能使用ssh, 不能用的话,使用brew install ssh
安装ssh
ssh-keygen -t rsa // 一路回车
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
注意,如果你新建了一个hadoop用户,那么请设置他home底下的.ssh文件夹的权限为700,authorized_keys文件权限为600,否则免密登录无法使用
6. 修改配置文件
etc/hadoop/core-site.xml
这将是你hdfs链接的地址
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
etc/hadoop/hdfs-site.xml
决定你datanode的个数,默认为3个,伪分布式只需要1个
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
ok,以下是注意点
masters文件可以删除, slaves中应该写明localhost,也就是说自己是自己的datanode
7.运行伪分布式
注意,你可能尝试运行过一些服务,建议你先运行stop-all.sh
避免你format失败
// 格式化namenode
bin/hdfs namenode -format
// 启动NameNode守护进程和DataNode守护进程
sbin/start-dfs.sh
// 浏览NameNode的Web界面
http://localhost:50070/
ok , 接下来你就可以操作你的hdfs了,也可以编写你的代码了。