ubuntu10.04+hadoop0.20.2平台配置(完全分布式模式)

配置环境及有关工具:ubuntu10.04  、hadoop0.20.2 、 jdk1.6.0_29

我们的机器有三台,一台当作namenode、两台当作datanode:

namenode:IP:192.168.0.25、机器名:kiddenzj 这里的机器名要注意:机器名不能包含下划线“_”,一开始没注意后来找了半天才发现这个原

datanode:IP:192.168.0.8 、机器名:kiddenxcc  

                     IP192.168.0.66、机器名: kiddenhw

集群里所有登陆的用户名和密码都要保持相同,我在这里创建了名为grid的用户,后面的步骤就是在这个用户下进行的。


配置步骤:

1)安装ssh

输入命令:

[java] view plaincopy
  1. apt-get install ssh  

2)SSH配置

SSH配置主要是为了实现在机器间执行指令时不再需要输入密码,在所有的机器上建立.ssh目录,这里我们建立在/home/grid下面:

[html] view plaincopy
  1. mkdir .ssh  
然后在namenode机器上生成密钥对,执行:

[html] view plaincopy
  1. ssh-keygen -t rsa  
然后一直按Enter键,就会按照默认选项生成密钥对保存在.ssh/id_rsa文件中。

继续执行如下命令,把密钥传递给每个datanode节点:

[java] view plaincopy
  1. cd ~/.ssh  
  2. cp id_rsa.pub authorized_keys  
  3. scp authorized_keys kiddenhw:/home/grid/.ssh  
  4. scp authorized_keys kiddenxcc:/home/grid/.ssh  
 然后分别在每台datanode机器上执行如下命令,以改变authorized_keys文件的许可权限:

[html] view plaincopy
  1. chmod 644 authorized_keys  
到此,从namenode发起的到其他datanode节点的SSH连接,就会只需在第一次登录是输入密码,以后则不再需要。

可以通过如下命令发起连接:

[html] view plaincopy
  1. ssh kiddenhw  

3)jdk的安装(namenode机和datanode机均按此安装)

下载jdk-6u29-linux-i586.bin,安装到/usr/java下,cd到usr/java下,

[python] view plaincopy
  1. sudo chmod u+x jdk-6u29-linux-i586.bin  
  2. sudo ./jdk-6u29-linux-i586.bin  

接下来要设置java的环境变量输入命令:

[javascript] view plaincopy
  1.  sudo gedit /etc/profile  
在文件的最后添加以下语句:
[html] view plaincopy
  1. JAVA_HOME=/usr/java/jdk1.6.0_29  
  2.   
  3. export JRE_HOME=/usr/java/jdk1.6.0_29/jre  
  4.   
  5. export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH  
  6.   
  7. export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH  

保存退出,然后执行source /etc/profile即可。

输入java -version 命令,出现如下信息就表示配置成功

[java] view plaincopy
  1. java version "1.6.0_29"  
  2. Java(TM) SE Runtime Environment (build 1.6.0_29-b11)  
  3. Java HotSpot(TM) Server VM (build 20.4-b02, mixed mode)  
4)hadoop的安装配置(只是在namenode端安装配置,完成后namenode可以直接把配置好的hadoop发送到各个datanode端)

在这里,下载hadoop-0.20.2.tar.gz,然后解压到/home/grid/下即可,

在hadoop文的件夹下需要建立几个文件夹,如下:

(这里一开始没有创建,结果查看运行信息的时候,虽然datanode节点都有进程在运行,但livenodes节点依然为0)

[html] view plaincopy
  1. mkdir tmp  
  2. mkdir hdfs  
  3. mkdir hdfs/name  
  4. mkdir hdfs/data  
接下来需要修改hadoop的conf文件夹下的配置信息:

修改hadoop-env.sh,加入如下语句,使得hadoop能够找到java的路径。:

[java] view plaincopy
  1. export JAVA_HOME=/usr/java/jdk1.6.0_2  

修改core-site.xml,如下:

[java] view plaincopy
  1. <configuration>  
  2. <property>  
  3. <name>fs.default.name</name>  
  4. <value>hdfs://kiddenzj:9000</value>  
  5. </property>  
  6. </configuration>  

修改hdfs-site.xml,如下

[cpp] view plaincopy
  1. <configuration>  
  2. <property>  
  3. <name>dfs.replication</name>  
  4. <value>1</value>  
  5. </property>  
  6. </configuration>  

修改mapred-site.xml,如下:

[java] view plaincopy
  1. <configuration>  
  2. <property>  
  3. <name>mapred.job.tracker</name>  
  4. <value>kiddenzj:9001</value>  
  5. </property>  
  6. </configuration>  
masters里写入作为namenode节点机器的名称,我们这里是:kiddenzj

