行业知识
hadoop集群部署教程
文章目录
- 前言
- 一、相关介绍
- 1. 配置文件位置
- 1.1 只读默认配置文件
- 1.2 可修改配置文件
- 1.3 相关环境变量配置文件
- 二、安装准备
- 1. 准备centos
- 2. 配置集群免密登录
- 3. 部署规划
- 4. 安装条件
- 5. 安装jdk
- 三、安装hadoop
- 1. 下载并解压hadoop
- 2. 设置环境变量
- 2.1 设置hadoop安装目录环境变量
- 2.2 设置hadoop的root用户环境变量
- 3. 修改配置文件
- 3.1 修改 etc/hadoop/hadoop-env.sh 文件
- 3.2 修改 etc/hadoop/core-site.xml 文件
- 3.3 修改 etc/hadoop/hdfs-site.xml 文件
- 3.4 修改 etc/hadoop/mapred-site.xml 文件
- 3.5 修改 etc/hadoop/yarn-site.xml 文件
- 3.6 修改 etc/hadoop/workers 文件
- 3.7 同步配置
- 4. 格式化文件系统
- 5. 启动hadoop
- 6. 浏览器访问
- 四、hadoop集群命令
- 1. 启停命令
- 1.1 启停 hdfs
- 1.2 启停 yarn
- ���结
前言
本文介绍了如何安装和配置Hadoop,一个用于分布式存储和处理大规模数据的开源框架。通过按照本文提供的步骤,您可以在自己的机器上搭建一个Hadoop伪集群,并通过浏览器访问Hadoop的管理页面。本文详细介绍了安装准备、安装JDK、安装Hadoop、修改配置文件、格式化文件系统以及启动Hadoop的步骤。
一、相关介绍
1. 配置文件位置
1.1 只读默认配置文件
hadoop的只读默认配置文件位于安装目录下的 share/doc/hadoop/hadoop-project-dist/hadoop-common目录。包括以下默认配置文件:
- share/doc/hadoop/hadoop-project-dist/hadoop-common/core-default.xml
- share/doc/hadoop/hadoop-project-dist/hadoop-common/hdfs-default.xml
- share/doc/hadoop/hadoop-project-dist/hadoop-common/yarn-default.xml
- share/doc/hadoop/hadoop-project-dist/hadoop-common/mapred-default.xml
1.2 可修改配置文件
hadoop的可修改配置文件位于安装目录下的 etc/hadoop目录。包括以下可修改配置文件:
- etc/hadoop/core-site.xml
- etc/hadoop/hdfs-site.xml
- etc/hadoop/yarn-site.xml
- etc/hadoop/mapred-site.xml
这些配置文件的配置会覆盖默认配置文件的配置。
1.3 相关环境变量配置文件
hadoop的相关环境变量配置文件位于安装目录下的 etc/hadoop目录。包括以下相关环境变量配置文件:
- etc/hadoop/hadoop-env.sh
- etc/hadoop/mapred-env.sh
- etc/hadoop/yarn-env.sh
二、安装准备
1. 准备centos
准备三台centos,我准备的如下。
ip地址 主机名 192.168.198.101 hadoop101 192.168.198.102 hadoop102 192.168.198.103 hadoop103 修改/etc/hosts文件,配置主机名映射为ip地址。
hadoop101、hadoop102、hadoop103节点都要执行。
echo >> /etc/hostsecho '192.168.198.101 hadoop101' >> /etc/hostsecho '192.168.198.102 hadoop102' >> /etc/hostsecho '192.168.198.103 hadoop103' >> /etc/hosts
2. 配置集群免密登录
hadoop101节点执行。
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsacat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keysssh-copy-id 192.168.198.102ssh-copy-id 192.168.198.103
hadoop102节点执行。
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsacat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keysssh-copy-id 192.168.198.101ssh-copy-id 192.168.198.103
hadoop103节点执行。
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsacat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keysssh-copy-id 192.168.198.101ssh-copy-id 192.168.198.102
3. 部署规划
hadoop101 hadoop102 hadoop103 HDFS NameNode DataNode
SecondaryNameNode DataNode
DataNode YARN NodeManager NodeManager ResourceManager NodeManager
4. 安装条件
- jdk版本:1.8+
5. 安装jdk
hadoop101、hadoop102、hadoop103节点都要执行。
下载地址:https://www.oracle.com/java/technologies/downloads/#java8
下载后上传到/tmp目录下。
然后执行下面命令,用于创建目录、解压,并设置系统级环境变量。
mkdir -p /opt/moduletar -zxvf /tmp/jdk-8u391-linux-x64.tar.gz -C /opt/module/echo >> /etc/profileecho '#JAVA_HOME' >> /etc/profileecho "export JAVA_HOME=/opt/module/jdk1.8.0_391" >> /etc/profileecho 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profilesource /etc/profile
三、安装hadoop
1. 下载并解压hadoop
hadoop101、hadoop102、hadoop103节点都要执行。
wget --no-check-certificate https://archive.apache.org/dist/hadoop/common/hadoop-3.0.0/hadoop-3.0.0.tar.gz -P /tmpmkdir -p /opt/soft/hadooptar -zxvf /tmp/hadoop-3.0.0.tar.gz -C /opt/soft/hadoop
2. 设置环境变量
2.1 设置hadoop安装目录环境变量
设置hadoop系统级环境变量,并加载环境变量。
hadoop101、hadoop102、hadoop103节点都要执行。
echo >> /etc/profileecho '#HADOOP_HOME' >> /etc/profileecho "export HADOOP_HOME=/opt/soft/hadoop/hadoop-3.0.0" >> /etc/profileecho 'export PATH=$PATH:$HADOOP_HOME/bin' >> /etc/profileecho 'export PATH=$PATH:$HADOOP_HOME/sbin' >> /etc/profileecho 'export HADOOP_LOG_DIR=$PATH:$HADOOP_HOME/logs' >> /etc/profilesource /etc/profile
2.2 设置hadoop的root用户环境变量
hadoop通常不建议以root用户身份来启动服务,因为这可能会导致安全漏洞。如果以root用户启动hadoop就会报错,设置hadoop的root用户环境变量后,就可以用root用户启动hadoop。
hadoop101、hadoop102、hadoop103节点都要执行。
echo >> /etc/profileecho 'export HDFS_NAMENODE_USER=root' >> /etc/profileecho 'export HDFS_DATANODE_USER=root' >> /etc/profileecho 'export HDFS_SECONDARYNAMENODE_USER=root' >> /etc/profileecho 'export YARN_RESOURCEMANAGER_USER=root' >> /etc/profileecho 'export YARN_NODEMANAGER_USER=root' >> /etc/profilesource /etc/profile
3. 修改配置文件
hadoop101节点执行。
3.1 修改 etc/hadoop/hadoop-env.sh 文件
修改 etc/hadoop/hadoop-env.sh 文件,设置Java环境变量。
cd /opt/soft/hadoop/hadoop-3.0.0sed -i "s|^# export JAVA_HOME=.*|export JAVA_HOME=/opt/module/jdk1.8.0_391|" "etc/hadoop/hadoop-env.sh"sed -i "s|^export JAVA_HOME=.*|export JAVA_HOME=/opt/module/jdk1.8.0_391|" "etc/hadoop/hadoop-env.sh"
3.2 修改 etc/hadoop/core-site.xml 文件
修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/core-site.xml 文件。内容如下所示。
fs.defaultFS hdfs://hadoop101:8020 io.file.buffer.size 131072 hadoop.tmp.dir /opt/soft/hadoop/hadoop-3.0.0/hadoop-tmp-data hadoop.proxyuser.root.hosts * hadoop.proxyuser.root.users *
3.3 修改 etc/hadoop/hdfs-site.xml 文件
修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/hdfs-site.xml 文件。内容如下所示。
dfs.namenode.http-address hadoop101:9870 dfs.namenode.secondary.http-address hadoop102:9868 dfs.permissions.enabled false dfs.replication 3 dfs.namenode.name.dir /opt/hadoop/namenode dfs.hosts hadoop101,hadoop102,hadoop103 dfs.blocksize 268435456 dfs.namenode.handler.count 100 dfs.datanode.data.dir /opt/soft/hadoop/hadoop-3.0.0/datanode-data
3.4 修改 etc/hadoop/mapred-site.xml 文件
修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/mapred-site.xml 文件。内容如下所示。
mapreduce.framework.name yarn mapreduce.map.memory.mb 1536 mapreduce.map.java.opts -Xmx1024M mapreduce.reduce.memory.mb 3072 mapreduce.reduce.java.opts -Xmx2560M mapreduce.task.io.sort.mb 512 mapreduce.task.io.sort.factor 100 mapreduce.reduce.shuffle.parallelcopies 50 mapreduce.jobhistory.address hadoop102:10020 mapreduce.jobhistory.webapp.address hadoop102:19888 mapreduce.jobhistory.intermediate-done-dir /opt/soft/hadoop/hadoop-3.0.0/mr-history/tmp mapreduce.jobhistory.done-dir /opt/soft/hadoop/hadoop-3.0.0/mr-history/done
3.5 修改 etc/hadoop/yarn-site.xml 文件
修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/yarn-site.xml 文件。内容如下所示。
yarn.acl.enable false yarn.log-aggregation-enable true yarn.log.server.url http://hadoop103:19888/jobhistory/logs yarn.log-aggregation.retain-seconds 604800 yarn.resourcemanager.hostname hadoop103 yarn.resourcemanager.scheduler.class org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler yarn.nodemanager.aux-services mapreduce_shuffle yarn.nodemanager.env-whitelist JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME
3.6 修改 etc/hadoop/workers 文件
修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/workers 文件。内容如下所示。
hadoop101hadoop102hadoop103
3.7 同步配置
把上面设置的配置文件同步到hadoop102和hadoop103节点。
scp -r /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop hadoop102:/opt/soft/hadoop/hadoop-3.0.0/etcscp -r /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop hadoop103:/opt/soft/hadoop/hadoop-3.0.0/etc
4. 格式化文件系统
hadoop101节点执行。
hdfs namenode -format
5. 启动hadoop
hadoop101节点启动hdfs。
cd /opt/soft/hadoop/hadoop-3.0.0/sbin./start-dfs.sh
hadoop103节点启动yarn。
cd /opt/soft/hadoop/hadoop-3.0.0/sbin./start-yarn.sh
6. 浏览器访问
浏览器访问地址 http://192.168.198.101:9870 即可进入 NameNode页面。如下图所示。
浏览器访问地址 http://192.168.198.102:9868 即可进入 SecondaryNameNode页面。如下图所示。
浏览器访问地址 http://192.168.198.103:8088 即可进入 yarn 页面。如下图所示。
四、hadoop集群命令
1. 启停命令
1.1 启停 hdfs
cd /opt/soft/hadoop/hadoop-3.0.0/sbin./start-dfs.sh./stop-dfs.sh
1.2 启停 yarn
cd /opt/soft/hadoop/hadoop-3.0.0/sbin./start-yarn.sh./stop-yarn.sh
总结
通过本文的指导,您已经学会了如何安装和配置Hadoop,并搭建了一个Hadoop伪集群。Hadoop是一个强大的工具,可以帮助您存储和处理大规模的数据。您可以进一步探索Hadoop的功能和特性,以满足您的数据处理需求。
希望本教程对您有所帮助!如有任何疑问或问题,请随时在评论区留言。感谢阅读!
参考链接:
- https://hadoop.apache.org/docs/r3.0.0/hadoop-project-dist/hadoop-common/ClusterSetup.html#Installation
- jdk版本:1.8+
上一篇:Django——模板
下一篇:服务器内网ip怎么设置的?