-
配置环境变量
HADOOP_INSTALL=/home/grid/hadoop-1.2.1/
JAVA_HOME=/opt/default-java
PATH=$JAVA_HOME/bin:$HADOOP_INSTALL/bin:$PATH
CLASSPATH=$JAVA_HOME/lib
export JAVA_HOME PATH CLASSPATH HADOOP_INSTALL -
免密码登录
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys -
配置hadoop的配置
1)配置hadoop-env.sh,指定jdk的安装路径添加jdk路径
# The java implementation to use. required.
export JAVA_HOME=/opt/default-java
2)修改hadoop的核心配置文件core-site.xml,配置namenode的地址和端口<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
这个还是很必要的,如果不配置临时目录,格式化hdfs是会在/tem目录下创建临时目录但是tmp目录重启系统会清楚下面文件。这样namenode就启动不起来了
<property>
<name>hadoop.tmp.dir</name>
<value>/home/grid/hadoop-1.2.1/hadooptmpdir</value>
</property>3)修改hadoop的hdfs-site.xml,配置replication,即数据保存份数
<property>
<name>dfs.replication</name>
<value>1</value>
</property>4)修改hadoop的mapred-site.xml,配置jobtracker的地址和端口
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>注:涉及到IP的地方如果是完全分布式集群,需要改成具体的IP
-
格式化hadoop的文件系统HDFS
bin/hadoop namenode -format
-
启动hadoop
bin/start-all.sh
-
验证hadoop是否启动成功
NameNode - http://localhost:50070/
JobTracker - http://localhost:50030/ -
使用wordcount计算单词数
(1)新建hdfs目录,不是实际的系统文件目录,只能使用hadoop dfs -ls /XXX查看
hadoop dfs -mkdir input(2)将文件复制到新建的hdfs目录
hadoop dfs -put ./*.sh input/(3)使用hadoop的wordcount计算单词数
hadoop jar hadoop-examples-1.2.1.jar wordcount input output注:input 和 output都是hdfs文件目录。不同的是input是需要分析的目录,output是存放结果的目录,且自动生成,不能手动创建