@[toc]
3.Hadoop运行模式
3.5群起集群
3.5.1配置workers
- summer@hadoop102 hadoop]$ vim /opt/module/hadoop-3.1.3/etc/hadoop/workers
在该文件中增加如下内容:
hadoop102
hadoop103
hadoop104
注意:该文件中添加的内容结尾不允许有空格,文件中不允许有空行
同步所有节点配置文件
- [summer@hadoop102 hadoop]$ xsync workers
3.5.2启动集群
3.5.2.1第一次启动集群
如果集群是第一次启动
,需要在hadoop102节点格式化NameNode(注意:格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据。如果集群在运行过程中报错,需要重新格式化NameNode的话,一定要先停止namenode和datanode进程,并且要删除所有机器的data和logs目录,然后再进行格式化。)
- [summer@hadoop102 hadoop-3.1.3]$ hdfs namenode -format
3.5.2.2启动HDFS
- [summer@hadoop102 hadoop-3.1.3]$ sbin/start-dfs.sh
hadoop102、hadoop103和hadoop104和这张图对比对比,看看一样不一样
3.5.2.3在配置了ResourceManager的节点(hadoop103)
启动YARN
- [summer@hadoop103 hadoop-3.1.3]$ sbin/start-yarn.sh
hadoop102、hadoop103和hadoop104和这张图对比对比,看看一样不一样
3.5.2.4Web端查看HDFS的NameNode
(a)浏览器中输入:http://hadoop102:9870
(b)查看HDFS上存储的数据信息
3.5.2.5Web端查看YARN的ResourceManager
(a)浏览器中输入:http://hadoop103:8088
(b)查看YARN上运行的Job信息
3.5.3集群基本测试
3.5.3.1上传文件到集群
3.5.3.1.1上传小文件
- [summer@hadoop102 hadoop-3.1.3]$ hadoop fs -mkdir /testinput
- [summer@hadoop102 hadoop-3.1.3]$ hadoop fs -put testinput/word.txt /testinput
3.5.3.1.2上传大文件
- [summer@hadoop102 hadoop-3.1.3]$ hadoop fs -put /opt/software/jdk-8u212-linux-x64.tar.gz /
3.5.3.2上传文件后查看文件存放在什么位置
3.5.3.2.1查看HDFS文件存储路径
- [summer@hadoop102 subdir0]$ pwd
/opt/module/hadoop-3.1.3/data/dfs/data/current/BP-1179656431-192.168.159.102-1659792316422/current/finalized/subdir0/subdir0
3.5.3.2.2查看HDFS在磁盘存储文件内容
- [summer@hadoop102 subdir0]$ cat blk_1073741825
3.5.3.3拼接
处理jdk那个文件
- [summer@hadoop102 subdir0]$ cat blk_1073741826 >> tmp.tar.gz
- [summer@hadoop102 subdir0]$ cat blk_1073741827 >> tmp.tar.gz
- [summer@hadoop102 subdir0]$ tar -zxvf tmp.tar.gz
解压到当前路径,就是jdk那个压缩包
3.5.3.4下载
从hadoop上下载到linux系统中
- [summer@hadoop104 123]$ hadoop fs -get /jdk-8u212-linux-x64.tar.gz ./
3.5.3.5执行wordcount程序
- [summer@hadoop102 hadoop-3.1.3]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /testinput /testoutput
这个里面就是咱想要的内容