Centos7安装Hadoop3.3.1(单机版本)

news/2024/5/20 2:31:53 标签: hadoop, 大数据, hdfs

前提:需要安装好JDK,需要配置ssh免密(可参考问题2的设置)

1、下载Hadoop

打开Hadoop下载地址,下载3.3.1版本

下载:wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz 

2、Hadoop安装

配置域名vin /etc/hosts

例如:10.1.1.196  hadoop001

重启系统(重启生效)

2.1、解压缩和移动到/usr/local目录

tar -zxvf hadoop-3.3.1.tar.gz

2.2、执行如下命令,在 /data 目录下创建hadoop数据存储的目录

mkdir -p /home/hadoop/hdfs/tmp /home/hadoop/hdfs/data /home/hadoop/hdfs/name

2.3、配置环境变量vim /etc/profile

export HADOOP_HOME=/home/hadoop/hadoop-3.3.1

export PATH=$PATH:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin

2.4、修改hadoophadoop-env.sh配置

修改${hadoop_home}/etc/hadoop/hadoop-env.sh文件,设置JAVA_HOME和HADOOP_HOME变量

设置为root用户

 

所有的用户配置:

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

2.5、配置core-site.xml

${hadoop_home}/etc/hadoop/core-site.xml

如下,两个位置分别为虚拟机主机名和上述步骤中创建的 tmp目录

<configuration>

<!-- 指定 NameNode 的地址 -->

<property>

<name>fs.defaultFS</name>

<value>hdfs://hadoop001:9000</value>

</property>

<!-- 指定 hadoop 数据的存储目录 -->

<property>

<name>hadoop.tmp.dir</name>

<value>/home/hadoop/hdfs/tmp</value>

</property>

<property>

<name>hadoop.proxyuser.root.hosts</name>

<value>*</value>

</property>

<property>

<name>hadoop.proxyuser.root.groups</name>

<value>*</value>

</property>

</configuration>

 

2.6、修改hdfs-site.xml

${hadoop_home}/etc/hadoop/hdfs-site.xml

<configuration>

<property>

<name>dfs.replication</name>  

<value>1</value>

<description>副本个数,配置默认是3,应小于datanode机器数量</description>

</property>  

<property>

<name>dfs.namenode.name.dir</name>  

<value>/home/hadoop/hdfs/name</value>  

<final>true</final>

</property>  

<property>

<name>dfs.datanode.data.dir</name>  

<value>/home/hadoop/hdfs/data</value>  

<final>true</final>

</property>  

<property>

<name>dfs.http.address</name>

<value>0.0.0.0:50070</value>

<description>将绑定IP改为0.0.0.0,而不是本地回环IP,这样,就能够实现外网访问本机的50070端口了</description>

</property>

<property>

<name>dfs.permissions</name>  

<value>false</value>

</property>

</configuration>

 2.7、修改:mapre-site.xml

${hadoop_home}/etc/hadoop/mapre-site.xml

<configuration>

        <property>

                <name>mapreduce.framework.name</name>

                <value>yarn</value>

        </property>

</configuration>

2.8、修改yarn-site.xml

${hadoop_home}/etc/hadoop/yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->

        <property>

                <name>yarn.nodemanager.aux-services</name>

                <value>mapreduce_shuffle</value>

        </property>

</configuration>

3、启动HDFS

首先执行如下命令格式化hdfs

$hdfs namenode -format

依次执行命令

$hadoop-daemon.sh start namenode

$hadoop-daemon.sh start datanode

$hadoop-daemon.sh start secondarynamenode

 

或者sbin目录下,执行./start-all.sh

查询端口:

 停止服务和启动服务:

sbin/stop-all.sh

Sbin/start-all.sh

4、访问

浏览器访问http://10.1.1.196:50070/ ,如下,表示单机版已经安装OK

 

 参考:https://blog.csdn.net/redrose2100/article/details/117922189

问题列表:

问题1:start-dfs.sh命令执行时,报错(需要配置ssh免密)

hadoop001: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

原因:hadoop001这台机器没有配置ssh免密登录

解决办法:

配置ssh免密登录:

1、先进入到~/.ssh/路径

