一、Hadoop的本地部署使用
目标1:统计一下一个词出现的次数~
1、首先要有包含内容的文件
在/opt下面创建一个目录(文件夹)test
命令:cd /opt
mkdir test
2、在/opt/test目录下面创建input目录(文件夹)和output目录(文件夹)
命令:mkdir input
mkdir output
3、在/opt/test/input目录下创建包含内容的文件。(其实就是在文件中编辑文字)
命令:cd input/
ll
vi zyl.txt
4、用hadoop去执行这个文件
切换到/opt/module/hadoop-3.1.3/share/hadoop/mapreduce目录下
执行文件:
hadoop jar hadoop-mapreduce-examples-3.1.3.jar wordcount /opt/test/input/ /opt/test/output/count.txt
5、查看执行后的结果
命令:cd /opt/test/output/count.txt
命令:cat part-r-00000
二、Hadoop的伪分布式部署
目标2:
1、配置集群环境
(1)修改第一个配置
在/opt/module/hadoop-3.1.3/etc/hadoop目录下
设置hadoop-env.sh文件
vi hadoop-env.sh
命令模式下输入/搜索JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
(2)修改第二个配置
在/opt/module/hadoop-3.1.3/etc/hadoop目录下
设置core-site.xml文件
vi core-site.xml
(3)修改第三个配置
在/opt/module/hadoop-3.1.3/etc/hadoop目录下
设置hdfs-site.xml文件
vi hdfs-site.xml
命令:vi hdfs-site.xml
在configuration中指定HDFS的数量
<configuration>
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
- 启动集群
- 格式化namenode
命令:hdfs namenode -format
- 启动namenode
命令:hdfs --daemon start namenode
- 如果出现进程启动不起来
在/opt/module/hadoop3.1.3/有logs文件夹
哪个命令启动不起来,就查看logs文件夹中的相对应的log文件
二、
- 启动resourcemanager
命令:[root@hadoop100 hadoop]# yarn --daemon start resourcemanager
- 启动nodemanager
命令:[root@hadoop100 hadoop]# yarn --daemon start nodemanager
- Jsp查看java进程
命令:jsp
- 在HDFS中创建文件夹/user/input
命令:hdfs dfs -mkdir -p /user/input
- 将文件上传到HDFS
命令:hdfs dfs –put 要上传的文件名 上传的地址
案例: hdfs dfs -put wcinput/wc.input /user/input/
- 查看hdfs的文件目录
命令:Hdfs dfs –ls 文件路径
注意,这里面的根目录不是linux的根目录
案例:hdfs dfs -ls /user/input/
- 查看hdfs中文件内容
命令:hdfs dfs –cat 文件名
案例:hdfs dfs -cat /user/input/wc.input
- 执行文件
命令:hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount 执行的文件位置 输出的文件位置
案例:hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /user/input /user/output
- 查看执行后的结果
命令:hdfs dfs -cat 输出文件路径/*
案例:hdfs dfs -cat /user/output/*
- 停止进程 hdfs –daemon stop namenode