1.下载,http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/ 选择1.2.1版本。版本务必选择OK,否则安装起来会出一些麻烦。
2,新建hadoop用户及ssh什么的略,自己弄。
ssh:sudo apt-get install openssh-server即可包含了client版本
hadoop用户可以不添加,添加的话按照相关指令操作即OK。
预先设置好JDK,弄好eclipse后面要用。
3,hadoop解压后拷贝到/usr/local下,并改名hadoop( mv指令 ),并修改文件夹权限 sudo chown hadoop hadoop
4,在hadoop文件夹下新建tmp, /hdfs/name, hdfs/data,
三个文件夹对应在配置文件中,提前新建好,防止后面出现文件新建权限问题。
修改conf文件夹下文件
core-site.xml:
- <configuration>
- <property>
- <name>fs.default.name</name>
- <value>hdfs://localhost:9000</value>
- </property>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>/usr/local/hadoop/tmp</value>
- </property>
- </configuration>
hdfs-site.xml:
- <configuration>
- <property>
- <name>dfs.replication</name>
- <value>1</value>
- </property>
- <property>
- <name>dfs.name.dir</name>
- <value>/usr/local/hadoop/hdfs/name</value>
- </property>
- <property>
- <name>dfs.data.dir</name>
- <value>/usr/local/hadoop/hdfs/data</value>
- </property>
- </configuration>
mapred-site.xml:
- <configuration>
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
- </configuration>
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:/usr/local/hadoop/bin
启动hadoop,进入bin文件夹,./start-all.sh
jps:查看进程
10669 TaskTracker
10321 SecondaryNameNode
9824 NameNode
10740 Jps
5093 org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
10407 JobTracker
10070 DataNode
9,检查运行状态:
所有的设置已完成,Hadoop也启动了,现在可以通过下面的操作来查看服务是否正常,在Hadoop中用于监控集群健康状态的Web界面:
http://localhost:50030/ - Hadoop 管理介面
http://localhost:50060/ - Hadoop Task Tracker 状态//打不开
http://localhost:50070/ - Hadoop DFS 状态//打不开
注:1、在虚拟机上再次安装jdk出现lib中的tools.jar和/jre/lib中的rt.jar为.pack格式,利用bin中unpack200指令转换下,sudo unpack200 ../lib/tools.pack ../lib/tools.jar
2、hadoop namenode -format时出现 Warning: $HADOOP_HOME is deprecated. 在/etc/profile中添加 export HADOOP_HOME_WARN_SUPPRESS=1
因为Hadoop本身对HADOOP_HOME做了判断,具体在bin/hadoop和bin/hadoop-config.sh里。在hadoop-config.sh里有如下的配置:
- if [ "$HADOOP_HOME_WARN_SUPPRESS" = "" ] && [ "$HADOOP_HOME" != "" ]; then
- echo "Warning: \$HADOOP_HOME is deprecated." 1>&2
- echo 1>&2
- fi
3、虚拟机上莫名地终于启动成功,目前是将hadoop文件夹所有权改变为cc(未新建hadoop用户)chown cc hadoop -R
但是namenode管理页面打不开,50070端口页面,
问题出在哪里不是很清楚,不过貌似是由于每次start后,关机之前没有运行stop的缘故造成的。下面的方法应该有用:
1、先运行stop-all.sh
2、格式化namdenode,不过在这之前要先删除原目录(tmp下内容),即core-site.xml下配置的<name>Hadoop.tmp.dir</name>所指向的目录,删除后切记要重新建立配置的空目录,然后运行hadoop namenode -format
3、运行start-all.sh
eclipse中hadoop配置:将eclipse-plugin。jar插件放在eclipse的plugin文件夹下,重启eclipse就可以
默认端口 设置位置 描述信息
8021 JT RPC 交互端口
50030 mapred.job.tracker.http.address JobTracker administrative web GUI JOBTRACKER的HTTP服务器和端口
50070 dfs.http.address NameNode administrative web GUI NAMENODE的HTTP服务器和端口
50010 dfs.datanode.address DataNode control port DATANODE控制端口,主要用于DATANODE初始化时向NAMENODE提出注册和应答请求
50020 dfs.datanode.ipc.address DataNode IPC port, used for block transfer DATANODE的RPC服务器地址和端口
50060 mapred.task.tracker.http.address Per TaskTracker web interface TASKTRACKER的HTTP服务器和端口
50075 dfs.datanode.http.address Per DataNode web interface DATANODE的HTTP服务器和端口
50090 dfs.secondary.http.address Per secondary NameNode web interface 辅助DATANODE的HTTP服务器和端口