hadoop集群环境的搭建和单机版的搭建差点儿相同,就是多了一些文件的配置操作。

一、3台主机的hostname改动和IP地址绑定

注意:以下的操作我都是使用root权限进行!

(1)3太主机的基本网络环境

CentOS6.5,32位,在虚拟机下实现。

我在虚拟机下安装了3个centos6.5系统,其IP地址和主机名分别例如以下:

192.168.1.103  hadoop

192.168.1.105  hadoop0

192.168.1.106  hadoop1

这里,hadoop是master,hadoop0和hadoop1是两个slaves。

(2)IP地址与hostname绑定

在hadoop主机下:

vi /etc/sysconfig/network

将HOSTNAME改动为hadoop,见下图:



在hadoop0主机下操作类似,将HOSTNAME改动为hadoop0;在hadoop1主机下操作类似,将HOSTNAME改动为hadoop1。

在hadoop主机下:

输入:vi /etc/hosts,在hosts下加入例如以下内容:

192.168.1.103  hadoop
192.168.1.105 hadoop0
192.168.1.106 hadoop1

然后通过scp命令,将改动好的hosts拷贝到hadoop0和hadoop1的/etc/hosts目录下覆盖:

scp  /etc/hosts  root@hadoop0:/etc/hosts
scp /etc/hosts root@hadoop1:/etc/hosts

(3)測试3太主机之间能否Ping通

在3台主机下分别输入:

ping hadoop
ping hadoop0
ping hadoop1

假设3太主机都能ping通,那说明前面的配置成功。

二、SSH免password登陆

在hadoop主机下:

1.查看当前用户下(root)是否有.ssh的隐藏文件,假设没有就创建一个

mkdir .ssh

2.输入ssh-keygen -t  rsa

这个命令会在.ssh目录下生成id_dsa和id_ds.pub两个文件,这私钥和公钥。

3.输入

cp id_rsa.pub authorized_keys

这条命令是把公钥加到用于认证的公钥文件里

4.验证SSH是否成功安装,以及能否够免password登陆本机

ssh  localhost

假设显演示样例如以下,表示成功安装

5.将authorized_keys拷贝到hadoop0和hadoop1下的.ssh文件,这样就能够免password登陆hadoop0和hadoop1了。

scp authorized_keys root@hadoop0:.ssh/
scp authorized_keys root@hadoop1:.ssh/

6.測试

在hadoop主机下输入:

ssh hadoop0
ssh hadoop1

在第一次登陆是须要password,以后则不要。到此,ssh的免password登陆完毕。

三、jdk的安装和java环境变量配置

(1)安装jdk1.6

这里,我使用的jdk安装包例如以下,大家能够上网自行下载,这里推荐jdk为1.6为好。

在hadoop下:

将jdk安装包移动到/usr/local这个文件夹下,(local下的文件能够删除,没实用的)。

然后首先是给jdk安装包“X”的运行权限,chmod   u+x   jdk-6u24-linux-i586.bin。(如有x权限请忽略这一步)

然后就是运行安装就可以,jdk-6u24-linux-i586.bin。

然后将/usr/local下jdk的目录从命名为jdk。然后通过scp命令将jdk目录拷贝到另外两个slaves主机。

scp -r /etc/local/jdk root@hadoop0:/etc/local
scp -r /etc/local/jdk root@hadoop1:/etc/local

(2)环境变量设置

接下来就是配置环境变量:

vi   /etc/profile

export JAVA_HOME=/usr/local/jdk
export PATH=.:$JAVA_HOME/bin:$PATH

输入 source /etc/profile使配置文件生效。

检查jdk是否安装配置成功,java -version,若显演示样例如以下,表示成功安装。

相同,将profile拷贝到另外两台主机。

scp /etc/profile root@hadoop0:/etc/
scp /etc/profile root@hadoop1:/etc/

在hadoop0和hadoop1下检查是否安装jdk成功。注意请先使用source /etc/profile更新命令。

假设现实如上图,则表示3台主机的jdk安装和配置成功。

四、安装和配置hadoop


(1)解压安装hadoop1.1.2

在hadoop主机下:

下载并将hadoop-1.1.2.tar.gz解压到当前用户文件夹下(/usr/local)。

tar -zxvf   hadoop-1.1.2.tar.gz

然后将hadoop目录重命名为hadoop。

(2)配置hadoop

在hadoop主机下:

进入hadoop目录下的conf夹,改动配置文件。

1.指定jdk安装位置:

Hadoop-env.sh:

export  JAVA_HOME=/usr/local/jdk

2.hadoop核心配置文件,配置HDFS地址和段口号。

core-site.xml

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>

3.hdfs-site.xml,默认的配置方式是3,这里表示副本数是3,因为我们搭建的子节点仅仅有2个,所以输入1或2。

hdfs-site.xml

<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>

4.配置MapReduce文件,配置JobTracker的地址和port

mapred-site.xml

<configuration>
<property>
<name>mapred.job.tracker</name>
<value>hadoop:9001</value>
</property>
</configuration>

5‘改动masters文件

hadoop

6.改动slaves文件

hadoop0
hadoop1

然后将hadoop目录拷贝到另外2台主机。

scp /uer/local/hadoop root@hadoop0:/etc/local/
scp /uer/local/hadoop root@hadoop1:/etc/local/

接下来要改动环境变量:

vi /etc/profile

export JAVA_HOME=/usr/local/jdk
export HADOOP_HOME=/usr/local/hadoop
export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH

相同,将profile拷贝到另外两台主机上,操作见三(2)。

(3)启动hadoop

在hadoop下:

输入:

hadoop namenode -format

然后通过start-all.sh启动全部进程:

