- 启动进程
- 快捷键
- 虚拟机准备
- 1. 安装VM Tool
- 2. 换源
- 安装相应软件
- 安装Jdk和Hadoop
- wordcount案例
- 伪分布式案例
- HDFS
- 1. 配置文件
- 2. 启动集群
- 3. 测试
- YARN
- 1. 配置
- 2. 启动
- 配置历史服务器
- 1. 配置
- 2. 启动历史服务器
- 日志聚合
- HDFS
- 常见问题
边学边写,持续更新中
配合目录用
在vm上安装玩ubuntu之后,换一个国内源,博主装的是清华源
然后安装 vim ,ssh
这些有空再写教程
| 启动 | CODE |
|---|---|
| Namenode | sbin/hadoop-daemon.sh start namenode |
| Damenode | sbin/hadoop-daemon.sh start datanode |
| ResourceManager | sbin/yarn-daemon.sh start resourcemanager |
| NodeManager | sbin/yarn-daemon.sh start nodemanager |
| 历史服务器 | sbin/mr-jobhistory-daemon.sh start historyserver |
| 启动 | CODE |
| 启动 | CODE |
| NAME | TIPS | TIPS |
|---|---|---|
| 清屏 | Ctrl + l | clear |
bin/hdfs dfs -rm -r bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount
hdfs删除命令
bin/hdfs dfs -rm -r
hdfs运行命令
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount
博主用的是VM软件操作,以下步骤根据自己要求适当性安装
1. 安装VM Tool为了方便虚拟机和电脑之间的复制粘贴
- 在菜单栏,点 虚拟机 ,点 安装Vmware Tool
- 打开桌面上的VM Tool文件,把后缀为 gz的文件复制,打开桌面左边栏的 文件,新建一个文件夹,把刚才拷贝的文件粘贴
- 打开终端,找到文件,把这个文件解压了,taz -zxvf VMwareTools-10.3.2-9925305.tar.gz
- 进入到 vmware-tools-distrib 中,执行 ./vmware-install.pl,期间一直敲回车
- 设置共享文件夹,
解决拖动文件卡死问题
1. 将Ubuntu关机(power off),否则不能添加共享文件夹 2. 在VMware虚拟机窗口,选择虚拟机->设置->选项->共享文件夹 3. 点右边的“添加”,点“下一步”->选择事先创建好的共享目录的路径,然后点“下一步”->选中 启动共享->完成 4. 在窗口的右边,选择“总是启用” 5. 点 确定 退出2. 换源
这里是18.04版本的源
- 进入管理员模式,sudo -i
- cd ..退到根目录,vi /etc/apt/sources.list
按dd(长按) 按i 鼠标右键-粘贴下面的源 按Esc :wq 退出保存
# 清华源 首推,还要阿里源 中科大源 可自行百度 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
- 执行下面代码更新
apt-get update
apt-get upgrade
- 安装vim apt install vim
- 安装ssh apt-get install ssh
- 安装rsync apt-get install rsync
1.解压 tar -zxvf ******
2.配置环境变量 vim /etc/profile
2.1 输入相应的环境变量
## JAVA_HOME export JAVA_HOME=/opt/jdk1.8.0_144 ## 路径不唯一 可以进入jkd 然后用pwd看路径 export PATH=$PATH:$JAVA_HOME/bin ## HADOOP export HADOOP_HOME=/opt/hadoop-2.7.2 export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin
3.更新 source /etc/profile
- 在hadoop路径下创建一个wcinput文件夹 mkdir wcinput,然后创建 touch wc.input
- 编辑wc.input vim wc.input 在里面随便输点什么,保存退出
- 在/opt/Hadoop-2.7.2目录下执行 wordcount
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount wcinput wcoutput - 看结果 cat wcoutput/part-r-00000
- 配置core-site.xml,进入 /opt/hadoop-2.7.2/etc/hadoop 目录下,vim core-site.xml
- 在两个
中间写入一下代码,保存退出
fs.defaultFS hdfs://localhost:9000 hadoop.tmp.dir /opt/hadoop-2.7.2/data/tmp
- 配置hadoop-env.sh,vim hadoop-env.sh,写入JAVA_HOME,用 echo $JAVA_HOME 看java路径。如图
- 配置hdfs-site.xml,vim hdfs-site.xml ,写入以下代码
2. 启动集群dfs.replication 1
- 格式化NameNode
bin/hdfs namenode -format - 启动NameNode
sbin/hadoop-daemon.sh start namenode - 启动DataNode
sbin/hadoop-daemon.sh start datanode - 查看启动情况 jps 或者是 在虚拟机里的网页打开 localhost:50070
- 创建文件 ,结果如图
bin/hdfs dfs -mkdir -p /user/root/input
- 上传文件,这里是之前的那个wordcount案例的文件。刷新网页即看到文件
bin/hdfs dfs -put wcinput/wc.input /user/root/input
- 执行hdfs上的文件,output不能事先创建。结果如图
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/root/input /user/root/output
- 在本地看hdfs的结果
bin/hdfs dfs -cat /user/root/output/p*
- 配置yarn-env.sh ,删除export之前的 # ,更改JAVA_HOME vim yarn-env.sh ,如图
- 配置yarn-site.xml,vim yarn-site.xml ,地址可以写自己的主机名或者是localhost
yarn.nodemanager.aux-services mapreduce_shuffle yarn.resourcemanager.hostname localhost
- 配置mapred-env.sh,更改JAVA_HOME,vim mapred-env.sh ,如图
- 配置mapred-site.xml,先将mapred-site.xml.template重命名为mapred-site.xml
cp mapred-site.xml.template mapred-site.xml
然后再 vim mapred-site.xml ,加入以下代码
2. 启动mapreduce.framework.name yarn
- 启动集群,启动之前保证namenode和datanode已启动,用 jps 看。
要在/opt//hadoop-2.7.2目录下启动
启动ResourceManager
sbin/yarn-daemon.sh start resourcemanager
启动NodeManager
sbin/yarn-daemon.sh start nodemanager
用 localhost:8088 网址看是否启动成功,如图
- 测试 运行wordcount案例
删除output
hdfs dfs -rm -r /user/root/output
运行wordcount
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /user/root/input /user/root/output
在Yarn上看进度
配置mapred-site.xml vim mapred-site.xml
2. 启动历史服务器mapreduce.jobhistory.address 虚拟机主机名:10020 mapreduce.jobhistory.webapp.address 虚拟机IP:19888
启动后用 jps 看,或者网址http://上面的IP:19888/jobhistory
sbin/mr-jobhistory-daemon.sh start historyserver
测试
用wordcount案例测试,注意先删掉outout
- 配置配置yarn-site.xml vim yarn-site.xml 加入以下代码
yarn.log-aggregation-enable true yarn.log-aggregation.retain-seconds 604800
- 关闭NodeManager、ResourceManager、HistoryManager
sbin/mr-jobhistory-daemon.sh stop historyserver sbin/yarn-daemon.sh stop nodemanager sbin/yarn-daemon.sh stop resourcemanager
- 重启NodeManager、ResourceManager、HistoryManager
sbin/yarn-daemon.sh start resourcemanager sbin/yarn-daemon.sh start nodemanager sbin/mr-jobhistory-daemon.sh start historyserver
- 再次运行wordcount案例去看聚合后的日志
CODE
- namenode启动后消失;namenode启动不了
方法一:查看core-site-xml 中的主机名,伪分布是localhost
方法二:格式化不干净,先停止namenode和datanode进程,然后删掉 opt 目录下的data文件和logs文件,再格式化namenode,再启动
在这里插入代码片
端口
8088 mapreduce
50070 hdfs
ifconfig 看ip
CODE



