hadoop 介绍
hadoop 是一个分布式系统架构,我们可以利用 hadoop 来对大量数据进行存储和计算。hadoop 中存储文件的系统为 HDFS。HDFS 全称是 Hadoop Distributed File System,也就是 hadoop 分布式文件系统。HDFS 会将一个文件分块保存。HDFS 有 3 个节点:NameNode,DataNode,Secondary NameNode。 NameNode 可以保存整个文件系统的目录信息、文件信息和分块信息;DataNode 用于存储 block 块文件;Secondary NameNode 帮助 NameNode 收集文件系统运行的状态信息。Yarn 是 hadoop 中资源管理和任务调度的一个框架。Yarn 有两个节点:NodeManager 和 ResourceManager。NodeManager 是运行在单个节点上的代理;ResourceManager 负责集群中所有资源的统一管理和分配。
hadoop 伪分布式的配置
- 解压 hadoop 文件:
cd /simple
tar -zxvf hadoop-2.4.1.tar.gz –C /simple - 配置 jdk:
vi hadoop-env.sh
export JAVA_HOME=/simple/jdk1.7.0_79 - 把 hadoop 的安装目录配置到环境变量中:
vi /etc/profile
HADOOP_HOME=/simple/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
bin 里面是 hadoop 系统的操作文件,sbin 是 hadoop 的一些启动命令。 - 让配置文件生效:source /etc/profile
- 查看 hadoop 版本号:hadoop –version
- 修改 hadoop 的配置文件:
①vi core-site.xml:主要配置 hdfs 系统 namenode 信息<!--指定hdfs系统的位置--> <property> <name>fs.default.name</name> <value>hdfs://192.168.1.2:9000</value> </property> <!--指定hadoop的临时存储目录,一般配置在安装目录下+tmp,tmp下存储namenode、datanode信息--> <property> <name>hadoop.tmp.dir</name> <value>/simple/hadoop-2.4.1/tmp</value> </property>
②vi hdfs-site.xml:配置 hdfs 系统的存储信息
<!--指定HDFS副本的数量,完全分布式最少两个副本--> <property> <name>dfs.replication</name> <value>1</value> </property>
③ 目录中默认情况下没有 mapred-site.xml,通过 cp mapred-site.xml.templa mapred-site.xml 复制后,编辑 vi mapred-site.xml(MapReduce 的相关配置)
<!--指定由yarn分配MapReduce计算的资源--> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>
④vi yarn-site.xml:主要配置 yarn 的信息
<!--指定ResourceManager的启动位置--> <property> <name>yarn.resourcemanager.hostname</name> <value>localhost</value> </property> <!--指定nodemanager的shuffle过程--> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property>
- hadoop 格式化:hdfs namenode –format
- 启动 hadoop:
① 启动 hdfs 系统:start-dfs.sh
启动计算资源调度:start-yarn.sh
② 启动所有:start-all.sh - 停止 hadoop:
① 启动 hdfs 系统:stop-dfs.sh
启动计算资源调度:stop-yarn.sh
② 启动所有:stop-all.sh - 查看是否启动成功:jps
root@ubuntu:/simple/hadoop/etc/hadoop# jps 21571 DataNode 22100 NodeManager 21783 SecondaryNameNode 21405 NameNode 21981 ResourceManager 22606 Jps
0