-----------------------------------------------------------

自学记录,交流学习请发送邮件至gxz1984@gmail.com

各节点的防火墙一定要关闭!

-----------------------------------------------------------

2015-3-26

环境:

操作系统ubuntu 14.10

Hadoop 2.60

JDK 1.7

节点说明:

192.168.47.133 master
192.168.47.134 slave1
192.168.47.135 slave2

1、安装JDK

下载jdk1.7,解压,复制【三个节点都需要安装】

tar -xvzf jdk-7u75-linux-x64.tar.gz
mkdir /opt/Java
mv jdk1.7.0_75/ /opt/Java/jdk1.7

环境变量设置

vi .bashrc

export JAVA_HOME=/opt/Java/jdk1.7
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH source .bashrc 测试安装是否成功
java -version

2、创建hadoop用户

sudo useradd hadoop
sudo passwd hadoop sudo mkdir /home/hadoop
sudo chown hadoop:hadoop /home/hadoop #赋予hadoop用户sudo的权限
sudo adduser hadoop sudo

3、网络配置【修改机器名】

sudo vim /etc/hostname
sudo vim /etc/hosts 192.168.47.133 master
192.168.47.134 slave1
192.168.47.135 slave2

4、安装SSH server、配置SSH无密码登陆

安装openssh
sudo apt-get install openssh-server
生成密钥
ssh-keygen -t rsa
cd .ssh/
cp id_rsa.pub authorized_keys
cd ..
scp -r .ssh hadoop@slave1:/home/hadoop
scp -r .ssh hadoop@slave2:/home/hadoop

5、配置集群/分布式环境

所有配置任务在master节点上完成,将配置好的程序拷贝到slave节点即可

安装:

sudo tar -zxvf ~/下载/hadoop-2.6.0.tar.gz -C /usr/local   # 解压到/usr/local中
sudo mv /usr/local/hadoop-2.6.0/ /usr/local/hadoop # 将文件名改为hadoop
sudo chown -R hadoop:hadoop /usr/local/hadoop # 修改文件权限

配置/usr/local/hadoop/etc/hadoop中的配置文件

(1)文件slaves、masters

192.168.47.134
192.168.47.135

masters没有,新建该文件,里面输入master节点的ip地址即可

(2)文件 core-site.xml

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:///usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>

(3)文件hdfs-site.xml,因为有两个Slave,所以dfs.replication的值设为2。

<configuration>

<property>
<name>dfs.nameservices</name>
<value>hadoop-cluster1</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:50090</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///usr/local/hadoop/tmp/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property> </configuration>

(4)

文件mapred-site.xml,这个文件不存在,首先需要从模板中复制一份:

cp mapred-site.xml.template mapred-site.xml 

然后配置修改如下

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobtracker.http.address</name>
<value>master:50030</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
</configuration>

(5)文件yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property> </configuration>

(6)文件hadoop-env.sh

指定JAVA_HOME的路径

export JAVA_HOME=/opt/Java/jdk1.7/

完成配置,将hadoop整个目录发送到slave节点即可

===================================================

6、启动hadoop

在master节点上:
cd /usr/local/hadoop/
bin/hdfs namenode -format # 首次运行需要执行初始化,后面不再需要
sbin/start-all.sh 通过jps查看各节点启动的服务
可以看到Master节点启动了NameNode、ResourceManager进程。
Slave节点则启动了DataNode和NodeManager进程。 停止服务
sbin/stop-all.sh

7、测试

执行WordCount实例过程首先创建所需的几个目录

bin/hdfs dfs -mkdir /user
bin/hdfs dfs -mkdir /user/hadoop

将etc/hadoop中的文件作为输入文件复制到分布式文件系统中

bin/hdfs dfs -put etc/hadoop input

接着就可以运行MapReduce作业了

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.1.jar grep input output 'dfs[a-z.]+'

同样可以通过Web界面查看任务进度 http://master:8088/cluster

参考教程:http://www.powerxing.com/install-hadoop-cluster-2-4-1/

=======================================

2017-07-16

如果master节点的防火墙没有关闭,slave节点的logs会一直报错误:Problem connecting to server: master/192.168.138.101:9000

然后一直在retry connect master

关闭master的防火墙即可

---------------------------------------------

如果slave节点的防火墙没有关闭,hadoop fs -put时没法执行成功,slave节点的防火墙关闭即可

【再次重新安装忘了关闭防火墙捣鼓了一晚上!】

======================================

