1、从官网下载Hadoop2.2
2、把安装包解压到当前用户名的主目录下。(也可以把Hadoop解压放置到其他地方,但是请确保该文件夹的所有者是执行hadoop操作的用户)
3、设置ssh的无密码访问,详情请移步这里
4、安装JAVA环境,详情请移步这里
5、对Hadoop的设置:
下面四个文件在hadoop/etc/hadoop文件夹下:
5.1 设置core-site.xml
添加如下内容:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
5
.2设置mapred-site.xml
安装包里没有该文件,只有mapred-site.xml.template,拷贝一份为mapred-site.xml即可,在mapred-site.xml中添加如下内容 :
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
5.2 设置hdfs-site.xml
添加如下内容:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
5.3 设置hadoop-env.sh
如果在安装java时没设置JAVA_HOME,那在hadoop-env.sh文件添加如下内容:
# The java implementation to use.
export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/opt/jdk1.7.0_45
在core-site.xml和mapred-site.xml中分别指定了NameNode和JobTracker的主机名与端口。在hdfs-site.xml只能指定了HDFS的默认副本数,因为仅仅运行在一个节点上,这里副本为1.
如果把上述5步都设置完了,安装伪分布式安装基本完成。执行以下操作看效果:
1. hadoop@node1:~/hadoop$ bin/hadoop namenode -format
正常输出如下:
......(一大堆省略)
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at node1/127.0.1.1
************************************************************/
2. hadoop@node1:~/hadoop$ sbin/start-all.sh
输出如下:
hadoop@node1:~/hadoop$ sbin/start-all.sh
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
Starting namenodes on [localhost]
localhost: starting namenode, logging to /home/hadoop/hadoop/logs/hadoop-hadoop-namenode-node1.out
localhost: starting datanode, logging to /home/hadoop/hadoop/logs/hadoop-hadoop-datanode-node1.out
Starting secondary namenodes [0.0.0.0]
0.0.0.0: starting secondarynamenode, logging to /home/hadoop/hadoop/logs/hadoop-hadoop-secondarynamenode-node1.out
starting yarn daemons
starting resourcemanager, logging to /home/hadoop/hadoop/logs/yarn-hadoop-resourcemanager-node1.out
localhost: starting nodemanager, logging to /home/hadoop/hadoop/logs/yarn-hadoop-nodemanager-node1.out
3. hadoop@node1:~/hadoop$ jps
输出如下:
hadoop@node1:~/hadoop$ jps
2035 NameNode
2933 Jps
2248 DataNode
2888 NodeManager
2664 ResourceManager
2513 SecondaryNameNode
hadoop@node1:~/hadoop$
可以看到,jps命令列出素有守护进程。安装成功。