Hadoop安装教程——单机模式
来源:互联网 发布:淘宝卖家添加子账号 编辑:程序博客网 时间:2024/05/18 20:12
实验平台:Ubuntu 9.04,Hadoop0.20,JDK1.6
step 1. ssh的安装设置
由于Hadoop用ssh 通信,因此先进行免密码登录设定,
$ apt-get install ssh
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ ssh localhost
完成后请登入确认不用输入密码,(第一次登入需按enter键,第二次就可以直接登入到系统。
~$ ssh localhost
~$ exit
~$ ssh localhost
~$ exit
step 2. 安装java
由于 Sun Java Runtime 是执行 Hadoop 必备的工具,因此我们需要安装 JRE 或 JDK。这里我们直接安装 JDK,因为后面写程序仍旧需要用到 JDK 所提供的编译程序。目前 Ubuntu 9.04 提供的 JDK 套件最新版本为 Sun Java(TM) Development Kit (JDK) 6 ,套件名称为 sun-java6-jdk。并建议删除原本的 「 gcj 」 。
~$ sudo apt-get purge java-gcj-compat
~$ sudo apt-get install sun-java6-bin sun-java6-jdk sun-java6-jre
step 3. 下载安装Hadoop
•请至下载 Hadoop 0.20,并解开压缩文件到 /opt 路径。
•$ tar zxvf hadoop-0.20.0.tar.gz
•$ sudo mv hadoop-0.20.0 /opt/
•$ sudo chown -R hadoop:hadoop /opt/hadoop-0.20.0
•$ sudo ln -sf /opt/hadoop-0.20.0 /opt/hadoop
step 4. 设定 hadoop-env.sh
•进入 hadoop 目录,做进一步的设定。我们需要修改两个档案,第一个是 hadoop-env.sh,需要设定 JAVA_HOME, HADOOP_HOME, PATH 三个环境变量。
/opt$ cd hadoop/
/opt/hadoop$ cat >> conf/hadoop-env.sh << EOF
贴上以下信息
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:/opt/hadoop/bin
EOF
step 5. 设定 hadoop配置文件
•編輯 /opt/hadoop/conf/core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/tmp/hadoop/hadoop-${user.name}</value>
</property>
</configuration>
•編輯 /opt/hadoop/conf/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
•編輯 /opt/hadoop/conf/mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
step 6. 格式化HDFS
•以上我们已经设定好 Hadoop 单机测试的环境,接着让我们来启动 Hadoop 相关服务,格式化 namenode, secondarynamenode, tasktracker
•$ cd /opt/hadoop
•$ source /opt/hadoop/conf/hadoop-env.sh
•$ hadoop namenode -format
执行画面如:
09/03/23 20:19:47 INFO dfs.NameNode: STARTUP_MSG:
09/03/23 20:19:47 INFO fs.FSNamesystem: fsOwner=hadooper,hadooper
09/03/23 20:19:47 INFO fs.FSNamesystem: supergroup=supergroup
09/03/23 20:19:47 INFO fs.FSNamesystem: isPermissionEnabled=true
09/03/23 20:19:47 INFO dfs.Storage: Image file of size 82 saved in 0 seconds.
09/03/23 20:19:47 INFO dfs.Storage: Storage directory /tmp/hadoop-hadooper/dfs/name has been successfully formatted.
09/03/23 20:19:47 INFO dfs.NameNode: SHUTDOWN_MSG:
step 7. 启动Hadoop
•接着用 start-all.sh 来启动所有服务,包含 namenode, datanode,
/opt/hadoop$ bin/start-all.sh
执行画面如:
starting namenode, logging to /opt/hadoop/logs/hadoop-hadooper-namenode-vPro.out
localhost: starting datanode, logging to /opt/hadoop/logs/hadoop-hadooper-datanode-vPro.out
localhost: starting secondarynamenode, logging to /opt/hadoop/logs/hadoop-hadooper-secondarynamenode-vPro.out
starting jobtracker, logging to /opt/hadoop/logs/hadoop-hadooper-jobtracker-vPro.out
step 8. 安装完毕测试
•启动之后,可以检查以下网址,来观看服务是否正常。Hadoop 管理接口 Hadoop Task Tracker 状态 Hadoop DFS 状态
•http://localhost:50030/ - Hadoop 管理接口
——————————————————分割线————————————————————
还有就是使用 web 接口。
访问 http://localhost:50030 可以查看 JobTracker 的运行状态。
访问 http://localhost:50060 可以查看 TaskTracker 的运行状态。
访问 http://localhost:50070 可以查看 NameNode 以及整个分布式文件系统的状态,浏览分布式文件系统中的文件以及 log 等。
step 9.运行wordcount.java
在hadoop所在目录里有几个jar文件,其中hadoop-examples-0.20.203.0.jar就是我们需要的,它里面含有wordcount,咱们使用命令建立测试的文件
(1)先在本地磁盘建立两个输入文件file01 和file02:
$ echo “Hello World Bye World” > file01
$ echo “Hello Hadoop Goodbye Hadoop” > file02
(2)在hdfs 中建立一个input 目录:$ hadoop fs –mkdir input
(3)将file01 和file02 拷贝到hdfs 中:
$ hadoop fs –copyFromLocal /home/hexianghui/soft/file0* input
(4)执行wordcount:
$ hadoop jar hadoop-0.20.1-examples.jar wordcount input output
(5)完成之后,查看结果:
$ hadoop fs -cat output/part-r-00000
结果为:
Bye 1
Goodbye 1
Hadoop 2
Hello 2
World 2
可能遇到的问题
1:运行wordcount程序,控制台没任何显示
原因:因为我的hadoop启动後默认进入safemode模式,该模式下不允许对文件进行修改和删除。所以使用
hadoop dfsadmin -safemode leave
离开安全模式
2:控制台报错
Exception in thread "main" java.io.IOException: Error opening job jar: hadoop-0.20.2-examples.jar
at org.apache.hadoop.util.RunJar.main(RunJar.java:90)
Caused by: java.util.zip.ZipException: error in opening zip file
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:131)
at java.util.jar.JarFile.<init>(JarFile.java:150)
at java.util.jar.JarFile.<init>(JarFile.java:87)
at org.apache.hadoop.util.RunJar.main(RunJar.java:88)
这是因为找不到 job jar 而出现的错误
正确命令
bin$ hadoop jar ../hadoop-0.20.2/hadoop-0.20.2-examples.jar wordcount input output
或者
$ bin/hadoop jar hadoop-0.20.1-examples.jar wordcount input output
3:控制台报错
org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory output already exists
这是因为mapreduce的输出都应该是单独的输出文件,不能有重名的情况
需要删除已有的同名文件
/opt/hadoop/bin/hadoop fs -rmr output- Hadoop安装教程——单机模式
- Hadoop安装教程——单机(伪分布)模式
- hadoop单机模式安装
- Hadoop单机模式安装
- Hadoop单机模式安装
- HADOOP单机模式安装
- Hadoop单机模式安装
- Ubuntu单机模式安装Hadoop——亲验
- HADOOP入门-单机模式安装HADOOP
- Hadoop基础入门教程-Hadoop单机模式安装
- Hbase单机模式安装教程
- linux 下安装 单机模式 hadoop
- hadoop实战之安装与单机模式
- ubuntu下安装hadoop(单机模式)
- Hadoop-1.2.1安装HBase(单机模式)
- Hadoop单机模式的配置与安装
- Hadoop单机模式中Hive安装配置
- Hadoop环境安装初探-单机模式配置
- Android Handler
- 理解Java-WEB开发中的MVC开发模式
- 研究显示全球网民已超23亿每秒新增8个用户
- 初学java 之java 简介
- 批处理清除svn
- Hadoop安装教程——单机模式
- 第十周 任务二
- Quartus错误与警告分析!
- vmware虚拟机珍藏版
- Linux 信号量sem_wait(3) (翻译 man 3)
- mysql 导入/导出工具
- final 修饰符
- Spring+struts+ejb(一)
- 《C程序设计语言》——数据类型