slaves里写入作为datanode节点的机器名,这里是:kiddenhw和kiddenxcc

到此,hadoop的有关配置已经完成,namenode端通过如下命令把配置好的hadoop发送到各个datanode处:

[html] view plaincopy
  1. scp -r hadoop-0.20.2 kiddenhw:/home/grid  
  2. scp -r hadoop-0.20.2 kiddenxcc:/home/grid  

5)修改每台机器上/etc下面的hosts文件,也就是写入所有的机器名和对应IP地址(包括namenode和datanode节点),我们这里修改后如下:

[java] view plaincopy
  1. 127.0.0.1   localhost  
  2. 192.168.0.8    kiddenxcc  
  3. 192.168.0.25   kiddenzj  
  4. 192.168.0.66   kiddenhw  
6)
到此基本配置已经完成,在namenode端cd到hadoop文件夹下,格式化分布式文件系统:

[html] view plaincopy
  1. bin/hadoop namenode -format  

下面接着在namenode端启动hadoop进程:

[html] view plaincopy
  1. bin/start-all.sh  
如果没有其它差错的话,hadoop可以正常启动,并能够看到如下结果:

在namenode端用jps命令查看启动情况,如下:

[html] view plaincopy
  1. grid@kiddenzj:~/hadoop-0.20.2$ jps  
  2. xxxx Jps  
  3. xxxx Namenode  
  4. xxxx Secondarynamenode  
  5. xxxx JobTracker  

在datanode端用jps查看启动情况,如下:

[html] view plaincopy
  1. grid@kiddenhw:~/hadoop-0.20.2$ jps  
  2. xxxx Jps  
  3. xxxx DataNode  
  4. xxxx TaskTracker  

然后可以通过如下地址来查看集群运行状况:

[html] view plaincopy
  1.     http://kiddenzj:50030  
  2.     http://kiddenzj:50070  
  3. <pre name="code" class="html">    http://kiddenhw:50060</pre>  
  4. <pre></pre>  
  5. <pre></pre>  
  6. <pre></pre>  
  7. <pre></pre>  
  8. <pre></pre>  
  9. <pre></pre>  
  10.      

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/387806.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

成佛、远不止渡沧海

地之及东南&#xff0c;有一海&#xff0c;称为“沧海”。沧海对面&#xff0c;就是仙家佛地。凡是能渡过沧海到达彼岸的人&#xff0c;就能立地成佛&#xff0c;修成正果。 于是&#xff0c;许许多多的人千里迢迢赶来&#xff0c;或乘帆船&#xff0c;或乘木筏&#xff0c;纷纷…

软件架构演进

传统架构到分布式架构详解 软件架构演进软件架构的发展经历了从单体架构、垂直架构、SOA架构到微服务架构的过程&#xff0c;博客里写到了这四种架构的特点以及优缺点分析&#xff0c;个人学习之用&#xff0c;仅供参考&#xff01; 1.1.1 单体架构 特点&#xff1a;1、所有的…

hadoop0.20.0第一个例子

这是Hadoop学习全程记录第2篇&#xff0c;在这篇里我将介绍一下如何在Eclipse下写第一个MapReduce程序。 新说明一下我的开发环境&#xff1a; 操作系统&#xff1a;在windows下使用wubi安装了ubuntu 10.10 hadoop版本&#xff1a;hadoop-0.20.2.tar.gz Eclipse版本&…

IDEA 修改JavaWeb的访问路径

问题描述 对于我这个刚刚使用IDEA不久的新手来说&#xff0c;能够正常运行就不错了,不过到了后面&#xff0c;可能会觉得IDEA给你分配的默认访问路径很不顺手&#xff0c;比如访问的时候需要通过: http://localhost:8080/web_war_exploded/ 来访问&#xff0c;对于web_w…

防撞库基本要求

专用安全要求 口令要求 设计要求说明 要求 是否满足 密码长度至少 8位字符&#xff0c;密码复杂性要求至少包含以下4种类别中的2种&#xff1a;大写字母、小写字母、数字、特殊符号 必选 满足 系统应具备对口令强度检测的能力&#xff0c;并对用户进行提示&#xff08;尽量不要…

odoo10 继承(扩展)、模块数据

一&#xff1a;继承 在不改变底层对象的时候添加新的功能——这是通过继承机制来实现的&#xff0c;作为在现有对象之上的修改层&#xff0c;这些修改可以发生在所有级别&#xff1a;模型&#xff0c;视图和业务逻辑。不是直接修改现有模块&#xff0c;而是创建一个新模块以添加…

做一个vue的todolist列表

<template><div id"app"><input type"text" v-model"todo" ref"ip"/><button click"add()">新增</button><br/><br/><hr/><ul><li v-for"(item,key) in li…

hadoop+hive-0.10.0完全分布式安装方法

