现在准备并配置好了服务器,安装好jdk,现在开始安装hadoop集群。
| 组件\节点 | hadoop102 | hadoop103 | hadoop104 |
|---|---|---|---|
| HDFS | NameNode、DataNode | DataNode | SecondaryNameNode、DataNode |
| Yarn | Nodemanager | ResourceManager NodeManager | NodeManager |
wang,如遇权限问题,使用 sudo 升级权限/opt/softwaretar -zxvf hadoop-3.3.4.tar.gz /opt/module/| 默认配置文件 | hadoop的jar包中位置 |
|---|---|
| core-default.xml | hadoop-common-3.3.4.jar/core-default.xml |
| hdfs-default.xml | hadoop-hdfs-3.3.4.jar/hdfs-default.xml |
| yarn-default.xml | hadoop-yarn-common-3.3.4.jar/yarn-default.xml |
| mapred-default.xml | hadoop-mapreduce-client-core-3.3.4.jar/mapred-default.xml |
core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml,存储路径为:$HADOOP_HOME/etc/hadoop 路径下。/opt/module/hadoop-3.3.4/etc/hadoopcore-site.xml ,configuration 节点填写内容如下:<configuration>
<property>
<name>fs.defaultFSname>
<value>hdfs://hadoop102:8020value>
property>
<property>
<name>hadoop.tmp.dirname>
<value>/opt/module/hadoop-3.3.4/datavalue>
property>
<property>
<name>hadoop.http.staticuser.username>
<value>wangvalue>
property>
configuration>
hdfs-site.xml,configuration 节点填写内容如下:<configuration>
<property>
<name>dfs.namenode.http-addressname>
<value>hadoop102:9870value>
property>
<property>
<name>dfs.namenode.secondary.http-addressname>
<value>hadoop104:9868value>
property>
configuration>
yarn-site.xml,configuration 节点填写内容如下:<configuration>
<property>
<name>yarn.nodemanager.aux-servicesname>
<value>mapreduce_shufflevalue>
property>
<property>
<name>yarn.resourcemanager.hostnamename>
<value>hadoop103value>
property>
<property>
<name>yarn.nodemanager.env-whitelistname>
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOMEvalue>
property>
configuration>
yarn-site.xml,configuration 节点填写内容如下:<configuration>
<property>
<name>mapreduce.framework.namename>
<value>yarnvalue>
property>
configuration>
/opt/module/hadoop-3.3.4/etc 执行:xsync hadoop/,同步修改后的文件到hadoop103、hadoop104节点vi /etc/profile.d/my_env.sh ,增加如下内容:#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
xsync /etc/profile.d/my_env.shworkers,再格式化hadoop集群,最后启动hadoop集群。vim /opt/module/hadoop-3.3.4/etc/hadoop/workers,设置集群节点信息,添加如下内容:hadoop102
hadoop103
hadoop104
注意:
文件添加内容结尾不能有空格,不能有空行,不能有空行。
xsync /opt/module/hadoop-3.3.4/etchdfs namenode -format说明
- 如果集群在运行过程中报错,需要重新格式化NameNode,一定先停止所有Namenode和Datanode进程,再删除所有机器的data和logs目录,再进行格式化。
- 格式化Namenode会让集群产生新id,如果不清空目录data和logs,新旧id不一致,会造成集群异常。
/opt/module/hadoop-3.3.4 目录下执行:sbin/start-dfs.sh ,启动hdfs/opt/module/hadoop-3.3.4 目录下执行:sbin/start-yarn.shjps,查看java进程,确认服务是否正常启动。
浏览器打开网址:http://192.168.10.102:9870/,确认hdfs服务是否启动正常

可以通过 Utilities 菜单子菜单 Browser the file system 网页端操作hdfs文件系统,创建删除目录,增加删除文件。

除了网页可以节点控制台通过hadoop命令操作hadoop系统,详细命令介绍参照 hadoop命令 ,大致命令如下:
# 创建目录
hadoop fs -mkdir /input
# 上传文件
hadoop fs -put /opt/software/jdk-8u201-linux-x64.tar.gz /input
# 下载文件到当前目录
hadoop fs -get /opt/software/jdk-8u201-linux-x64.tar.gz
# 删除文件
hadoop fs -rm -f /input/jdk-8u201-linux-x64.tar.gz
# 删除文件夹
hadoop fs -rm -r -f /input
http://192.168.10.103:8088/cluster ,可以看到yarn调到信息页面
执行MapReduce任务实例
创建数据源目录:hadoop fs -mkdir /input,
创建数据文件:vi word.txt,内容为随意字符换行,实例如:
sadfssf
ada
wof
ssdd
数据文件上传hdfs:hadoop fs -put word.txt /input
执行MapReduce实例任务,统计单词树:hadoop jar /opt/module/hadoop-3.3.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.4.jar wordcount /input /output
output 为结果输出hdfs目录,不要提前创建目录,MapReduce输出目录不能存在,否则会报错。
出现 successfully 表示执行成功。
http://192.168.10.103:8088/cluster,可看到yarn记录
http://192.168.10.102:9870/,进入output目录,查看MapReduce任务结果。