所需软件
Linux和Windows所需软件包括:
1、JavaTM1.5.x,必须安装,建议选择Sun公司发行的Java版本。建议用最新的发行版本,如jdk1.8 。
2、ssh 必须安装并且保证 sshd一直运行,以便用Hadoop 脚本管理远端Hadoop守护进程。
此外,在ssh安装的基础上,再安装pdsh
安装软件
如果你的集群尚未安装所需软件,你得首先安装它们。以centos Linux为例:
下载Hadoop镜像,建议下载最新版本(最新版本hadoop-3.0.0-alpha1.tar.gz)
解压
hadoop使用版本:hadoop-3.0.0-alpha1.tar.gz,切换到Hadoop压缩包所在目录,解压hadoop-3.0.0-alpha1.tar.gz到/opt/目录下
运行Hadoop集群的准备工作
切换到/opt/ hadoop-3.0.0-alpha1/目录,编辑 etc/hadoop/hadoop-env.sh文件,至少需要将JAVA_HOME设置为Java安装根路径。
注意:JAVA_HOME配置的路径,是java jdk安装的路径,格式为:export JAVA_HOME=/<jdk direcotr>/<jdk folder>,修改生效,文件可执行:
将会显示hadoop 脚本的使用文档。
单机模式
伪分布式模式
完全分布式模式
单机模式的操作方法
默认情况下,Hadoop被配置成以非分布式模式运行的一个独立Java进程。这对调试非常有帮助。下面的实例将已解压的 conf 目录拷贝作为输入,查找并显示匹配给定正则表达式的条目。输出写入到指定的output目录。 进入镜像解压后的hadoop-3.0.0-alpha1目录
伪分布式模式的操作方法
Hadoop可以在单节点上以所谓的伪分布式模式运行,此时每一个Hadoop守护进程都作为一个独立的Java进程运行。配置
使用如下的 etc/hadoop/core-site.xml:
etc/hadoop/hdfs-site.xml:
现在确认能否不输入口令就用ssh登录localhost:
如果用ssh登陆localhost,提示需要输入口令,执行下面的命令:
格式化一个新的分布式文件系统:
启动namenode和datanode守护进程:
Hadoop守护进程的日志写入到 $HADOOP_LOG_DIR 目录 (默认是 $HADOOP_LOG_DIR /logs).
浏览NameNode网络接口,它的地址默认为:
NameNode —— http://localhost:9870/ (使用时localhost以Hadoop所在机器ip为准)
生成HDFS请求目录执行MapReduce任务
将输入文件拷贝到分布式文件系统
运行提供的示例程序
查看输出文件:
将输出文件从分布式文件系统拷贝到本地文件系统查看:
或者,在分布式文件系统上查看输出文件:
完成全部操作后,停止守护进程: