搭建hadoop集群

    1. hadoop集群搭建的准备操作:

准备大数据集群(三台或者四台服务器,推荐四台)

 

推荐:四台服务器的主机名分别是:hadoop02, hadoop03, hadoop04, hadoop05

 

对以上四台服务器需要做以下准备操作,这些准备都是为了将来搭建hadoop集群做准备的

 

1、修改各服务器的主机名   vi /etc/sysconfig/network

2、配置各服务器的IP         三种方式   图形界面  setup    修改配置文件  vi /etc/sysconfig/network-script/ifcfg-eth0

3、配置各服务器的主机映射       vi  /etc/hosts

4、添加hadoop用户,并且添加sudoer权限     vi /etc/sudoers

5、关闭防火墙/关闭selinux     service iptables stop      chkconfig iptables off

6、更改系统启动级别为3 vi /etc/inittab

7、安装JDK

8、四台服务器做时间同步(误差在30秒内)

9、四台服务器配置SSH (互相做免密访问)

 

    1. 搭建hadoop的分布式集群

第一件事: 获取hadoop安装包hadoop-2.7.5.tar.gz

第二件事: 确定你要安装的软件的版本

集群中的各个角色的名称:

 

服务 主节点 从节点

 

HDFS NameNode DataNode

YARN ResourceManager NodeManager

 

 

服务器的角色规划:  

 

 

服务器的数量有四台:

 

服务 hadoop02 hadoop03 hadoop04 hadoop05

HDFS namenode datanode datanode datanode

YARN nodemanager nodemanager nodemanager ResourceManager

 

HDFS集群的主节点: hadoop02

正式的安装:

 

1、获取安装包

 

2、解压缩 和 安装

 

3、修改配置文件

 

4、初始化,配置环境变量,启动,验证

具体的操作步骤:

 

 

1、准备好四台服务器,做好规划

 

服务器

规划安装的用户: hadoop

规划安装目录:/home/hadoop/apps

规划数据目录:/home/hadoop/data

 

 

2、获取安装包

 

1、从网络上获取 或者 自己编译

 

2、把安装包上传到服务器

 

3、解压缩

 

tar -zxvf hadoop-2.7.5-centos-6.7.tar.gz -C ~/apps/

 

 

4、修改配置文件

 

hadoop-env.sh

core-site.xml

hdfs-site.xml

mapred-site.xml

yarn-site.xml

slaves

 

1、hadoop-env.sh

 

修改JAVA_HOME

 

export JAVA_HOME=${JAVA_HOME}

改成

export JAVA_HOME=/usr/local/java/jdk1.8.0_73

 

 

2、core-site.xml

 

<property>

 <name>fs.defaultFS</name>

 <value>hdfs://hadoop02:9000</value>

</property>

 

fs.defaultFS = hdfs://hadoop02:9000

         jdbc:mysql://hadoop02:3306

 

 schema 模式信息

 

<property>

 <name>hadoop.tmp.dir</name>

 <value>/home/hadoop/data/hadoopdata</value>

</property>

 

hadoop.tmp.dir   hadoop集群在工作的时候存储的一些临时文件的目录

 

 

3、hdfs-site.xml

 

 

<property>

 <name>dfs.namenode.name.dir</name>

 <value>/home/hadoop/data/hadoopdata/name</value>

<description>为了保证元数据的安全一般配置多个不同目录</description>

</property>

 

<property>

 <name>dfs.datanode.data.dir</name>

 <value>/home/hadoop/data/hadoopdata/data</value>

<description>datanode 的数据存储目录</description>

</property>

 

<property>

 <name>dfs.replication</name>

 <value>2</value>

<description>HDFS 的数据块的副本存储个数, 默认是3</description>

</property>

 

<property>

 <name>dfs.secondary.http.address</name>

 <value>hadoop03:50090</value>

<description>secondarynamenode 运行节点的信息,和 namenode 不同节点</description>

