热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Hadoop分布式搭建配置(详细)

【http://youzitool.com 新博客,欢迎访问】

http://youzitool.com 新博客,欢迎访问】


Hadoop分布式搭建配置(详细)

一、前期准备

1、hadoop-0.20.203.0rc1.tar.gz(官网下载)

2、VMware7 (官网下载)

3、jdk-6u25-linux-i586.bin (官网下载) 

4、 Ubuntu 10.04 (ISO)

 

用户:matraxa(192.168.110.100) 对应 namenode、secondnamenode、JobTracker

      wfl(192.168.110.101)    对应 datanode、TaskTrack

 

 

二、安装Ubuntu

 

磁盘分区方案见:http://blog.csdn.net/matraxa/article/details/6836697

 

三、安装jdk

1、在usr下面新建一个文件夹java,然后将jdk移过去

      sudo mkdir /usr/java

     sudo mv /home/jdk-6u25-linux-i586.bin /usr/java  //将jdk移动到/usr/java

2、进入到java目录下,改变文件权限为可执行 

    cd /usr/java

    sudo chmod 777 jdk-6u25-linux-i586.bin  //添加权限

3、执行安装

    sudo ./jdk-6u25-linux-i586.bin //安装JDK

4、设置环境变量

   sudo gedit /etc/profile  在“umask 022”前添加如下代码:



export JAVA_HOME=”/usr/java/jdk1.6.0_25″


export PATH=”$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin”


export CLASSPATH=”$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib”


 


5、souce /etc/profile   //使环境变量生效

6、which java     //测试JDK安装是否成功  成功则显示: /usr/java/jdk1.6.0_25/jre/bin/java

说明:另一种安装jdk的方法见:http://blog.csdn.net/matraxa/article/details/6840831

 

四、安装SSH ,实现SSH的无密码连接



说明:每台电脑上都要安装ssh


在namenode(这里为matraxa)上:


 


1、$ sudo apt-get install ssh //安装ssh (这步在每台电脑上都要执行!)


 


2、ssh-keygen -t dsa -P ” -f ~/.ssh/id_dsa //生成密钥(这里密码为空) 文件如:id_dsa  id_dsa.pub


 


3、 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys    //加入受信列表

4、 ssh localhost 或者 ssh matraxa    //第一次需输入”yes”,成功就能无密码访问 这个是进行的本地测试

5、把matraxa上的id_dsa.pub 文件追加到wfl的authorized_keys 内:a. 拷贝matraxa的id_dsa.pub文件:$ scp id_dsa.pub wfl@192.168.110.101:/home/wfl //如果拷贝到其它目录下,可能会出现permission denied错误,如拷贝到home下,这是因为其它用户没有写权限,我就因此悲剧了半天~

在datanode(这里为wfl)上:

登录wfl(192.168.110.101),进入/home/wfl目录执行:$ cat id_dsa.pub >> .ssh/authorized_keys //可以在matraxa上不输入密码直接访问wfl

说明:1、若要实现datanode无密码访问namenode,只需按照上面的步骤将datanode的*.pub文件复制到namenode上,并追加到authorized_keys中 

     2、其它文件都不用修改,网上有文章说要修改/etc/ssh/sshd_config,我配置的时候也是没有修改的

 

五、安装hadoop

注意:由于Hadoop要求所有机器上hadoop的部署目录结构要相同,并且都有一个相同的用户名的帐户。

我的为:/home/matraxa/hadoop-0.20.203

在namenode(这里为matraxa)上:

1、sudo gedit /etc/hosts

127.0.0.1    localhost



192.168.110.100 matraxa-desktop


192.168.110.100 matraxa


192.168.110.101 wfl-desktop


192.168.110.101 wfl

2、cd /home/matraxa

3、tar -xzvf hadoop-0.20.203.0rc1.tar.gz  //将压缩包解压到/home/matraxa

4、配置hadoop-0.20.203/conf 下的 hadoop-env.sh文件

   将# export JAVA_HOME=/usr/lib/j2sdk1.5-sun 改为:

     export JAVA_HOME=/usr/java/jdk1.6.0_25

5、配置hadoop-0.20.203/conf下的slaves文件,一行一个DataNode,格式为:用户名@hostip

wfl@wfl  //必须这样写,我开始只写的wfl(或192.168.110.101),花了很长时间都没配置正确,奔泪啊~

//修改masters文件内容为:

matraxa  //也可以是namenode的ip,由于在/etc/hosts中设置了matraxa与ip的对应,可以写为matraxa

6、配置hadoop-0.20.203/conf下的三个xml文件

修 改 core-site.xml


fs.default.name
hdfs://matraxa:9000

修改 mapred-site.xml


mapred.job.tracker
matraxa:9001

修改 hdfs-site.xml


dfs.replication
1

  
hadoop.tmp.dir  
/home/matraxa/hadoop_tmp_dir/  
  