hadoophive-0.10.0完全分布式安装方法 1、jdk版本&#xff1a;jdk-7u60-linux-x64.tar.gz http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk7-downloads-1880260.html 2、hive版本&#xff1a;hive-0.10.0.tar.gz https://archive.apache.org/dist/hive/hive-0…

关于gitgithub的操作

先马克&#xff0c;回头细看&#xff0c;然后整理一下 https://linux.cn/article-4292-1.html转载于:https://www.cnblogs.com/mengjie1001/p/10076530.html

一种解决 MacBook 里的 App Store 无法登录的问题

刚刚买回来的 2018 款带有 touchbar 的 MacBook Pro 15 inc 在用 App Store 安装 app 时一直无法登录成功&#xff08;网络链接都是好的&#xff09;&#xff0c;导致软件都无法更新&#xff0c;折腾了挺一会的。 后来发现是要退出设置里的 iCloud 登录&#xff0c;然后重新登录…

第二次冲刺

1、今日各个成员的问题 组员问题张晋誌对mui的API看得不是很懂&#xff0c;无法顺利的使用袁庆杰基础不牢,编写困难周建峰eclipse没法创建web项目&#xff0c;按照网上的方法&#xff0c;check for updates 和 install new software 之后也没用许家烨给单一功能知道如何实现但项…

牌类游戏使用微服务重构笔记(八): 游戏网关服务器

网关服务器 所谓网关&#xff0c;其实就是维持玩家客户端的连接&#xff0c;将玩家发的游戏请求转发到具体后端服务的服务器&#xff0c;具有以下几个功能点&#xff1a; 长期运行&#xff0c;必须具有较高的稳定性和性能对外开放&#xff0c;即客户端需要知道网关的IP和端口&a…

配置独立于系统的PYTHON环境

配置独立于系统的PYTHON环境 python 当前用户包 一种解决方案是在利用本机的python环境的基础上&#xff0c;将python的包安装在当前user的.local文件夹下 一共有两种方式来实现pip的时候安装到当前user 设置pip配置文件 pip.conf 一种是在~/.pip文件夹下的pip配置文件pip.conf…

好程序员技术教程分享JavaScript运动框架

好程序员技术教程分享JavaScript运动框架&#xff0c;有需要的朋友可以参考下。 JavaScript的运动&#xff0c;即让某元素的某些属性由一个值变到另一个值的过程。如让div的width属性由200px变到400px&#xff0c;opacity属性由0.3变到1.0&#xff0c;就是一个运动过程。 实现运…

linux 下mysql等php的安装 lnmp

访问https://lnmp.org/install.html按照步骤安装 当下载执行完 wget -c http://soft.vpser.net/lnmp/lnmp1.3.tar.gz && tar zxf lnmp1.3.tar.gz && cd lnmp1.3 && ./install.shlnmp 要到.install.sh下改一下下载地址&#xff0c;把http直接更换成…

单纯形法

单纯形法 如果目标函数中所有系数都非正&#xff0c;那么显然这些变量直接取0是最优的&#xff0c;所以此时答案为即为常数项。 我们要做的就是通过转化把目标函数的系数全部搞成非负。 思路就是用非基变量替换基变量。 先找到一个目标函数中系数为正的变量&#xff0c;在所有限…

洛谷P1828 香甜的黄油 Sweet Butter

香甜的黄油 Sweet Butter 黄油真的是这么做的吗&#xff1f;&#xff01;&#xff01;&#xff01;[惶恐] 这道题是Dijkstra算法的简单变形 通过题意我们要找到一个点使奶牛所在点的路程和最短。通过Dijkstra的模板我们可以求的一点到其他任一点的最短路径&#xff0c;那么我们…

JAVA List集合转Page(分页对象)

/*** version 1.0* author: fwjia*/ import java.util.List;public class PageModel<T> {/**** 当前页*/private int page 1;/**** 总页数*/public int totalPages 0;/**** 每页数据条数*/private int pageRecorders;/**** 总页数*/private int totalRows 0;/**** 每页…

分区分表实验用的语句

--查看索引 select * from DBA_IND_PARTITIONS &#xff54;; select status,t.* from dba_indexes t where t.OWNERGANSUSC; select count(*) from ACT_HI_VARINST SELECT ALTER INDEX || TABLE_OWNER || . || INDEX_NAME || UNUSABLE; UNUSABLE_INDEX FROM ALL_INDEX…

分布式数据库数据一致性的原理、与技术实现方案

http://youzhixueyuan.com/the-principle-and-technology-realization-of-distributed-data-consistency.html 背景 可用性&#xff08;Availability&#xff09;和一致性&#xff08;Consistency&#xff09;是分布式系统的基本问题&#xff0c;先有著名的CAP理论定义过分布式…