简介:
- Hadoop集群包括两个集群:HDFS集群和YARN集群。
- 两个集群逻辑上分离、通常物理上在一起。
一:相关文档
- Hadoop安装包下载地址: Index of /dist/hadoop/common
- 安装使用 VMware 创建三台虚拟机。
- 三台虚拟机做好免密登录。(参考文档: SSH设置免密登录(centos7)_ssh-keygen -t dsa -p '' -f ~/.ssh/id_dsa_潮听哥的博客-CSDN博客 )
- 修改三台主机hostname(参考文档: 修改主机hostname,推荐第二种_修改hostname_有欲无求的博客-CSDN博客 )。
- 安装jdk。(参考文档: centos7 安装jdk详细教程_centos7安装jdk_奇漠的博客-CSDN博客 )
- 每分钟执行一次时间同步 crontab -e ; */1 * * * * /usr/sbin/ntpdate ntp1.aliyun.com
二:开始安装
- 修改主机名(3台机器)
vim /etc/hostname输入node1或node2或node3
- Hosts映射(3台机器)
vim /etc/hosts192.168.106.3 node1192.168.106.4 node2192.168.106.5 node3
- 防火墙关闭(3台机器)
systemctl stop firewalld.service #关闭防火墙systemctl disable firewalld.service #禁止防火墙开机自启
- ssh免密登录
注意:第一轮一次执行完后,再执行第二轮node1第一轮:ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsascp ~/.ssh/id_dsa.pub root@node2:/home/id_dsa_node1.pubscp ~/.ssh/id_dsa.pub root@node3:/home/id_dsa_node1.pub第二轮:cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keyscat /home/id_dsa_node2.pub >> ~/.ssh/authorized_keyscat /home/id_dsa_node3.pub >> ~/.ssh/authorized_keysnode2第一轮:ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsascp ~/.ssh/id_dsa.pub root@node1:/home/id_dsa_node2.pubscp ~/.ssh/id_dsa.pub root@node3:/home/id_dsa_node2.pub第二轮:cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keyscat /home/id_dsa_node1.pub >> ~/.ssh/authorized_keyscat /home/id_dsa_node3.pub >> ~/.ssh/authorized_keysnode3第一轮:ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsascp ~/.ssh/id_dsa.pub root@node1:/home/id_dsa_node3.pubscp ~/.ssh/id_dsa.pub root@node2:/home/id_dsa_node3.pub第二轮:cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keyscat /home/id_dsa_node2.pub >> ~/.ssh/authorized_keyscat /home/id_dsa_node1.pub >> ~/.ssh/authorized_keys
- 集群时间同步(3台机器)
每分钟执行一次时间同步 crontab -e */1 * * * * /usr/sbin/ntpdate ntp1.aliyun.com
- JDK安装(3台机器)参考上面文档
- 下载编译好的hadoop安装包 hadoop-3.3.4.tar.gz 并解压
tar -zxf hadoop-3.3.4.tar.gzmv hadoop-3.3.4 /usr/local
- hadoop目录介绍
- 修改配置文件 hadoop-env.sh
vim /usr/local/hadoop-3.3.4/etc/hadoop/hadoop-env.sh文档末尾添加export JAVA_HOME=/usr/local/javaexport HDFS_NAMENODE_USER=rootexport HDFS_DATANODE_USER=rootexport HDFS_SECONDARYNAMENODE_USER=rootexport YARN_RESOURCEMANAGER_USER=rootexport YARN_NODEMANAGER_USER=root
- 修改配置文件 core-site.xml
vim /usr/local/hadoop-3.3.4/etc/hadoop/core-site.xml<configuration><!-- 设置默认使用的文件系统 Hadoop支持file、HDFS、GFS、ali|Amazon云等文件系统 --><property> <name>fs.defaultFS</name> <value>hdfs://node1:8020</value></property><!-- 设置Hadoop本地保存数据路径 --><property> <name>hadoop.tmp.dir</name> <value>/usr/local/data/hadoop-3.3.4</value></property><!-- 设置HDFS web UI用户身份 --><property> <name>hadoop.http.staticuser.user</name> <value>root</value></property><!-- 整合hive 用户代理设置 --><property> <name>hadoop.proxyuser.root.hosts</name> <value>*</value></property><property> <name>hadoop.proxyuser.root.groups</name> <value>*</value></property><!-- 文件系统垃圾桶保存时间 --><property> <name>fs.trash.interval</name> <value>1440</value></property></configuration>
- 修改配置文件 hdfs-site.xml
vim /usr/local/hadoop-3.3.4/etc/hadoop/hdfs-site.xml<configuration><!-- 设置SNN进程运行机器位置信息 --><property> <name>dfs.namenode.secondary.http-address</name> <value>node2:9868</value></property></configuration>
- 修改配置文件 mapred-site.xml
vim /usr/local/hadoop-3.3.4/etc/hadoop/mapred-site.xml<configuration><!-- 设置MR程序默认运行模式:yarn集群模式 local本地模式 --><property> <name>mapreduce.framework.name</name> <value>yarn</value></property><!-- MR程序历史服务地址 --><property> <name>mapreduce.jobhistory.address</name> <value>node1:10020</value></property><!-- MR程序历史服务器web端地址 --><property> <name>mapreduce.jobhistory.webapp.address</name> <value>node1:19888</value></property><property> <name>yarn.app.mapreduce.am.env</name> <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value></property><property> <name>mapreduce.map.env</name> <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value></property><property> <name>mapreduce.reduce.env</name> <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value></property></configuration>
- 修改配置文件 yarn-site.xml
vim /usr/local/hadoop-3.3.4/etc/hadoop/yarn-site.xml<configuration><!-- 设置YARN集群上主角色运行机器位置 --><property> <name>yarn.resourcemanager.hostname</name> <value>node1</value></property><property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value></property><!-- 是否将对容器实施物理内存限制 --><property> <name>yarn.nodemanager.pmem-check-enabled</name> <value>false</value></property><!-- 是否将对容器实施虚拟内存限制 --><property> <name>yarn.nodemanager.vmem-check-enabled</name> <value>false</value></property><!-- 开启日志聚集 --><property> <name>yarn.log-aggregation-enable</name> <value>true</value></property><!-- 设置yarn历史服务器地址 --><property> <name>yarn.log.server.url</name> <value>http://node1:19888/jobhistory/logs</value></property><!-- 历史日志保存的时间 7天 --><property> <name>yarn.log-aggregation-retain-seconds</name> <value>604800</value></property></configuration>
- 修改配置文件 workers
vim /usr/local/hadoop-3.3.4/etc/hadoop/workersnode1node2node3
- 分发同步hadoop安装包
scp -r /usr/local/hadoop-3.3.4 root@node2:/usr/local/scp -r /usr/local/hadoop-3.3.4 root@node3:/usr/local/
- 讲hadoop添加到环境变量(3台机器)
vim /etc/profileexport HADOOP_HOME=/usr/local/hadoop-3.3.4export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbinsource /etc/profile---同步给另外两台机器scp /etc/profile node2:/etc/scp /etc/profile node3:/etc/
- NameNode format (格式化操作)
*. 首次启动HDFS时,必须对其进行格式化操作。*. format 只能进行一次,后续不再需要。*. format 本质上是初始化工作,进行HDFS清理和准备工作。*. 执行命令: hdfs namenode -format注意:如果多次format除了造成数据丢失外,还会导致hdfs集群主从角色之间互不识别。通过删除所有机器hadoop.tmp.dir目录重新format解决。
出现successfully fromatted,表示格式化成功! - 集群启动
*. HDFS集群 start-dfs.sh stop-dfs.sh*. YARN集群 start-yarn.sh stop-yarn.sh*. HDFS集群 start-all.sh stop-all.sh
- 确定启动是否成功
- Hadoop 启动日志路径:/usr/local/hadoop-3.3.4/logs
- HDFS 集群地址:http://node1:9870/![](https://img-blog.csdnimg.cn/a8967093e76c441181ca25f988bd87c4.png)
- YARN 集群地址:http://node1:8088/cluster![](https://img-blog.csdnimg.cn/77a7582d74f0436ca0bf7c30fd6e233b.png)
- 至此hadoop hdfs、yarn集群已经搭建完成!
三:HDFS初体验
shell命令操作创建目录:hadoop fs -mkdir /test 上传文件:hadoop fs -put aaa.txt /test查看目录:hadoop fs -ls /
四:MapReduce+YARN 初体验
- 执行hadoop官方自带的MapReduce案例,评估圆周率π的值
cd /usr/local/hadoop-3.3.4/share/hadoop/mapreducehadoop jar hadoop-mapreduce-examples-3.3.4.jar pi 2 4
标签:
hadoop
本文转载自: https://blog.csdn.net/linghaowoneng/article/details/129355259
版权归原作者 家在水草丰茂的地方 所有, 如有侵权,请联系我们删除。
版权归原作者 家在水草丰茂的地方 所有, 如有侵权,请联系我们删除。