集群服务器规划

使用3台CentOS-6.8虚拟机进行集群搭建

服务 ip 主机名称 用户 HDFS YARN
hadoop1 192.168.1.40 hadoop1 root  NameNode,Datenode,SecondaryNameNode ResourceManager,NodeManager,
hadoop2 192.168.1.39 hadoop2 root Datenode NodeManager
hadoop3 192.168.1.38 hadoop3 root Datenode NodeManager

软件安装步骤概述

1、获取安装包

2、解压缩和安装

3、修改配置文件

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

Hadoop安装

1、规划

规划安装用户:root

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

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

注:apps和data文件夹需要自己单独创建

2、上传解压缩

#wget http://archive.apache.org/dist/hadoop/core/hadoop-2.6.5/hadoop-2.6.5-src.tar.gz

#tar -zxf hadoop-2.6.5-src.tar.gz -C /usr/local/src/

 

3、修改配置文件

配置文件目录:/use/local/src/hadoop-2.6.5/etc/hadoop

A. hadoop-env.sh

[hadoop@hadoop1 hadoop]$ vi hadoop-env.sh

修改JAVA_HOME

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

B. core-site.xml

[hadoop@hadoop1 hadoop]$ vi core-site.xml

fs.defaultFS : 这个属性用来指定namenode的hdfs协议的文件系统通信地址,可以指定一个主机+端口,也可以指定为一个namenode服务(这个服务内部可以有多台namenode实现ha的namenode服务

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

<configuration><property><name>fs.defaultFS</name><value>hdfs://hadoop1:9000</value></property><property><name>hadoop.tmp.dir</name><value>/home/hadoop/data/hadoopdata</value></property>
</configuration>

C. hdfs-site.xml

[hadoop@hadoop1 hadoop]$ vi hdfs-site.xml

dfs.namenode.name.dir:namenode数据的存放地点。也就是namenode元数据存放的地方,记录了hdfs系统中文件的元数据。

dfs.datanode.data.dir: datanode数据的存放地点。也就是block块存放的目录了。

dfs.replication:hdfs的副本数设置。也就是上传一个文件,其分割为block块后,每个block的冗余副本个数,默认配置是3。

dfs.secondary.http.address:secondarynamenode 运行节点的信息,和 namenode 不同节点

<configuration><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>hadoop3:50090</value><description>secondarynamenode 运行节点的信息,和 namenode 不同节点</description></property>
</configuration>

D. mapred-site.xml

[hadoop@hadoop1 hadoop]$ cp mapred-site.xml.template mapred-site.xml
[hadoop@hadoop1 hadoop]$ vi mapred-site.xml

mapreduce.framework.name:指定mr框架为yarn方式,Hadoop二代MP也基于资源管理系统Yarn来运行 。

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

E. yarn-site.xml

[hadoop@hadoop1 hadoop]$ vi yarn-site.xml

yarn.resourcemanager.hostname:yarn总管理器的IPC通讯地址

yarn.nodemanager.aux-services:

<configuration><!-- Site specific YARN configuration properties --><property><name>yarn.resourcemanager.hostname</name><value>hadoop4</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value><description>YARN 集群为 MapReduce 程序提供的 shuffle 服务</description></property></configuration>

F. slaves

[hadoop@hadoop1 hadoop]$ vi slaves
hadoop1
hadoop2
hadoop3

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

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

[hadoop@hadoop1 hadoop]$ scp -r /usr/local/src/hadoop-2.6.5/ hadoop2:~/usr/local/src/
[hadoop@hadoop1 hadoop]$ scp -r /usr/local/src/hadoop-2.6.5/ hadoop3:~/usr/local/src/

5、配置Hadoop环境变量

千万注意:

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

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

[hadoop@hadoop1 ~]$ vi /etc/profile
export HADOOP_HOME=/usr/local/src/hadoop-2.6.5
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:

使环境变量生效

[hadoop@hadoop1 bin]$ source /etc/profile

6、查看hadoop版本

[hadoop@hadoop1 bin]$ hadoop version
Hadoop 2.7.5
Subversion Unknown -r Unknown
Compiled by root on 2017-12-24T05:30Z
Compiled with protoc 2.5.0
From source with checksum 9f118f95f47043332d51891e37f736e9
This command was run using /home/hadoop/apps/hadoop-2.7.5/share/hadoop/common/hadoop-common-2.7.5.jar
[hadoop@hadoop1 bin]$

7、Hadoop初始化

注意:HDFS初始化只能在主节点上进行

[hadoop@hadoop1 ~]$ hadoop namenode -format

 View Code

8、启动

A. 启动HDFS

注意:不管在集群中的那个节点都可以

[root@WEB40 hadoop]# start-dfs.sh
19/04/15 10:42:02 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting namenodes on [WEB40]
WEB40: starting namenode, logging to /usr/local/src/hadoop-2.6.5/logs/hadoop-root-namenode-WEB40.out
WEB40: starting datanode, logging to /usr/local/src/hadoop-2.6.5/logs/hadoop-root-datanode-WEB40.out
WEB39: starting datanode, logging to /usr/local/src/hadoop-2.6.5/logs/hadoop-root-datanode-WEB39.out
service: starting datanode, logging to /usr/local/src/hadoop-2.6.5/logs/hadoop-root-datanode-service.out
Starting secondary namenodes [WEB40]
WEB40: starting secondarynamenode, logging to /usr/local/src/hadoop-2.6.5/logs/hadoop-root-secondarynamenode-WEB40.out

B. 启动YARN

注意:只能在主节点中进行启动

[root@WEB40 hadoop]# start-yarn.sh
starting yarn daemons
starting resourcemanager, logging to /usr/local/src/hadoop-2.6.5/logs/yarn-root-resourcemanager-WEB40.out
WEB40: starting nodemanager, logging to /usr/local/src/hadoop-2.6.5/logs/yarn-root-nodemanager-WEB40.out
WEB39: starting nodemanager, logging to /usr/local/src/hadoop-2.6.5/logs/yarn-root-nodemanager-WEB39.out
service: starting nodemanager, logging to /usr/local/src/hadoop-2.6.5/logs/yarn-root-nodemanager-service.out

9、查看4台服务器的进程

hadoop1

hadoop2

hadoop3

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

HDFS : http://192.168.1.40:50070
YARN : http://192.168.1.40:8088

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

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

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

HDFS界面

点击Datanodes可以查看四个节点

YARN界面

点击Nodes可以查看节点

回到顶部

Hadoop的简单使用

创建文件夹

在HDFS上创建一个文件夹/test/input

[hadoop@hadoop1 ~]$ hadoop fs -mkdir -p /test/input

查看创建的文件夹

[hadoop@hadoop1 ~]$ hadoop fs -ls /
Found 1 items
drwxr-xr-x   - hadoop supergroup          0 2018-03-03 11:33 /test
[hadoop@hadoop1 ~]$ hadoop fs -ls /test
Found 1 items
drwxr-xr-x   - hadoop supergroup          0 2018-03-03 11:33 /test/input
[hadoop@hadoop1 ~]$

上传文件

创建一个文件words.txt

[hadoop@hadoop1 ~]$ vi words.txt
hello zhangsan
hello lisi
hello wangwu

上传到HDFS的/test/input文件夹中

[hadoop@hadoop1 ~]$ hadoop fs -put ~/words.txt /test/input

查看是否上传成功

[hadoop@hadoop1 ~]$ hadoop fs -ls /test/input
Found 1 items
-rw-r--r--   2 hadoop supergroup         39 2018-03-03 11:37 /test/input/words.txt
[hadoop@hadoop1 ~]$

下载文件

将刚刚上传的文件下载到~/data文件夹中

[hadoop@hadoop1 ~]$ hadoop fs -get /test/input/words.txt ~/data

查看是否下载成功

[hadoop@hadoop1 ~]$ ls data
hadoopdata  words.txt
[hadoop@hadoop1 ~]$

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

[hadoop@hadoop1 ~]$ hadoop jar ~/apps/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /test/input /test/output

在YARN Web界面查看

查看结果

[hadoop@hadoop1 ~]$ hadoop fs -ls /test/output
Found 2 items
-rw-r--r--   2 hadoop supergroup          0 2018-03-03 11:42 /test/output/_SUCCESS
-rw-r--r--   2 hadoop supergroup         35 2018-03-03 11:42 /test/output/part-r-00000
[hadoop@hadoop1 ~]$ hadoop fs -cat /test/output/part-r-00000
hello    3
lisi    1
wangwu    1
zhangsan    1
[hadoop@hadoop1 ~]$

CentOS7.0下Hadoop2.7.3的集群搭建相关推荐

  1. hadoop2.7.2分布式集群搭建(三台)

    hadoop2.7.2分布式集群搭建(三台节点) 系统环境搭建 1.三台节点设置主机名和IP 2.配置主机的映射 3.ssh免密登录 4.关闭防火墙 5.关闭seliunx 6.安装jdk 7.设置n ...

  2. CentOS7.3下二进制安装Kubernetes1.9集群 开启TLS

    Kubernetes的相关原理性的东西之前有叙述过,网上也有很多,这里主要是写的自己在使用二进制的方式搭建Kubernetes1.9的一些方法,对学习的东西做一个自我的总结. Kubernetes有许 ...

  3. RHEL6.0下LVS-DR+ipvsadm实现服务集群

    LVS-RT类型的Web服务的集群 示意图如下: 说明: 本实验是在虚拟机环境下的集群配置,是对web服务进行负载均衡集群. 在实际工作中,reserver1和realserver2的web服务的网页 ...

  4. hadoop-2.7.2 分布式集群搭建

    1.机器信息 五台centos 64位机器 2.集群规划 Server Name Hadoop Cluster Zookeeper   Ensemble HBase Cluster Hadoop01 ...

  5. Hadoop2.7.2之集群搭建(三台)

    原文地址:http://blog.csdn.net/uq_jin/article/details/51513307 如果你还没有虚拟机,请参考:http://blog.csdn.net/uq_jin/ ...

  6. rancher2.0安装mysql_高可用rancher集群搭建

    我在使用rancher过程中遇到的问题: 一开始是用的单机的环境,没有设置启动内存,而且mysql使用的是内嵌的数据库.Rancher Server在运行了几个月后变的极慢,甚至不能再添加和启动.删除 ...

  7. Ambari集群搭建

    [集群规划] 虚拟机1 虚拟机2 虚拟机3 内 存 5GB 5GB 5GB 磁 盘 115GB 115GB 115GB host名 vm01 vm02 vm03 ip地址 192.168.1.100 ...

  8. 单台主机 kafka + zookeeper 集群搭建

    文章转自: https://www.jianshu.com/p/dc4770fc34b6 在单台主机上搭建kafka + zookeeper 集群. zookeeper 集群搭建 kafka是通过zo ...

  9. 记一次在K8s集群搭建的MySQL主从无法正常启动之数据迁移恢复实践

    本章目录:记一次在K8s集群搭建的MySQL主从无法正常启动之数据迁移恢复实践 描述:在K8s集群中里利用bitnami提供的mysql:5.7.32-debian-10-r61镜像并利用helm进行 ...

最新文章

  1. mysql 主从配置
  2. 侠客X开发工作已经持续了2个月左右了。
  3. jsp可以使用iframe_使用 JavaScript object URLs,可以处理图像、音频和视频
  4. 接口也可以创建对象吗_面试时,一个小小的设计模式可以把你虐成渣
  5. namespace mismatch错误处理方法
  6. driver nvidia web_黑苹果 macOS 10.13.6 17G66 安装 nVidia WebDriver
  7. RDD、DataFrame和DataSet的区别
  8. 【汇率预测】基于matlab模拟退火算法优化BP神经网络汇率预测【含Matlab源码 689期】
  9. nexus下载 通过官网下载
  10. 一年级古诗《画》知识点心田花开汇总
  11. 苹果蒸发639亿 华尔街陷入苹果需求全恐慌模式
  12. axure不能导出图片_Axure7.0导出图片提示内存不足,如何解决?
  13. oracle11g64位怎么用sql,PLSQLDeveloper连接Oracle11g64位数据库配置详解(图文)
  14. webpack中对CSS压缩
  15. JWT详细教程与使用
  16. python 插值 —— 如何实现插值,以及错误ValueError: A value in x_new is below the interpolation range.
  17. 服务器域名解析步骤总结
  18. 突破圈层,个体崛起,欢迎想突破自己的你
  19. mysql学号数据类型_数据库常见数据类型和约束
  20. linux控制台单人五子棋简书,实现一个质量过硬五子棋

热门文章

  1. Redis集群一致性Hash效果的代码演示
  2. HDU 5145 - NPY and girls
  3. 【工作记录】android手势事件操作记录
  4. C语言二维数组中的指针问题
  5. Exchange收件人管理
  6. “街坊”×××数字平台,昔日的思想,曾经的努力
  7. git 上传代码到码云
  8. template多行编写的方式
  9. 如何将hive查询结果导出成txt文件
  10. jsp放在web-inf下的注意事项