CentOS 8 安装配置 Hadoop3.3.6 伪分布式安装方式(适用于开发和调试)

1.配置服务器ssh免密登录,否则后面启动会报错:尝试通过SSH连接到主机出现认证错误的提示

    

 配置服务器ssh免密登录: 

 1.生成SSH密钥对(如果尚未生成):

   执行下面的命令生成密钥对,一直回车即可

ssh-keygen -t rsa

   出现下面的提示说明生成成功了:

2.第二步,将公钥添加到~/.ssh/authorized_keys文件:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

添加成功后我们查看 ~/.ssh/authorized_keys 文件中是否有密钥对


3.使用命令重启ssh服务

sudo systemctl restart sshd

4.使用ssh localhost测试是否可以直接连接到本机

ssh localhost

如果出现是否继续连接的提示输入 yes 回车即可,再次验证则直接登录,出现下面的图示则说明配置成功
 

2.关闭防火墙

#查看防火墙状态

systemctl status firewalld 

#关闭防火墙

systemctl stop firewalld


#设置开机禁用防火墙

systemctl disable firewalld.service

3.安装JDK(jdk8以上,我这里用的1.8最新的)

jdk下载地址:Java Downloads | Oracle

网盘链接:百度网盘百度网盘为您提供文件的网络备份、同步和分享服务。空间大、速度快、安全稳固,支持教育网加速,支持手机端。注册使用百度网盘即可享受免费存储空间icon-default.png?t=N7T8https://pan.baidu.com/s/1fB5ib4GPz_0JSO3ncvVI4Q    提取码: besp 

安装步骤不再赘述,请参考:Centos 配置 Java JDK开发环境_centos wget 安装 jdk-8u333-CSDN博客

4.安装Hadoop 3.3.6 伪分布式安装方式

 1.hadoop下载地址: https://archive.apache.org/dist/hadoop/common/ 

最新版的就是3.3.6版本

 
 

2.把jdk和Hadoop安装包都上传到服务器 /opt 目录下


 

解压:

tar -zxvf jdk-8u401-linux-x64.tar.gz
tar -zxvf hadoop-3.3.6.tar.gz

环境变量配置:在 /etc/profile 文件中加入以下环境变量:vim /etc/profile

export JAVA_HOME=/opt/jdk1.8.0_401
export PATH=$PATH:$JAVA_HOME/bin

export HADOOP_HOME=/opt/hadoop-3.3.6
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

如图所示:

执行命令使配置生效:

source /etc/profile

检验配置:java -version 以及 hadoop version 命令查看

修改 Hadoop 配置文件:

编辑 Hadoop 配置文件,主要是core-site.xmlhdfs-site.xml,和 mapred-site.xml

进入到hadoop目录配置下:以下的操作都是在该目录下进行

cd /opt/hadoop-3.3.6/etc/hadoop

编辑 core-site.xml:下面是我虚拟机的ip地址

  • fs.defaultFS: 指定HDFS的默认文件系统URI


    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.40.132:9000</value>
    </property>

编辑 hdfs-site.xml:下面的 /opt/hadoop-3.3.6/data/dfs/datanode 文件夹需自行创建

  • dfs.replication: 指定数据块的副本数量。
  • dfs.namenode.name.dir: 指定NameNode存储文件的本地目录。
  • dfs.datanode.data.dir: 指定DataNode存储数据块的本地目录。

    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/opt/hadoop-3.3.6/data/dfs/namenode</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/opt/hadoop-3.3.6/data/dfs/datanode</value>
    </property>

编辑 mapred-site.xml


    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

配置 Hadoop 环境:

vim hadoop-env.sh

export HDFS_SECONDARYNAMENODE_USER="root"
export HDFS_NAMENODE_USER="root"
export HDFS_DATANODE_USER="root"
export YARN_RESOURCEMANAGER_USER="root"
export YARN_NODEMANAGER_USER="root"
export JAVA_HOME=/opt/jdk1.8.0_401
export HADOOP_HOME=/opt/hadoop-3.3.6

在Hadoop环境中,需要为各个角色(例如NameNode、DataNode等)指定相关的用户。如果不配置上面的各个角色,则启动会报下面的错误:

启动 Hadoop: 

格式化 HDFS 文件系统: 

hdfs namenode -format

出现下面的提示则说明格式化成功了

​​​​​​

启动 Hadoop 伪集群:

start-dfs.sh
start-yarn.sh

#重启 hadoop (先停止服务,再启动)

#直接在 /opt/hadoop-3.3.6/etc/hadoop 目录下执行  (自己的安装目录)

stop-dfs.sh

stop-yarn.sh

start-dfs.sh

start-yarn.sh

验证安装:

在浏览器中访问 Hadoop ResourceManager 界面:

http://ip:8088

或者访问Hadoop DFS界面:

http://ip:9870

你还可以使用以下命令查看Hadoop集群的状态:

jps

这应该显示一些Hadoop进程,包括NameNodeDataNodeResourceManager等。

现在,你的Hadoop伪集群应该已经启动并运行了。请注意,这只是一个基本的配置,具体的配置和调整可能会根据你的需求有所不同。

相关推荐

  1. Hadoop 分布式安装

    2024-02-06 09:36:03       38 阅读
  2. Hadoop分布式集群安装

    2024-02-06 09:36:03       59 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-06 09:36:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-06 09:36:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-06 09:36:03       82 阅读
  4. Python语言-面向对象

    2024-02-06 09:36:03       91 阅读

热门阅读

  1. 网易腾讯面试题精选----50 个 Git 面试问题

    2024-02-06 09:36:03       51 阅读
  2. Linux命令-arpwatch命令(监听网络上ARP的记录)

    2024-02-06 09:36:03       52 阅读
  3. CVE-2024-0352:Likeshop任意文件上传漏洞复现 [附POC]

    2024-02-06 09:36:03       49 阅读
  4. StarRocks 1 月社区动态(2024)

    2024-02-06 09:36:03       66 阅读
  5. 2024.1.27力扣每日一题——最大合金数

    2024-02-06 09:36:03       48 阅读
  6. uniapp的api用法大全

    2024-02-06 09:36:03       44 阅读
  7. SpringBoot全局异常处理,返回http状态码500 或 json

    2024-02-06 09:36:03       48 阅读
  8. 服务器与电脑的区别

    2024-02-06 09:36:03       52 阅读
  9. 了解MySQL 开发规范

    2024-02-06 09:36:03       52 阅读
  10. 行为型设计模式—中介者模式

    2024-02-06 09:36:03       57 阅读