$ sudo apt-get install ssh
$ sudo apt-get install rsync
下载地址:http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.8.0/
选择下载 hadoop-2.8.0.tar.gz,并解压。
编辑 etc/hadoop/hadoop-env.sh:
export JAVA_HOME=/path/to/java/root/dir
运行命令:
bin/hadoop
若打印出帮助信息,则表示安装成功。
默认情况下,Hadoop被配置为以非分布式模式运行,作为一个单一的Java进程。这对于调试非常有用。
下面的示例复制未打包的conf目录作为输入,然后找到并显示给定正则表达式的每一个匹配项。输出被写入到给定的输出目录。
$ mkdir input
$ cp etc/hadoop/*.xml input
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.0.jar grep input output 'dfs[a-z.]+'
$ cat output/*
Hadoop还可以在一个伪分布模式下运行,每个Hadoop守护进程在一个单独的Java进程中运行。
etc/hadoop/core-site.xml:
fs.defaultFS
hdfs://localhost:9000
etc/hadoop/hdfs-site.xml:
dfs.replication
1
检查是否可以使用ssh到本地主机,而无需使用密码:
$ ssh localhost
如果不能在没有密码的情况下ssh到localhost,请执行以下命令:
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
$ bin/hdfs namenode -format
$ sbin/start-dfs.sh
http://localhost:50070/
$ bin/hdfs dfs -mkdir /user
$ bin/hdfs dfs -mkdir /user/
$ bin/hdfs dfs -put etc/hadoop input
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.0.jar grep input output 'dfs[a-z.]+'
将输出文件从分布式文件系统复制到本地文件系统,并检查它们:
$ bin/hdfs dfs -get output output
$ cat output/*
或者 查看分布式文件系统上的输出文件:
$ bin/hdfs dfs -cat output/*
$ sbin/stop-dfs.sh
可以通过设置一些参数和运行ResourceManager守护进程及NodeManager守护进程,在伪分布模式下运行MapReduce作业。
(以下操作假设以上说明的前四步均已执行!)
etc/hadoop/mapred-site.xml:
mapreduce.framework.name
yarn
etc/hadoop/yarn-site.xml:
yarn.nodemanager.aux-services
mapreduce_shuffle
$ sbin/start-yarn.sh
http://localhost:8088/
$ sbin/stop-yarn.sh
推荐:
Apache Hadoop: http://hadoop.apache.org/
Hadoop Commands Guide: http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-common/CommandsManual.html
Apache Hadoop Main 3.0.0-alpha3 API: http://hadoop.apache.org/docs/current/api/