Hadoop3.x安装配置(单机)
1.下载并解压Hadoop
cd /opt/software //切换目录
//从网络下载一个文件并保存在当前目录
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
//解压
tar -zxvf hadoop-3.3.6.tar.gz -C /opt/module
-zxvf 输出解压的详细信息
-C 后面接解压的位置
//安装完成版本确定,改个名字,改不改都行
cd /opt/module
mv hadoop-3.3.6/ hadoop
2.设置环境变量
编辑你的.bashrc
或.bash_profile
文件,添加以下内容:
vi /etc/profile.d/my_env.sh //创建并修改文件
//#复制粘贴Java_HOME内容,在下方
source /etc/profile.d/my_env.sh //立即生效
#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
3.编辑5个配置文件
core-site.xml
,hdfs-site.xml
,mapred-site.xml
,yarn-site.xml
,workers
注意修改的文件,格式要检查,另存为utf-8格式,否则格式化namenode会报错
cd /opt/module/hadoop/etc/hadoop //4个文件位置
(0.hadoop-env.sh
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
#改成你自己的JAVA_HOME地址
export JAVA_HOME=/opt/module/jdk1.8.0_421
不配置的话会报错>
hadoop 试图使用root用户操作,但是在环境变量中没有配置使用的用户,所以终止了程序。
(1.核心配置文件
core-site.xml
<!-- 设置默认使用的文件系统 Hadoop支持file、HDFS、GFS、ali|Amazon云等文件系统 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.247.128:8020</value>
</property>
<!-- 设置Hadoop本地保存数据路径 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/root/data/hadoop</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>
(2.HDFS配置文件
hdfs-site.xml
<!-- 设置SecondNameNode进程运行机器位置信息 -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>192.168.247.128:9868</value>
</property>
(3.YARN配置文件
yarn-site.xml
<!-- 设置YARN集群主角色运行机器位置 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>192.168.247.128</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://192.168.247.128:19888/jobhistory/logs</value>
</property>
<!-- 历史日志保存的时间 7天 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
(4.MapReduce配置文件
mapred-site.xml
<!-- 设置MR程序默认运行模式: yarn集群模式 local本地模式 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- MR程序历史服务地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>192.168.247.128:10020</value>
</property>
<!-- MR程序历史服务器web端地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>192.168.247.128: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>
(5.workers配置文件
workers(里面不能有空行,空格)
192.168.247.128
5.格式化HDFS
(只第一次安装的时候初始化)
hdfs namenode -format
6.SSH免密登录
ssh-keygen -t rsa //执行此命令,连续点三下回车生成SSH密匙对
ssh-copy-id 192.168.247.128 //把密匙对分发给本机,让本机可以免密登录
不设置的话会报错>没有生成、配置公匙,分发给自己。
7.启动/检查/关闭hadoop
start-all.sh //启动Hadoop
jsp //检查Hadoop守护进程是否正常运行
stop-all.sh //关闭Hadoop
应该看到NameNode
,DataNode
,SecondaryNameNode
,ResourceManager
和NodeManager
进程。
8.网页查看
//停止防火墙:使用以下命令停止防火墙服务
sudo systemctl stop firewalld
//禁用防火墙自启动:如果你希望防火墙在系统重新启动时不会自动启动,你可以禁用它
sudo systemctl disable firewalld
//这样就可以关闭防火墙以允许Hadoop正常运行。请注意,关闭防火墙会降低系统的安全性,因此在生产环境中请慎重考虑。
linux不关闭防火墙,Windows网页访问不到
//查看hdfs
192.168.247.128:9870
//查看yarn
192.168.247.128:8088