</property>

 

4、mapred-site.xml

 

 

<property>

 <name>mapreduce.framework.name</name>

 <value>yarn</value>

</property>

 

 

5、yarn-site.xml

 

 

<property>

 <name>yarn.resourcemanager.hostname</name>

 <value>hadoop05</value>

</property>

<property>

 <name>yarn.nodemanager.aux-services</name>

 <value>mapreduce_shuffle</value>

<description>YARN 集群为 MapReduce 程序提供的 shuffle 服务</description>

</property>

 

 

6、slaves  : 非必须配置文件     方便start-dfs.sh  还有  start-yarn.sh等去寻找当前集群到底有那些从节点

从而发送命令去命令对应的服务器启动对应的进程

 

配置的信息: 是hadoop集群的从节点列表

 

   hadoop02

   hadoop03

   hadoop04

   hadoop05

5、当前的hadoop安装包是存在于hadoop02上的。 但是安装的hadoop是一个分布式的集群。

 

所以现在的问题: 整个集群中只有hadoop02有安装包, hadoop03, hadoop04, hadoop05 没有。

 

关键操作:

 

把安装包分别分发给其他的节点

 

重点强调: 每台服务器中的hadoop安装包的目录必须一致, 安装包的配置信息还必须保持一致

重点强调: 每台服务器中的hadoop安装包的目录必须一致, 安装包的配置信息还必须保持一致

重点强调: 每台服务器中的hadoop安装包的目录必须一致, 安装包的配置信息还必须保持一致

 

scp -r hadoop-2.7.5/ hadoop@hadoop03:~/apps/

scp -r hadoop-2.7.5/ hadoop@hadoop04:~/apps/

scp -r hadoop-2.7.5/ hadoop@hadoop05:~/apps/

 

 

6、配置环境变量

 

export HADOOP_HOME=/home/hadoop/apps/hadoop-2.7.5

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:

 

千万注意:

 

1、如果你使用root用户进行安装。   vi /etc/profile  即可   系统变量

 

2、如果你使用普通用户进行安装。   vi ~/.bashrc    用户变量

 

环境变量:  系统变量  用户变量

 

7、初始化

 

$HADOOP_HOME/bin/hadoop namenode -format

[hadoop@hadoop02 bin]$ /home/hadoop/apps/hadoop-2.7.5/bin/hadoop namenode -format

 

只能在HDFS的主节点进行

 

 

8、启动

 

1、启动HDFS   :  不管在集群中的那个节点都可以

 

[hadoop@hadoop02 bin]$ /home/hadoop/apps/hadoop-2.7.5/sbin/start-dfs.sh

 

2、启动YARN   :  只能在主节点中进行启动

 

[hadoop@hadoop02 bin]$ /home/hadoop/apps/hadoop-2.7.5/sbin/start-yarn.sh

 

 

9、检测 或者 验证是否成功

 

 

1、JPS 命令 查看 对应的守护进行是否都启动成功

 

2、启动HDFS和YARN的web管理界面

 

HDFS :  http://hadoop02:50070

YARN : http://hadoop05:8088

 

疑惑: fs.defaultFS = hdfs://hadoop02:9000

 

客户单访问HDFS集群所使用的URL地址

 

同时,HDFS提供了一个web管理界面  端口:50070

 

3、简单使用

 

HDFS :

 

上传文件:hadoop fs -put zookeeper.out /

下载文件:hadoop fs -get /zookeeper.out

 

YARN :

 

 

假如现在有一个文件: /wc/input/words.txt

 

hello huangbo

hello xuzheng

hello wangbaoqiang

 

hadoop fs -mkdir -p /wc/input

 

运行一个mapreduce的例子程序: wordcount

 

命令:

 

hadoop jar /home/hadoop/apps/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /wc/input /wc/output

 

查看最终结果:

 

 hadoop fs -cat /wc/output/part-r-00000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值