主要的软硬件配置:

x86台式机,window7  64位系统
vb虚拟机(x86的台式机至少是4G内存,才干开3台虚机)
centos6.4操作系统
hadoop-1.1.2.tar.gz
jdk-6u24-linux-i586.bin
WinScp 远程文件传输工具,非常好用。能够用于windows和虚拟机Linux之间文件相互拷贝。

一、root下的配置

a) 改动主机名:vi /etc/sysconfig/network

Master,slave1,slave2

b) 解析Ip: vi /etc/hosts

192.168.8.100 master

192.168.8.101 slave1

192.168.8.102 slave2

c) 调试网络:

採用网桥连接网络,配置网络。

改动后记得调用 service network restart

确保三台虚拟机可以相互ping通。

d) 关闭防火墙

查看:service  iptables  status

关闭:service  iptables  stop

查看防火墙有无自启动:

Chkconfig –-list | grepiptables

关闭自启动:

Chkconfig  iptables  off

二、yao用户下的配置

a) 创建用户yao,设置password,进入用户

useradd yao

passwd 123456

b) master创建公私秘钥

ssh-keygen –t rsa

1)将id_rsa.pub复制给authorized_keys

Cp id_rsa.pub authorized_keys

2)将master中的authorized_keys复制给slave1的/home下

scp id_rsa.pub root@192.168.8.101:/home

3)将master拷贝过来的authorized_keys拷贝到slave1本身所创的authorized_keys下,同理slave2的也是。最后达到任一个authorized_keys中都包括全部机组的公钥。

4)将hadoop拷贝拷贝到相应的机子中/home/yao/Documents/

在root下配置环境变量:vi /etc/profile

export HADOOP_HOME=/home/yao/Documents/hadoop

export HADOOP_HOME_WARN_SUPPRESS=1

export PATH=.:$PATH:$HADOOP_HOME

注:su + username实现切换用户。

5)安装jdk,解压时须要授权;

Chmod u+x jdk。。。

解压。

配置环境变量:vi /etc/profile

6)改动/hadoop/conf下的配置文件

改动core-site.xml

改动hdfs-site.xml

改动mapred-site.xml

7)改动hadoop/conf/hadoop-evn.xml文件,这里指定jdk的路径。

export JAVA_HOME=/usr/local/jdk

8)改动/hadoop/conf/masters  和slaves,相应协商虚拟机的名称,让hadoop知道主机和datanode;

Masters:  Master

Slavers:  Slave1   Slave2

三、拷贝hadoop

上述master中的hadoop配置基本完毕了,因为namenode节点上的hadoop配置是同样的,所以如今将master上的hadoop分别复制到slave1和slave2上。

命令:

Scp -r ./hadoop yao@slave1:/home/yao/

Scp -r ./hadoop yao@slave2:/home/yao/

拷贝完毕后,在master机器上hadoop文件夹下运行:

格式化:Bin/hadoop namenode -format

下一步,运行启动:

Bin/start-all.sh

在slave1中,输入jps:

类似的在slave2中,输入jps,也能得到相同的结果:

总结:

配置这样的全分布式的hadoop集群,分为几个步骤:

1)配置Hosts文件

2)建立Hadoop执行账号

3)配置ssh免password连入

4)下载并解压hadoop安装包

5)配置namenode,改动site文件

6)配置hadoop-env.sh

7)配置masters,和slaves文件

8)向个节点复制hadoop

9)格式化namenode

10)启动hadoop

11)用jps检验各后台进程是否成功启动

注:不能眼高手低,从装机開始,每一步都会遇到各种各样的问题须要解决。这是个熟悉指令和hadoop文件机制的过程。

伪分布式

伪分布式的搭建是很easy的,由于它是单一的节点,上述步骤仅仅须要:

1)建立Hadoop执行账号

2)配置ssh免password连入(单一节点,仅仅要将id_rsa.pub拷贝到authorized_keys中就能实现自身免password)

3)下载并解压hadoop安装包

4)下载jdk,并解压安装

5)改动site文件

6)配置hadoop-env.sh

7)格式化namenode

8)启动hadoop

9)用jps检验各后台进程是否成功启动

OK,基本上理解hadoop搭建的过程,伪分布和全分布都是非常easy的。

