小编给大家分享一下SUSE上如何搭建Hadoop环境,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
“专业、务实、高效、创新、把客户的事当成自己的事”是我们每一个人一直以来坚持追求的企业文化。 创新互联是您可以信赖的网站建设服务商、专业的互联网服务提供商! 专注于成都网站设计、成都做网站、外贸网站建设、软件开发、设计服务业务。我们始终坚持以客户需求为导向,结合用户体验与视觉传达,提供有针对性的项目解决方案,提供专业性的建议,创新互联建站将不断地超越自我,追逐市场,引领市场!
【环境】:
经常遭遇因为依赖软件版本不匹配导致的问题,这次大意了,以为java问题不大,就用本来通过yast安装的java1.6 openjdk去搞了,结果可想而知,问题很多,反复定位,反复谷歌百度,最后一朋友启发下决定换换jdk版本。问题解决了,所以这里贴下我的环境
java环境: java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
系统: openSUSE 11.2 (x86_64)
hadoop版本:Hadoop-1.1.2.tar.gz
【Step1:】创建hadoop用户及用户组
组:hadoop
用户:hadoop -> /home/hadoop
加权限: vi /etc/sudoers 增加 hadoop ALL=(ALL:ALL) ALL
【Stpe2:】安装hadoop
笔者tar xf 安装完后是这样的目录结构(供参考):
/home/hadoop/hadoop-home/[bin|conf]
【Step3:】配SSH(避免启动hadoop时需要密码)
略安装ssh
ssh-keygen -t rsa -P "" [一路回车及确认]
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
尝试 ssh localhost [检查下是不是不需要密码啦]
【Step4:】安装java
版本见【环境】部分
【Step5:】配conf/hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_17xxx #[jdk目录]
export HADOOP_INSTALL=/home/hadoop/hadoop-home
export PATH=$PATH:$HADOOP_INSTALL/bin #[这里是hadoop脚本所在目录]
【Step6:】使用单机模式
hadoop version
mkdir input
man find > input/test.txt
hadoop jar hadoop-examples-1.1.2.jar wordcount input output
【Step7:】伪分布模式(单机实现namenode,datanode,tackerd等模块)
conf/[core-site.xml、hdfs-site.xml、mapred-site.xml]
core-site.xml
fs.default.name hdfs://localhost:9000 hadoop.tmp.dir /usr/local/hadoop/tmp
hdfs-site.xml
erty> dfs.replication 2 dfs.name.dir /usr/local/hadoop/datalog1,/usr/local/hadoop/datalog2 mapred.job.tracker localhost:9001 dfs.data.dir /usr/local/hadoop/data1,/usr/local/hadoop/data2
mapred-site.xml
mapred.job.tracker localhost:9001
【Step8:】启动
格式化:hadoop namenode -format
cd bin
sh start-all.sh
hadoop@linux-peterguo:~/hadoop-home/bin> sh start-all.sh starting namenode, logging to /home/hadoop/hadoop-home/libexec/../logs/hadoop-hadoop-namenode-linux-peterguo.out localhost: starting datanode, logging to /home/hadoop/hadoop-home/libexec/../logs/hadoop-hadoop-datanode-linux-peterguo.out localhost: starting secondarynamenode, logging to /home/hadoop/hadoop-home/libexec/../logs/hadoop-hadoop-secondarynamenode-linux-peterguo.out starting jobtracker, logging to /home/hadoop/hadoop-home/libexec/../logs/hadoop-hadoop-jobtracker-linux-peterguo.out localhost: starting tasktracker, logging to /home/hadoop/hadoop-home/libexec/../logs/hadoop-hadoop-tasktracker-linux-peterguo.out
jps查看进程是否全启动 五个java进程 jobtracker/tasktracker/namenode/datanode/sencondarynamenode
可以通过下面的操作来查看服务是否正常,在Hadoop中用于监控集群健康状态的Web界面:
http://localhost:50030/ - Hadoop 管理介面
http://localhost:50060/ - Hadoop Task Tracker 状态
http://localhost:50070/ - Hadoop DFS 状态
【Step9:】操作dfs数据文件
hadoop dfs -mkdir input
hadoop dfs -copyFromLocal input/test.txt input
hadoop dfs -ls input
【Step10:】运行dfs上的mr
hadoop jar hadoop-examples-1.1.2.jar wordcount input output
hadoop dfs -cat output/*
【Step11:】关闭
stop-all.sh
看完了这篇文章,相信你对“SUSE上如何搭建Hadoop环境”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!