start-all.sh

能够通过jps命令来查看执行的进程,假设成功执行,那么将会有5个进程执行,例如以下图:

在hadoop 下:

在hadoop0下:

在hadoop1下:

至此,hadoop启动成功,要想看集群状态,能够打开以下两个网址:

localhost:50030(mapreduce的web页面)

localhost:50070(HDFS的web页面)

假设想在windows下訪问这两个网址,那么就须要关闭centos的防火墙,否则訪问不了。(3台主机都要关闭防火墙)

命令:service iptables stop

使用:chkconfig iptables off,能够关闭防火墙的自己主动执行

备注:我也是刚起步学习hadoop,可能文章有一些不完整或错误的地方,还请大家多多不吝赐教,也希望能交流学习,互相促进提高。

(2)虚拟机下hadoop1.1.2集群环境搭建的更多相关文章

  1. 虚拟机centos6.5 --hadoop2.6集群环境搭建

    一.环境说明 虚拟机:virtualBox 系统:centos6.5,64位 集群:3个节点 master 192.168.12.232 slave01 192.168.12.233 slave02 ...

  2. CentOS下RabbitMq高可用集群环境搭建

    准备工作 1,准备两台或多台安装有rabbitmq-server服务的服务器 我这里准备了两台,分别如下: 192.168.40.130 rabbitmq01192.168.40.131 rabbit ...

  3. 虚拟机下 solr7.1 cloud 集群搭建 (手动解压和官方脚本两种方式)

    准备工作: vmware workstation 12,OS使用的是ubuntu16.04,三台虚拟机搭建一个solr集群,zookeeper共用这三台虚拟机组成zookeeper集群. zookee ...

  4. centos6.5环境下zookeeper-3.4.6集群环境部署及单机部署详解

    centos6.5环境下Zookeeper-3.4.6集群环境部署 [系统]Centos 6.5 集群部署 [软件]准备好jdk环境,此次我们的环境是open_jdk1.8.0_101 zookeep ...

  5. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十二)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网。

    Centos7出现异常:Failed to start LSB: Bring up/down networking. 按照<Kafka:ZK+Kafka+Spark Streaming集群环境搭 ...

  6. Linux环境下SolrCloud集群环境搭建关键步骤

    Linux环境下SolrCloud集群环境搭建关键步骤. 前提条件:已经完成ZooKeeper集群环境搭建. 一.下载介质 官网下载地址:http://www.apache.org/dyn/close ...

  7. Linux环境下HDFS集群环境搭建关键步骤

    Linux环境下HDFS集群环境搭建关键步骤记录. 介质版本:hadoop-2.7.3.tar.gz 节点数量:3节点. 一.下载安装介质 官网下载地址:http://hadoop.apache.or ...

  8. Linux环境下ZooKeeper集群环境搭建关键步骤

    ZooKeeper版本:zookeeper-3.4.9 ZooKeeper节点:3个节点 以下为Linux环境下ZooKeeper集群环境搭建关键步骤: 前提条件:已完成在Linux环境中安装JDK并 ...

  9. Linux下Hadoop2.7.3集群环境的搭建

    Linux下Hadoop2.7.3集群环境的搭建 本文旨在提供最基本的,可以用于在生产环境进行Hadoop.HDFS分布式环境的搭建,对自己是个总结和整理,也能方便新人学习使用. 基础环境 JDK的安 ...

随机推荐

  1. hdu 4444 Walk (离散化+建图+bfs+三维判重 好题)

    Walk Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submi ...

  2. Spark 1.0.0 横空出世 Spark on Yarn 部署(Hadoop 2.4)

    就在昨天,北京时间5月30日20点多.Spark 1.0.0最终公布了:Spark 1.0.0 released 依据官网描写叙述,Spark 1.0.0支持SQL编写:Spark SQL Progr ...

  3. android删除文件出错

    当删除一个文件,再又一次下载这个同名文件,保存到sdcard时出现error,部分手机出现 Caused by: libcore.io.ErrnoException: open failed: EBU ...

  4. C# 视频教程

    http://www.cnblogs.com/kellen/tag/Silverlight/ http://www.lanmaodream.com/archives/244.html

  5. 如何设置多个同一页的tinymce编辑

    的页面设置多个tinymce编辑器 This example shows how to setup multiple editors on the same page and with differe ...

  6. android studio 怎样正确导入jar

    近期又開始做android,使用android studio中遇到导入jar没有反应的问题,查了下资料实践攻克了,现特地写一下博客.希望对刚刚的使用的android studio的朋友有帮助. 1.先 ...

  7. redmine使用汇总redmine软件工程过程

    1.强制性当一个新的问题:轨道.议题.叙述性说明.状态.优先.分配给.父任务(假设没有可以不填,假设有请务必填写).开始日期.预计时间.党羽,请注意,这时候一定不要填写完成时间 2.如果你想在实时登记 ...

  8. 笔试题&amp;面试题:输入一个维度,逆时针打印出一个指定矩阵

    称号:考虑到用户层面.打印出指定的矩阵,例如,一个给定的用户10,例如,下面的输出应被视为在图: 程序如下所示: #include <stdio.h> #include <mallo ...

  9. Linux 于 shell 变数 $#,$@,$0,$1,$2 含义解释:

    变量说明: $$ Shell自己PID(ProcessID) $! Shell背景上次执行Process的PID $? 命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 全部參数 ...

  10. VMware workstation 10.0的永久key

    MA491-6NL5Q-AZAM0-ZH0N2-AAJ5A5A6F6-88247-XZH59-HL0Q6-8CD2VHF6QX-20187-2Z391-522NH-9AELT5F29M-48312-8 ...