cd ~/.ssh/

2、创建公钥/私钥

ssh-keygen -t rsa

按三下Enter键即可

3、复制公钥id到hadoop001

ssh-copy-id hadoop001

4、查看能否免密登录成功

ssh hadoop001

出现以下信息,免密登录

其他参考:start-all.sh或stop-all.sh命令执行时,报错

ERROR: Attempting to operate on yarn resourcemanager as root

ERROR: but there is no YARN_RESOURCEMANAGER_USER defined. Aborting operation.

 出现以上报错信息需要到 sbin 目录下 更改 start-yarn.sh 和 stop-yarn.sh 信息,在两个配置文件的第一行添加

YARN_RESOURCEMANAGER_USER=root

HADOOP_SECURE_DN_USER=yarn

YARN_NODEMANAGER_USER=root


http://www.niftyadmin.cn/n/195319.html

相关文章

算法的复杂度分析

简介 复杂度分析法是对已知的代码进行效率分析的方法&#xff0c;与之相对的是使用实际数据运行代码的事后统计法。 复杂度分析法和事后统计法各有优劣&#xff0c;与复杂度分析法进行比较&#xff0c;事后统计法会有以下局限性&#xff1a; 测试结果非常依赖测试环境。硬件…

类的相关知识(二)const

const修饰对象 class Role { public:int hp;void addhp(Role& r){hp100;}int& gethp() const{return hp;} } int main() {const Role hero;hero.hp199;Role NPC;NPC.gethp()200;const Role* ptr&NPC;ptr->hp100;sethp(Role& r) } const修饰的对象不能更改…

ChatGPT让现在的软件都土掉渣了

我们家有两个娃&#xff0c;每次我们想要出去时订个酒店时都好麻烦。我在某程上找&#xff0c;我先看有没有家庭房&#xff0c;但家庭房很少&#xff0c;而且有些家庭房实际上只能睡得下两大一小。普通房间能不能睡得下四个人&#xff0c;那可是得查看很多信息&#xff0c;如床…

软件工程-体系结构设计

体系结构设计 体系结构设计&#xff1a;关注理解一个软件系统应当如何组织&#xff0c;以及设计该系统的整体结构 问题&#xff1a;为什么敏捷开发不采用增量的方式设计体系结构 一个敏捷开发过程的早期阶段应该关注设计一个整体的系统体系结构体系结构的增量开发通常都不会…

C++ Builder XE如何多组件装入数组处理

TList * Mydatelist; ConvDate *DD; try { Mydatelist new TList; //装入组件进入列表 Mydatelist->Add(RzURLLabel1); Mydatelist->Add(RzURLLabel2); Mydatelist->Add(RzURLLabel3); Mydatelist->Add(RzURLLabel4); Mydatelist->Add(RzU…

腾讯云轻量2核4G5M服务器三年入坑指南!

腾讯云2核4G5M轻量应用服务器活动上线了&#xff0c;这款轻量服务器5M公网带宽&#xff0c;每月500G免费流量&#xff0c;系统盘为60GB SSD盘&#xff0c;这款轻量服务器2023年4月报价出炉&#xff0c;一年168元、三年628元&#xff0c;如果选择免费赠送3个月是198元15个月&…

entos7系统部署网站项目教程【超详细教程】

CentOS 7 系统部署项目教程 本文将介绍如何在 CentOS 7 系统上部署项目。在本教程中&#xff0c;我们将使用 Apache、PHP 和 MySQL 作为我们的主要开发工具。对于初学者来说&#xff0c;这是一个入门级的教程&#xff0c;旨在提供一些基本的概念和工具&#xff0c;以帮助您更好…

多种方法解决VS在创建多个源文件后运行时出现的重定义错误:main已经在1.obj中定义

名人说&#xff1a;博学之&#xff0c;审问之&#xff0c;慎思之&#xff0c;明辨之&#xff0c;笃行之。——《中庸》 创作者&#xff1a;Code_流苏(CSDN) 本篇文章收录于&#xff1a;各类问题记录专栏 记录一、原因经过二、解决方法1️⃣方法一 注释2️⃣方法二 生成排除3️⃣…