【Hadoop技术篇】hadoop的使用

简介: HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起。

1. 集群简介

HADOOP集群具体来说包含两个集群:HDFS集群YARN集群,两者逻辑上分离,但物理上常在一起。

HDFS集群负责海量数据的存储,集群中的角色主要有:

NameNode、DataNode、SecondaryNameNode

YARN集群负责海量数据运算时的资源调度,集群中的角色主要有:

ResourceManager、NodeManager

我们以3节点为例进行搭建,角色分配如下:

node1

NameNode DataNode ResourceManager
node2 DataNode NodeManager SecondaryNameNode
node3 DataNode NodeManager

2. 集群启动

1. 启动方式

要启动Hadoop集群,需要启动HDFS和YARN两个集群。

注意:首次启动HDFS时,必须对其进行格式化操作。本质上是一些清理和准备工作,因为此时的HDFS在物理上还是不存在的。

hadoop namenode -format

image.gif

2. 单节点逐个启动

在主节点上使用以下命令启动HDFS NameNode:

$HADOOP_HOME/bin/hdfs --daemon start namenode

在每个从节点上使用以下命令启动HDFS DataNode:

$HADOOP_HOME/bin/hdfs --daemon start datanode

在node2上使用以下命令启动HDFS SecondaryNameNode

$HADOOP_HOME/bin/hdfs --daemon start secondarynamenode

在主节点上使用以下命令启动YARNResourceManager:

$HADOOP_HOME/bin/yarn --daemon start resourcemanager

在每个从节点上使用以下命令启动YARN nodemanager

$HADOOP_HOME/bin/yarn --daemon start nodemanager

如果想要停止某个节点上某个角色,只需要把命令中的start改为stop即可

当启动完成后,查看三台节点上的进程

第一台

image.gif编辑

第二台

image.gif编辑

第三台

image.gif编辑

3. 脚本一键启动

如果配置了etc/hadoop/workers和ssh免密登录,则可以使用程序脚本启动所有Hadoop两个集群的相关进程,在主节点所设定的机器上执行。

hdfs:$HADOOP_PREFIX/sbin/start-dfs.sh

yarn:$HADOOP_PREFIX/sbin/start-yarn.sh

停止集群:stop-dfs.shstop-yarn.sh

3. 集群web-ui

一旦Hadoop集群启动并运行,可以通过web-ui进行集群查看,如下所述:

NameNode http://nn_host:port/ 默认9870.

image.gif编辑

ResourceManager http://rm_host:port/ 默认 8088.

image.gif编辑

4. HDFS使用

从Linux本地上传一个文本文件到hdfs的/test/input目录下

hadoop fs -mkdir -p /wordcount/input

hadoop fs -put /root/somewords.txt  /wordcount/input

5. 运行mapreduce程序

在Hadoop安装包的share/hadoop/mapreduce下有官方自带的mapreduce程序。我们可以使用如下的命令进行运行测试。

示例程序jar:

hadoop-mapreduce-examples-3.3.0.jar

计算圆周率:

hadoop jar hadoop-mapreduce-examples-3.3.0.jar pi 20 50

关于圆周率的估算,感兴趣的可以查询资料Monte Carlo方法来计算Pi值

目录
相关文章
|
6月前
|
分布式计算 Hadoop 大数据
大数据技术与Python:结合Spark和Hadoop进行分布式计算
【4月更文挑战第12天】本文介绍了大数据技术及其4V特性,阐述了Hadoop和Spark在大数据处理中的作用。Hadoop提供分布式文件系统和MapReduce,Spark则为内存计算提供快速处理能力。通过Python结合Spark和Hadoop,可在分布式环境中进行数据处理和分析。文章详细讲解了如何配置Python环境、安装Spark和Hadoop,以及使用Python编写和提交代码到集群进行计算。掌握这些技能有助于应对大数据挑战。
724 1
|
6月前
|
消息中间件 分布式计算 大数据
【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)
【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)
300 0
|
6月前
|
Java Shell 分布式数据库
【大数据技术Hadoop+Spark】HBase数据模型、Shell操作、Java API示例程序讲解(附源码 超详细)
【大数据技术Hadoop+Spark】HBase数据模型、Shell操作、Java API示例程序讲解(附源码 超详细)
157 0
|
6月前
|
SQL 存储 大数据
【大数据技术Hadoop+Spark】Hive基础SQL语法DDL、DML、DQL讲解及演示(附SQL语句)
【大数据技术Hadoop+Spark】Hive基础SQL语法DDL、DML、DQL讲解及演示(附SQL语句)
253 0
|
6月前
|
分布式计算 Java 大数据
【大数据技术Hadoop+Spark】HDFS Shell常用命令及HDFS Java API详解及实战(超详细 附源码)
【大数据技术Hadoop+Spark】HDFS Shell常用命令及HDFS Java API详解及实战(超详细 附源码)
698 0
|
6月前
|
SQL 分布式计算 大数据
【大数据技术Hadoop+Spark】Spark SQL、DataFrame、Dataset的讲解及操作演示(图文解释)
【大数据技术Hadoop+Spark】Spark SQL、DataFrame、Dataset的讲解及操作演示(图文解释)
168 0
|
6月前
|
SQL 存储 分布式计算
【大数据技术Hadoop+Spark】Hive数据仓库架构、优缺点、数据模型介绍(图文解释 超详细)
【大数据技术Hadoop+Spark】Hive数据仓库架构、优缺点、数据模型介绍(图文解释 超详细)
1070 0
|
6月前
|
分布式计算 大数据 Scala
【大数据技术Hadoop+Spark】Spark RDD创建、操作及词频统计、倒排索引实战(超详细 附源码)
【大数据技术Hadoop+Spark】Spark RDD创建、操作及词频统计、倒排索引实战(超详细 附源码)
291 1
|
6月前
|
存储 分布式计算 负载均衡
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
219 0
|
6月前
|
存储 分布式计算 Hadoop
【大数据技术Hadoop+Spark】HDFS概念、架构、原理、优缺点讲解(超详细必看)
【大数据技术Hadoop+Spark】HDFS概念、架构、原理、优缺点讲解(超详细必看)
463 0

相关实验场景

更多