-----------------------------------转载请说明出处,谢谢---------------------------------
宏观上是这么几个步骤
1.安装JDK (不讲)
2.配置SSH (访问方式)
3.下载安装hadoop(放到/usr/local下)
4.配置shell环境变量(方便简洁的操作hadoop)
5.配置hadoop相关变量,有(相关配置,使其启动,关键地方有红色加亮)
hadoop-env.sh , core-site.xml
,hdfs-site.xml
,mapred-site.xml
6.NameNode 来格式化 HDFS 文件系统,并启动(初始化并启动)
2.配置SSH
配置SSH
Hadoop需要用SSH来管理它的节点。针对单机的情况,我们需要配置SSH让运行hadoop的用户能够登录本机。
首先,我们需要为运行hadoop的用户生成一个SSH key:
$ ssh-keygen -t rsa -P ""
然后,让你可以通过新生成的key来登录本地机器。
$ cp ~/.ssh/id_rsa.pub
~/.ssh/authorized_keys
准备结束,下面开始安装hadoop。
3.提纲已经提到
4.配置shell环境变量(方便简洁的操作hadoop)
需要在 ~/.bashrc 文件里面添加一下内容:
# Set Hadoop-related environment variables
export HADOOP_HOME=/usr/local/hadoop-1.2.1
# Set JAVA_HOME (we also configure JAVA_HOME directly for
Hadoop)
export JAVA_HOME=/usr/local/java/jdk1.7.0_45
# Add Hadoop bin/ directory to PATH
export PATH=$PATH:/usr/local/hadoop-1.2.1/bin
# Neglect the warning of
HADOOP_HOME_WARING
export HADOOP_HOME_WARN_SUPPRESS=1
在修改完成后保存
输入: $source ~/.bashrc
相应的环境变量就配置好了。
5.配置hadoop相关变量,有(相关配置,使其启动,关键地方有红色加亮)
hadoop-env.sh , core-site.xml
,hdfs-site.xml
,mapred-site.xml
hadoop-env.sh
添加如下即可,设置jdk环境
# Set JAVA_HOME (we also configure JAVA_HOME directly for
Hadoop)
export JAVA_HOME=/usr/local/java/jdk1.7.0_45
conf/core-site.xml
Java代码
-
version="1.0"?>
-
type="text/xsl" href="configuration.xsl"?>
-
-
<!-- Put site-specific property overrides in this file. -->
-
-
-
- hadoop.tmp.dir
- /home/hadoop/hadoop-datastore/hadoop
(红色是你打算保存hadoop数据的文件夹)
-
-
- fs.default.name
- hdfs://localhost:9000
(空闲的端口)
-
-
hadoop.tmp.dir配置为你想要的路径,${user.name}会自动扩展为运行hadoop的用户名
conf/hdfs-site.xml
- <configuration>
- <property>
- <name>dfs.replicationname>
- <value>1value>
- property>
- configuration>
dfs.replication为默认block复制数量,这里是1
conf/mapred-site.xml
- <configuration>
- <property>
- <name>mapred.job.trackername>
- <value>localhost:9001value>
(空闲的端口,tracker监督)
- property>
- configuration>
6.NameNode 来格式化 HDFS 文件系统,并启动(初始化并启动)
在配置结束后,需要来对 HDFS 进行格式化,运行如下命令:
$ /usr/local/hadoop/bin/hadoop namenode -format
下面就来运行hadoop:
$ /usr/local/hadoop/bin/start-all.sh
查看是否成功启动:
这个命令会启动机器上的 namenode,datanode,jobtracker 和 tasktracker
有一个简单的工具来检查hadoop的运行状况,jps:
$ jps
4590 TaskTracker
4368 JobTracker
4270 SecondaryNameNode
4642 Jps
4028 DataNode
3801 NameNode
你也可以通过 netstat 命令来检查 hadoop 是否正常运行:
$ sudo netstat -plten | grep java
tcp 0 0
0.0.0.0:50070 0.0.0.0:*
LISTEN 1001
9236 2471/java
tcp 0 0
0.0.0.0:50010 0.0.0.0:*
LISTEN 1001
9998 2628/java
tcp 0 0
0.0.0.0:48159 0.0.0.0:*
LISTEN 1001
8496 2628/java
tcp 0 0
0.0.0.0:53121 0.0.0.0:*
LISTEN 1001
9228 2857/java
tcp 0 0 127.0.0.1:54310
0.0.0.0:* LISTEN
1001 8143 2471/java
tcp 0 0 127.0.0.1:54311
0.0.0.0:* LISTEN
1001 9230 2857/java
tcp 0 0
0.0.0.0:59305 0.0.0.0:*
LISTEN 1001
8141 2471/java
tcp 0 0
0.0.0.0:50060 0.0.0.0:*
LISTEN 1001
9857 3005/java
tcp 0 0
0.0.0.0:49900 0.0.0.0:*
LISTEN 1001
9037 2785/java
tcp 0 0
0.0.0.0:50030 0.0.0.0:*
LISTEN 1001
9773 2857/java
停止运行 hadoop ,运行以下命令:
$ /usr/local/hadoop/bin/stop-all.sh