hadoop备战:一台x86计算机搭建hadoop的全分布式集群的更多相关文章

  1. Hadoop(三)手把手教你搭建Hadoop全分布式集群

    前言 上一篇介绍了伪分布式集群的搭建,其实在我们的生产环境中我们肯定不是使用只有一台服务器的伪分布式集群当中的.接下来我将给大家分享一下全分布式集群的搭建! 其实搭建最基本的全分布式集群和伪分布式集群 ...

  2. Hadoop(三)搭建Hadoop全分布式集群

    原文地址:http://www.cnblogs.com/zhangyinhua/p/7652686.html 阅读目录(Content) 一.搭建Hadoop全分布式集群前提 1.1.网络 1.2.安 ...

  3. 亿级Web系统搭建:单机到分布式集群

    亿级Web系统搭建:单机到分布式集群 当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题.为了解决这些性能压 ...

  4. hadoop学习笔记(六):hadoop全分布式集群的环境搭建

    本文原创,如需转载,请注明作者以及原文链接! 一.前期准备: 1.jdk安装        不要用centos7自带的openJDK2.hostname    配置       配置位置:/etc/s ...

  5. [转]亿级Web系统搭建:单机到分布式集群

    当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题.为了解决这些性能压力带来问题,我们需要在Web系统架构层 ...

  6. 亿级Web系统搭建:单机到分布式集群【转】

    当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题.为了解决这些性能压力带来问题,我们需要在Web系统架构层 ...

  7. 一张图讲解最少机器搭建FastDFS高可用分布式集群安装说明

     很幸运参与零售云快消平台的公有云搭建及孵化项目.零售云快消平台源于零售云家电3C平台私有项目,是与公司业务强耦合的.为了适用于全场景全品类平台,集团要求项目平台化,我们抢先并承担了此任务.并由我来主 ...

  8. Linux Centos7 环境搭建Docker部署Zookeeper分布式集群服务实战

    Zookeeper完全分布式集群服务 准备好3台服务器: [x]A-> centos-helios:192.168.19.1 [x]B-> centos-hestia:192.168.19 ...

  9. Hadoop的HDFS和MapReduce的安装(三台伪分布式集群)

    一.创建虚拟机 1.从网上下载一个Centos6.X的镜像(http://vault.centos.org/) 2.安装一台虚拟机配置如下:cpu1个.内存1G.磁盘分配20G(看个人配置和需求,本人 ...

随机推荐

  1. 使用C++11实现无锁stack(lock-free stack)

    前几篇文章,我们讨论了如何使用mutex保护数据及使用使用condition variable在多线程中进行同步.然而,使用mutex将会导致一下问题: 等待互斥锁会消耗宝贵的时间 — 有时候是很多时 ...

  2. C++设计模式---Strategy模式

    一.前言 学习的第一个设计模式!不知道理解的对不对,期望大家一起多交流~ Strategy模式:策略模式,定义了算法族,分别封装起来,此模式可以让算法的变化独立于使用算法的客户.Strategy模式将 ...

  3. Android 编程下的计时器

    在安卓 APP 的手机号注册逻辑中,经常会有将激活码发送到手机的环节,这个环节中绝大多数的应用考虑到网络延迟或服务器压力以及短信服务商的延迟等原因,会给用户提供一个重新获取激活码的按钮.如下图所示: ...

  4. Centos7安装Oracle JDK

    查看Linux是否自带的JDK,如有openJDK,则卸载 java -version

  5. 将宿主机东西拷贝到dokcer容器中去

    1,获取容器名称或者id : docker ps 2,获取整个容器的id,其实键盘tag就可以补全的. docker inspect -f  '{{.Id}}'  步骤A获取的名称或者id 3,在主机 ...

  6. 使用RDS不得不知的注意事项

    使用RDS不得不知的注意事项 1.RDS实例升级需要注意的事项 RDS在进行实例升级的过程中会出现最长30秒左右的连接闪断,需要您提前做好准备,并设置好程序跟RDS的自动重连,避免因为升级的闪断导致您 ...

  7. MySql 事务+异常处理+异常抛出

    -- 测试用表 -- innodb 支持事务 CREATE TABLE `tb_test` ( `id` ) NOT NULL AUTO_INCREMENT, `name` ) NOT NULL, P ...

  8. (转)深入理解 __doPostBack

    在我的随笔<Page,你是怎样处理回发事件的?>中曾提出一个疑问,如何得到引起页面PostBack的控件?通过阅读Page类的源码,误打误撞,无意中看到了__EVENTTARGET和__E ...

  9. UIView设置少于四个的圆角

    最近的需求中有个label需要设置右下角为圆角,其余三个为直角,一开始用的是重写drawRect,然后用绘图重绘每个角的样子,计算起来还是麻烦 后来发现了下面的方法: UILabel *courseS ...

  10. C#拖动自己的定义标题栏(panel)以及实现窗体拖动关闭和最小化

    //没有标题 this.FormBorderStyle = FormBorderStyle.None; //任务栏不显示 this.ShowInTaskbar = false; //实现拖动 1.在窗 ...