hadoop安装
centos 5.6 sunjava1.6.0_26
- 安装java 官方文档写最好是sun jdk 如果是opengdk的请注意。 #chmod u+x jdk-6u26-linux-i586-rpm.bin #./jdk-6u26-linux-i586-rpm.bin #java -version (查看安装信息) - 创建用户 请不要使用root用户直接执行。否者将出现Unrecognized option: -jvm Could not create the Java virtual machine. #useradd hadoop #passwd #su - hadoop - 安装hadoop $tar -zxf hadoop-0.20.203.0rc1.tar.gz $mv cd hadoop-0.20.203.0 /usr/local/hadoop - 创建ssh-key 设置ssh publlic key 为hadoop创建连接其他主机的通道 $ssh-keygent -t dsa (我将密码设置为空方便测试。正常环境请安装keychain) $cd .ssh $cat cat id_rsa.pub > authorized_keys $chmod 600 authorized_keys (将权限设置为600否者ssh将不读取公钥信息) - 简单hadoop 设置JAVA_HOME就可以运行。 $cd /usr/local/hadoop $vi conf/hadoop-env.sh 设置export JAVA_HOME=/usr/java/jdk1.6.0_26 为正确路径 $vi conf/core-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>fs.default.name</name> <value>hdfs://192.168.60.149:9000/</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/usr/local/hadoop/hadooptmp</value> </property> </configuration>
$vi conf/hdfs-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <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> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration> $vi conf/mapred-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>mapred.job.tracker</name> <value>192.168.60.149:9001</value> </property> <property> <name>mapred.local.dir</name> <value>/usr/local/hadoop/mapred/local</value> </property> <property> <name>mapred.system.dir</name> <value>/tmp/hadoop/mapred/system</value> </property> </configuration>
- 配置主从 配置masters文件和slaves文件 $vi conf/masters (因为我是单机测试及伪分布模式所以主从都是我自己) 192.168.60.149 $vi conf/slaves 192.168.60.149 - 编辑主机名 目的是都能找到自己相关的机器 #vi /etc/hosts 192.168.60.149 master 192.168.60.149 slave
- Hadoop启动 格式化namenode $bin/hadoop namenode -format 启动所有进程 $bin/start-all.sh - 日志信息 hadoop的日志信息默认在安装目录下面的logs下面 - 查看信息 hadoop默认开放web状态展示访问地址为 http://localhost:50070; http://localhost:50030; - 简单的daemo hadoop自带一些简单的实例。测试下单词统计功能。 创建一个文件夹,用于存储。 $bin/hadoop fs -mkdir test 将linstall.log这个文件放在test这个文件夹里面 $bin/hadoop fs -copyFromLocal install.log test 统计test文件夹里面的 单词数量 将答案放在testoutput里 $bin/hadoop jar hadoop-examples-0.20.203.0.jar wordcount test testoutput 运行后将可以在web界面看见job的状态。和完成的状态。 具体单词数量等统计结果要查看 $bin/hadoop fs -ls drwxr-xr-x - hadoop supergroup 0 2011-07-11 11:13 /user/hadoop/test drwxr-xr-x - hadoop supergroup 0 2011-07-11 11:15 /user/hadoot/testoutput $bin/hadoop fs -ls testoutput Found 3 items -rw-r--r-- 1 hadoop supergroup 0 2011-07-11 16:31 /user/hadoop/shanyang1/_SUCCESS drwxr-xr-x - hadoop supergroup 0 2011-07-11 16:30 /user/hadoop/shanyang1/_logs -rw-r--r-- 1 hadoop supergroup 32897 2011-07-11 16:31 /user/hadoop/shanyang1/part-r-00000 $bin/hadoop fs -cat /user/hadoop/shanyang1/part-r-00000 将可以看到详细的统计信息