设为首页 收藏本站
查看: 1016|回复: 0

[经验分享] Hadoop安装配置手册

[复制链接]

尚未签到

发表于 2015-7-11 09:42:52 | 显示全部楼层 |阅读模式
Hadoop安装配置手册

  一、      准备篇
  Hadoop运行环境:


  • SSH服务正常运行
  • JDK
  没安装的可以自己安装一下。
  
  二、      基础篇(单节点Hadoop)


  • Hadoop下载
  Hadoop下载页:http://hadoop.apache.org/releases.html#Download
  本文基于hadoop1.0.4版本,下载:http://labs.mop.com/apache-mirror/hadoop/common/hadoop-1.0.4/hadoop-1.0.4.tar.gz
  解压下载的源码压缩包到合适的位置,如:/Users/yinxiu/dev/hadoop-1.0.4(这是本文安装hadoop的位置)


  • 环境变量(hadoop_env.sh)
  目录/Users/yinxiu/dev/hadoop-1.0.4/conf
  2.1 JAVA_HOME 必须变量
  export JAVA_HOME=实际JDK路径
  如:
  export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
  2.2  HADOOP_HOME 可选变量
  HADOOP_HOME默认的是bin目录的父目录,本文中的配置就是/Users/yinxiu/dev/hadoop-1.0.4
  export HADOOP_HOME=/Users/yinxiu/dev/hadoop-1.0.4
  注意:在试验的时候发现配置了HADOOP_HOME后启动Hadoop提示:$HADOOP_HOME is deprecated.
  这个提示是说重复定义了。
  这个警告发生在HADOOPINSTALL/bin/hadoop-config.sh中:
  if [ "$HADOOP_HOME_WARN_SUPPRESS" = "" ] && [ "$HADOOP_HOME" != "" ]; then
  echo "Warning: \$HADOOP_HOME is deprecated." 1>&2
  echo 1>&2
  fi
  export HADOOP_HOME=${HADOOP_PREFIX}
  解决方法:可以去除HADOOP_HOME的配置,也可以通过添加export HADOOP_HOME_WARN_SUPPRESS=TRUE到hadoop-env.sh中。


  • 环境配置文件的配置
  主要有三个配置文件:core-site.xml,hdfs-site.xml,mapred-site.xml
  3.1 conf/core-site.xml
  
  
  fs.default.name
  hdfs://(master ip):9000
  
  
  hadoop.tmp.dir
  hadoop运行的临时目录
  
  
  hadoop运行的临时目录:/Users/yinxiu/dev/hadoopdata/temp
  3.2  conf/hdfs-site.xml
  
  
  dfs.replication
  1
  
  
  dfs.data.dir
  DFS的数据保存目录
  
  
  dfs.name.dir
  DFS Namenode保存的位置
  
  
  DFS的数据保存目录:/Users/yinxiu/dev/hadoopdata/data
  DFS Namenode保存的位置:/Users/yinxiu/dev/hadoopdata/temp/dfs/name
  3.3  conf/mapred-site.xml
  
  
  mapred.job.tracker
  (master ip):9001
  
  
  可以配置单节点同时运行的最大map数和单节点同时运行的最大reduce数:
  mapred.tasktracker.map.tasks.maximum=8
  mapred.tasktracker.reduce.tasks.maximum=6


  • ssh配置(使其可以通过ssh无密码登录,即通过证书认证登录)
  sh-keygen –t dsa –P ‘’ –f ~/.ssh/id_dsa
  cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
  注意:connect to host localhost port 22: Connection refused
  运行hadoop的时候需要确保ssh运行正常。引起connect to host localhost port 22: Connection refused的原因可能有多个,比如没有开启远程登录。
  MAC开启远程登录:http://www.bluishcoder.co.nz/articles/mac-ssh.html


  • 启动
  进入HADOOPINSTALL目录
  5.1 格式化namenode
  执行bin/hadoop namenode -format
  5.2 简单启动所有守护
  bin/start-all.sh
  5.3 停止守护
  bin/stop-all.sh


  • 验证测试
  启动成功后可在浏览器查看以下地址:
  6.1 Job tracker
  http://master ip:50030
  
  6.2 NameNode
  http://master ip:50070
  
  三、      进阶篇(多节点Hadoop)
  以5台机子为例,分别为
  node-1 NameNode
  node-2 DataNode
  node-3 DataNode
  node-4 DataNode
  node-5 DataNode
  


  • 集群SSH设置(namenode通过ssh可以无密码登录datanode)
  在将作为NameNode的机器上生成密钥对:
  $ssh-keygen –t rsa –P ‘’ –f ~/.ssh/id_rsa
  $cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  注意ssh-keygen命令和cat命令的使用。
  提示要为生成的密钥输入passphrase的时候,直接回车将其设定为空密码
  将id_ras.pub的内容复制到每个机器(包括本机)的.ssh/authorized_keys文件中(如果原先有authorized_keys文件了将id_rsa.pub的内容追加在后面)
  复制和远程复制需要看cp和scp命令。
  如果ssh配置好了,就会出现以下提示信息
  The authenticity of host [servername-2] can’t be established.
  Key fingerprint is 1024 5f:a0:0b:65:d3:82:df:ab:44:62:6d:98:9c:fe:e9:52.
  Are you sure you want to continue connecting (yes/no)?
    OpenSSH告诉你它不知道这台主机,但是你不用担心这个问题,因为你是第一次登录这台主机。键入“yes”。这将把这台主机的“识别标记”加到“~/.ssh/know_hosts”文件中。第二次访问这台主机的时候就不会再显示这条提示信息了。
  注意:Authentication refused: bad ownership or modes for directory
/root错误的原因可能是权限问题或者用户组等问题,参考下面的一些资料。
  http://recursive-design.com/blog/2010/09/14/ssh-authentication-refused/
  http://bbs.iyunv.com/topics/380198627


  • 主机配置
  主机配置与基础篇中的配置基本一致,不再说明。


  • Masters/Slaves文件配置
  
NameNode节点的HADOOPINSTALL/conf/masters文件中添加主机名。那么本例中的masters文件内容如下:
  node-1
  
  HADOOPINSTALL/conf/slaves中添加DataNode节点的主机名,一行一个主机名。内容如下:
  node-2
  node-3
  node-4
  node-5


  • 部署Hadoop集群
  前面讲的这么多Hadoop的环境变量和配置文件都是在node-1这台master主机上的, 将上述配置好的hadoop分发至各个slave的相同位置,注意要保证目录结构一致。
  使用scp进行分发。


  • 启动
  配置完后对NameNode进行格式化。
  bin/hadoop
namenode –format
  启动与基础篇一致,使用简单的start-all.sh和stop-all.sh进行启动和关闭,注意启动前


  • 测试验证
  
  
  
  
  
  
  部分资料
  http://www.iyunv.com/xia520pi/archive/2012/05/16/2503949.html
  



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-85413-1-1.html 上篇帖子: Hadoop专业解决方案-第5章 开发可靠的MapReduce应用 下篇帖子: 王家林亲授的上海7月6-7日云计算分布式大数据Hadoop深入浅出案例驱动实战报名信息
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表