`
yeelor
  • 浏览: 417646 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hadoop2集群的安装与布署

 
阅读更多

 

1. 环境

Centos X86_64 6.4

JDK 1.6.0_45

Hadoop 2.2.0

8G内存 500G硬盘

4台机器,每台机器用户名都是hadoop

 

hostname 角色 ip
lenovo10 NN + RM + SNN 218.193.154.XXX
lenovo9 NM + DN  
lenovo11 NM + DN  
lenovo12 NM + DN  

角色缩写备注:NameNode, ResourceManager,Secondary NameNode,DataNode , NodeManager

 

2. 准备

配制SSH兔密码登录,lenovo10能登录其他所有机器

安装JDK

关闭防火墙

 

3. 配制

 

修改Linux的配制文件

/etc/hosts

218.193.154.XXX  lenovo9
218.193.154.XXX  lenovo10 admin
218.193.154.XXX  lenovo11
218.193.154.XXX  lenovo12

 

/etc/profile

 

#set JAVA_HOME
JAVA_HOME=/usr/java/jdk1.6.0_45/
PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export PATH JAVA_HOME CLASSPATH

# set hadoop path
HADOOP_HOME=/usr/local/hadoop
export PATH="$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH"

 

/etc/security/limits.conf

hadoop - nofile 32768
hadoop soft/hard nproc 32000

 

/etc/pam.d/login

session required pam_limits.so  

 

在HADOOP_HOME下的etc/hadoop目录中修改如下文件

在hadoop-env.sh和yarn-env.sh文件尾加入 JAVA_HOME=/usr/java/jdk1.6.0_45

core-site.xml

 

<configuration>
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://admin:9000</value>
	</property>

	<property>
		<name>io.file.buffer.size</name>
		<value>131072</value>
	</property>

	<property>
		<name>hadoop.tmp.dir</name>
		<value>file:/home/hadoop/tmp2</value>
		<description>Abase for other temporary directories.</description>
	</property>

	<property>
		<name>hadoop.proxyuser.hadoop.hosts</name>
		<value>*</value>
	</property>

	<property>
		<name>hadoop.proxyuser.hadoop.groups</name>
		<value>*</value>
	</property>

</configuration>

 

 

yarn-site.xml

 

<configuration>
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>
	<property>
		<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
		<value>org.apache.hadoop.mapred.ShuffleHandler</value>
	</property>
	<property>
		<name>yarn.resourcemanager.address</name>
		<value>admin:8032</value>
	</property>
	<property>
		<name>yarn.resourcemanager.scheduler.address</name>
		<value>admin:8030</value>
	</property>
	<property>
		<name>yarn.resourcemanager.resource-tracker.address</name>
		<value>admin:8031</value>
	</property>
	<property>
		<name>yarn.resourcemanager.admin.address</name>
		<value>admin:8033</value>
	</property>
	<property>
		<name>yarn.resourcemanager.webapp.address</name>
		<value>admin:8088</value>
	</property>
</configuration>

 

 

hdfs-site.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>admin:9001</value>
</property>

<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop/tmp2/dfs/name</value>
</property>

<property>
<name>dfs.namenode.data.dir</name>
<value>file:/home/hadoop/tmp2/dfs/data</value>
</property>

<property>
<name>dfs.replication</name>
<value>3</value>
</property>

<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>

 

 

 mapred-site.xml

 

<configuration>
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>

	<property>
		<name>mapreduce.jobhistory.address</name>
		<value>admin:10020</value>
	</property>

	<property>
		<name>mapreduce.jobhistory.webapp.address</name>
		<value>admin:19888</value>
	</property>

</configuration>

 

 

slaves

 

lenovo9
lenovo11
lenovo12

 

4. 运行

将配制好的hadoop文件夹分发到每一台机器

1.sh

#num=8
slave=slave
#for i in {1..10}; do
for i in {1,2}; do
#for((i=1;i<=num;i++)); do

  host=$slave${i}

  echo "开始安装${host}..."
  
  echo "root免密码登录到${host}"
  ssh-copy-id root@${host} 
  echo "hadoop帐号免密码登录到${host}.hadoop帐号没有密码"
  ssh-copy-id hadoop@${host}
  有多个密钥,可以指定
  ssh-copy-id -i id_rsa hadoop@${host}
 
  echo "拷贝hadoop目录"
  scp -r /usr/local/hadoop  root@${host}:/usr/local
  
  echo "拷贝几个配置文件"
  scp  /etc/hosts   /etc/sudoers  root@${host}:/etc
  scp  /etc/profile.d/hadoop.sh root@${host}:/etc/profile.d
  scp  /etc/pam.d/login  root@${host}:/etc/pam.d
  scp  /etc/security/limits.conf  root@${host}:/etc/security
  
  echo "拷贝JDK"
  scp /home/hadoop/Downloads/jdk-6u45-linux-x64.bin  root@${host}:/usr/java
 
  scp 2.sh root@${host}:/tmp/2.sh
  ssh root@${host} sh /tmp/2.sh
 

  echo "安装${host}完毕"

  
done

 

2.sh

 

chmod u+w /etc/sudoers  
echo "关闭防火墙" 
service iptables stop 
chkconfig iptables off

echo "开启ntpd" 
service ntpd start
chkconfig ntpd on

echo "设置sshd开机启动"
#yum install sshd
service sshd start
chkconfig sshd on

echo "add hadoop to root group"
usermod -a -G root hadoop

echo "创建HDFS的目录"
#mkdir  /home/hadoop
mkdir  /home/hadoop/tmp
mkdir  /home/hadoop/tmp/dfs
mkdir  /home/hadoop/tmp/dfs/name
mkdir  /home/hadoop/tmp/dfs/data

echo "将hadoop相关目录权限下放给用户hadoop"
chown -R hadoop:hadoop /home/hadoop/tmp
chown -R hadoop:hadoop /usr/local/hadoop
#chown -R hadoop:hadoop /usr/local/hbase

echo "修改回/etc/sudoers的权限"
chmod u-w /etc/sudoers

echo "使环境变量生效"
source /etc/profile

echo "安装JDK"
cd /usr/java
./jdk-6u45-linux-x64.bin
echo "测试JDK"
source /etc/profile
java -version
echo "删除JDK安装文件"
rm -rf jdk-6u45-linux-x64.bin

exit


 

在lenovo10上

第一次运行前要格式化

hdfs namenode -format  

 

分别启动

start-dfs.sh

start-yarn.sh

或者全部启动

start-all.sh

查看启动的进程

JPS

在lenovo10在运行的进程有namenode, resourcemanager,secondary namenode

在lenovo9/11/12在运行的进程有datanode , nodemanager

查看HDFS状态:

http://lenovo10:8088

查看ResourceManager状态

http://lenovo10:50070

 

查看HDFS状态

hdfs dfsadmin -report

查看HDFS健康状态

hdfs fsck / 

hdfs fsck / -files -blocks

新建HDFS文件夹

hdfs dfs -mkdir /input

显示HDFS文件列表

hdfs dfs -ls /

移动文件

hdfs dfs -mv /input /user/hadoop/

上传一个文本文件到HDFS

hdfs dfs -put ~/1.txt  /input

用hadoop流的方式执行一个mapreduce

hadoop jar $HADOOP_HOME/share/hadoop/tools/lib/hadoop-streaming-2.2.0.jar -input /input -output woutput -mapper /bin/cat -reducer /usr/bin/wc

 

 

 

5. eclipse插件的制作

下载插件 (非官方,因为官方并没有出插件)

进入hadoop2x-eclipse-plugin-master/src/contrib/eclipse-plugin 目录

安装ant

执行ant命令

ant jar -Dversion=2.2.0 -Declipse.home=/usr/local/eclipse -Dhadoop.home=//home/hadoop/Downloads/java/hadoop-2.2.0

 

6. 可能出现的错误及解决方案

1.hdfs-site.xml:10:36: Content is not allowed in prolog

是由于复制文件时导致的编码的错误,将xml文件中多余的空格去掉

 

 

7. 参考资料

1.Hadoop MapReduce Next Generation - Cluster Setup

2.Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程~(心血之作啊~~)

3.Hadoop2.2.0的eclipse插件的编译

4.Hadoop学习笔记【12】-Hadoop2.1全分布式集群安装

5.Hadoop 新 MapReduce 框架 Yarn 详解

 

0
0
分享到:
评论

相关推荐

    Hadoop2.2.0集群安装

    ### Hadoop2.2.0集群安装:QJM实现HA及Hdfs-site配置详解 #### 一、Hadoop2.2.0完全分布式集群平台安装设置概述 在深入探讨Hadoop2.2.0的安装过程之前,我们需要了解Hadoop的基本架构以及其核心组件——HDFS...

    基于zookeeper的hadoop ha集群安装过程

    2. 安装Hadoop NameNode,以提供元数据管理服务。 3. 安装Hadoop DataNode,以提供数据存储服务。 4. 配置Hadoop HA集群,以实现高可用性和可扩展性。 在安装过程中,需要注意以下几点: * 需要确保ZooKeeper集群...

    hadoop集群安装笔记

    "Hadoop集群安装笔记" Hadoop集群安装笔记是一篇详细的安装指南,旨在帮助新手快速搭建Hadoop学习环境。以下是该笔记中的重要知识点: Hadoop集群安装目录 在安装Hadoop集群之前,需要准备好安装环境。安装环境...

    Hadoop2.5.2集群安装

    Hadoop2.5.2集群安装知识点梳理: 1. Hadoop集群安装概述: Hadoop集群安装涉及多个步骤,包括准备环境、安装配置Hadoop以及测试集群的运行状态。本文档重点介绍的是基于MRV1架构的Hadoop集群安装,MRV1指的是...

    Hadoop集群安装与配置详细步骤

    "Hadoop 集群安装与配置详细步骤" Hadoop 集群安装与配置详细步骤是大数据处理和存储的重要组件。为了实现高效的数据处理和存储,需要安装和配置 Hadoop 集群。本节将详细介绍 Hadoop 集群安装与配置的步骤。 安装...

    基于Ubuntu的Hadoop简易集群安装与配置

    ### 基于Ubuntu的Hadoop简易集群安装与配置知识点详解 #### 一、绪论 ##### 1.1 研究背景及意义 在当前信息化社会中,随着科技的发展与进步,尤其是互联网技术的普及,我们正处在一个数据爆炸的时代。各行各业都在...

    hadoop集群安装步骤

    hadoop集群安装详细步骤,支持snappy hadoop 集群安装

    Hadoop集群pdf文档

    Hadoop_Hadoop集群(第2期)_机器信息分布表 Hadoop_Hadoop集群(第4期)_SecureCRT使用 Hadoop_Hadoop集群(第5期)_Hadoop安装配置 Hadoop_Hadoop集群(第5期副刊)_JDK和SSH无密码配置 Hadoop_Hadoop集群(第6期...

    Linux下Hadoop集群安装指南

    Linux 下 Hadoop 集群安装指南 一、Linux 下 Hadoop 集群安装前的准备工作 在开始安装 Hadoop 集群之前,我们需要安装 VMware 和 Ubuntu Linux 作为操作系统。这一步骤非常重要,因为 Hadoop 集群需要在 Linux ...

    利用ansible 自动 安装Hadoop 集群

    6. **验证与测试**:安装完成后,进行基本的验证测试,如查看HDFS是否正常运行,通过`hadoop fs -ls /`命令检查HDFS根目录,或者运行MapReduce示例任务。 总结来说,通过Ansible自动化安装Hadoop集群,可以极大地...

    hadoop2.4.1集群安装

    hadoop 2.4.1完全分布式安装,主要建立5个节点的hadoop集群安装,采用apache原生态的hadoop

    部署全分布模式Hadoop集群 实验报告

    部署全分布模式Hadoop集群 实验报告一、实验目的 1. 熟练掌握 Linux 基本命令。 2. 掌握静态 IP 地址的配置、主机名和域名映射的修改。 3. 掌握 Linux 环境下 Java 的安装、环境变量的配置、Java 基本命令的使用。 ...

    hadoop安装集群完整步骤

    hadoop自己总结的集群安装步骤

    hadoop集群安装手册

    【Hadoop集群安装手册】 Hadoop是一个开源的分布式计算框架,由Apache基金会开发,主要用于处理和存储海量数据。本手册将详细介绍如何在5台虚拟机上手动安装和配置Hadoop集群,供初学者和专业人士参考。 ### 安装...

    CentOS7下Hadoop3.2.1集群的安装与部署(下)

    在《CentOS7下Hadoop3.2.1集群的安装与部署(上)》中我们我们完成了对Hadoop集群的安装与启动。接下来,重点对HDFS和Yarn的HA配置进行介绍。 HDFS高可用 在上述Hadoop集群搭建完成之后,若要启用HA还需要对hdfs-...

    Linuxhadoop集群安装

    在IT领域,Linux Hadoop集群安装是一个复杂但至关重要的任务,尤其对于大数据处理和分析的组织来说。...记住,实践是检验真理的唯一标准,只有亲自动手操作,才能真正理解和掌握Hadoop集群的安装与运维。

    Hadoop2.X集群安装与配置

    以上就是Hadoop 2.x集群的安装与配置过程,这是一个基础的大数据环境搭建,后续可以根据需要添加更多节点,或者集成其他大数据组件,如Hive、Spark等,构建更复杂的数据处理平台。在实际生产环境中,还需要考虑高...

    Hadoop虚拟机集群安装

    Hadoop虚拟机集群安装 Hadoop是一种分布式计算框架,能够对大规模数据进行处理和分析。然而,对于初学者来说,Hadoop的安装和配置可能是一件困难的事情。本文旨在指导用户如何在虚拟机上安装和配置Hadoop集群,帮助...

Global site tag (gtag.js) - Google Analytics