7、进入hadoop-0.20.203/

bin/hadoop namenode -format //必需初始化  只需要初始化namenode

8、bin/start-all.sh  //启动namdnode

 

六、在datanode(这里为wfl)上:

注意:由于Hadoop要求所有机器上hadoop的部署目录结构要相同,并且都有一个相同的用户名的帐户。

我的为:/home/matraxa/hadoop-0.20.203

1、在wfl机器上建立了一个录:/home/matraxa。注意:将matraxa的宿主和属主都改为wfl

    命令如下:sudo mkdir /home/matraxa          //建立matraxa目录

              sudo chown -R wfl:wfl /home/matraxa  //更改宿主(-R表示递归)

2、将matraxa机器上/home/matraxa/hadoop-0.20.203文件夹拷贝到wfl机器上的/home/matraxa/

   命令为:scp -r /home/matraxa/hadoop-0.20.203 wfl@192.168.110.101:/home/matraxa/

3、/etc/hosts和namenode的一样   //参照namenode的1

 

七、启动Hadoop

1、格式化namenode:启动之前要先格式化namenode,进入/home/matraxa/hadoop-0.20.203目录,执行下面的命令:

bin/hadoop namenode -format


2、启动namenode:执行命令

bin/start-all.sh


要停止Hadoop则执行如下命令:bin/stop-all.sh

 

完美搭建完成!~

可以通过 http://matraxa:50070 查看namenode 状态

 http://matraxa:50030 查看 JobTracke状态 

 

说明:我Hadoop运行遇到了以下的错误:

org.apache.hadoop.security.AccessControlException: Permission denied: user=wfl, access=EXECUTE, inode=”job_201010161322_0003″:heipark:supergroup:rwx——

解决方法:在hdfs-site.xml中添加如下:





dfs.permissions



false





 


其它错误请见:

http://blog.csdn.net/matraxa/article/details/7179323


 


 


配置Hadoop虽然简单,但由于粗心花了我很久时间,还多亏了好友的帮忙,在此表示感谢。将此配置步骤记下以备今后忘记后查看,也希望能给正在配置Hadoop的朋友一点帮助。


若您有意见或建议,欢迎留言互相讨论~


推荐阅读
  • 在Ubuntu系统中安装Android SDK的详细步骤及解决“Failed to fetch URL https://dlssl.google.com/”错误的方法
    在Ubuntu 11.10 x64系统中安装Android SDK的详细步骤,包括配置环境变量和解决“Failed to fetch URL https://dlssl.google.com/”错误的方法。本文详细介绍了如何在该系统上顺利安装并配置Android SDK,确保开发环境的稳定性和高效性。此外,还提供了解决网络连接问题的实用技巧,帮助用户克服常见的安装障碍。 ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
  • Ubuntu 22.04 安装搜狗输入法详细指南及常见问题解决方案
    本文将详细介绍如何在 Ubuntu 22.04 上安装搜狗输入法,并提供常见问题的解决方法。包括下载安装包、更新源、安装依赖项等步骤。 ... [详细]
  • Hadoop的文件操作位于包org.apache.hadoop.fs里面,能够进行新建、删除、修改等操作。比较重要的几个类:(1)Configurati ... [详细]
  • 本文详细介绍了如何在Linux系统(以CentOS为例)上彻底卸载Zimbra邮件系统,包括停止服务、删除文件和用户等步骤。 ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上搭建 Hadoop 集群时遇到的 SSH 密钥认证问题及其解决方案。通过本文,读者可以了解如何在多台虚拟机之间实现无密码 SSH 登录,从而顺利启动 Hadoop 集群。 ... [详细]
  • 原文网址:https:www.cnblogs.comysoceanp7476379.html目录1、AOP什么?2、需求3、解决办法1:使用静态代理4 ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 本文将详细介绍如何注册码云账号、配置SSH公钥、安装必要的开发工具,并逐步讲解如何下载、编译 HarmonyOS 2.0 源码。通过本文,您将能够顺利完成 HarmonyOS 2.0 的环境搭建和源码编译。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • ### 优化后的摘要本学习指南旨在帮助读者全面掌握 Bootstrap 前端框架的核心知识点与实战技巧。内容涵盖基础入门、核心功能和高级应用。第一章通过一个简单的“Hello World”示例,介绍 Bootstrap 的基本用法和快速上手方法。第二章深入探讨 Bootstrap 与 JSP 集成的细节,揭示两者结合的优势和应用场景。第三章则进一步讲解 Bootstrap 的高级特性,如响应式设计和组件定制,为开发者提供全方位的技术支持。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 为什么多数程序员难以成为架构师?
    探讨80%的程序员为何难以晋升为架构师,涉及技术深度、经验积累和综合能力等方面。本文将详细解析Tomcat的配置和服务组件,帮助读者理解其内部机制。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
author-avatar
手机用户2502885647_951
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有