Hadoop集群环境搭建的更多相关文章

  1. hadoop集群环境搭建之zookeeper集群的安装部署

    关于hadoop集群搭建有一些准备工作要做,具体请参照hadoop集群环境搭建准备工作 (我成功的按照这个步骤部署成功了,经实际验证,该方法可行) 一.安装zookeeper 1 将zookeeper ...

  2. hadoop集群环境搭建之安装配置hadoop集群

    在安装hadoop集群之前,需要先进行zookeeper的安装,请参照hadoop集群环境搭建之zookeeper集群的安装部署 1 将hadoop安装包解压到 /itcast/  (如果没有这个目录 ...

  3. hadoop集群环境搭建准备工作

    一定要注意hadoop和linux系统的位数一定要相同,就是说如果hadoop是32位的,linux系统也一定要安装32位的. 准备工作: 1 首先在VMware中建立6台虚拟机(配置默认即可).这是 ...

  4. Hadoop集群环境搭建步骤说明

    Hadoop集群环境搭建是很多学习hadoop学习者或者是使用者都必然要面对的一个问题,网上关于hadoop集群环境搭建的博文教程也蛮多的.对于玩hadoop的高手来说肯定没有什么问题,甚至可以说事“ ...

  5. 大数据 -- Hadoop集群环境搭建

    首先我们来认识一下HDFS, HDFS(Hadoop Distributed File System )Hadoop分布式文件系统.它其实是将一个大文件分成若干块保存在不同服务器的多个节点中.通过联网 ...

  6. Spark集群环境搭建——Hadoop集群环境搭建

    Spark其实是Hadoop生态圈的一部分,需要用到Hadoop的HDFS.YARN等组件. 为了方便我们的使用,Spark官方已经为我们将Hadoop与scala组件集成到spark里的安装包,解压 ...

  7. 简单Hadoop集群环境搭建

    最近大数据课程需要我们熟悉分布式环境,每组分配了四台服务器,正好熟悉一下hadoop相关的操作. 注:以下带有(master)字样为只需在master机器进行,(ALL)则表示需要在所有master和 ...

  8. Hadoop集群环境搭建(一)

    1集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主要有 NameNode / DataN ...

  9. Java+大数据开发——Hadoop集群环境搭建(一)

    1集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主要有 NameNode / DataN ...

  10. Hadoop(4)-Hadoop集群环境搭建

    准备工作 开启全部三台虚拟机,确保hadoop100的机器已经配置完成 分发脚本 操作hadoop100 新建一个xsync的脚本文件,将下面的脚本复制进去 vim xsync #这个脚本使用的是rs ...

随机推荐

  1. error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCR...

    http://blog.csdn.net/playstudy/article/details/6661868 一,问题描述MSVCRTD.lib(crtexew.obj) : error LNK201 ...

  2. 在python 中is和= = 的区别

    Python中的对象包含三要素:id.type.value其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值is判断的是a对象是否就是b对象,是通过id来判断的==判断的是a对 ...

  3. php课程---JavaScript改变HTML中的元素

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. vim的常用命令

    平常最多是用vim来编辑单个文件,看看源码.就是写几k行代码时也没有用一些其他的插件,只是设置了高亮等一些自带的属性.这样的好处是,换到任何一台新机上都能立马使用. 网上流传了大量的“vim命令合集” ...

  5. 【iCore3 双核心板】例程十八:USB_VCP实验——虚拟串口

    实验指导书及代码包下载: http://pan.baidu.com/s/1c1erqIc iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...

  6. mysql集群 MySQL Cluster

    <?php /* 郑重说明2015年6月11日16:28:14,目前为止MySQL Cluster 社区版不支持INNODB,商业版支持,但是授权价格20W左右,so看此文档之前,考虑下钱 My ...

  7. Apache Spark技术实战之6 -- spark-submit常见问题及其解决

    除本人同意外,严禁一切转载,徽沪一郎. 概要 编写了独立运行的Spark Application之后,需要将其提交到Spark Cluster中运行,一般会采用spark-submit来进行应用的提交 ...

  8. Android自动化测试工具——monkey简介及入门

    记得第二家单位的安卓开发在上线前都用monkey压几个小时,确实也能发现些问题,崩溃率低了些,没测过的确实可以压一压 搜了下资料,monkey确实很简单,发现问题自己搜下是什么问题,别一发现什么就跑去 ...

  9. Linux下查看系统版本号信息的方法(转)

    一.查看Linux内核版本命令: 1.cat /proc/version [root@localhost ~]# cat /proc/versionLinux version 2.6.18-194.8 ...

  10. mongoose升级后遇到的问题

    由于想在mongoose中使用Q,所以将mongoose升级到了4.1.0,而线上mongoDB的版本是2.6.7,升级的时候,node-modules存在mongoose的残渣,所以调用 npm i ...