Hadoop Single Node Cluster的安装

news2024/11/25 21:42:14

Hadoop Single Node Cluster的安装

  • 安装JDK
    • 查看java -version
    • 更新本地软件包
    • 安装JDK
    • 查看java安装位置
  • 设置SSH无密码登录
  • 安装hadoop
    • 下载
    • 安装
    • 设置hadoop环境变量
    • 修改hadoop配置设置文件
    • 设置core-site.xml
    • 设置YARN-site.xml
    • 设置mapred-site.xml
    • 设置HDFS分布式文件系统
      • 创建并格式化HDFS目录
  • 启动hadoop
    • 打开hadoop resource-manager web页面

安装JDK

hadoop是基于java开发的,所以要先安装java环境

查看java -version

打开terminal执行命令java -version,如果显示如下图所示,说明没有安装java。

在这里插入图片描述

更新本地软件包

要安装Java 先更新一下本地软件包,使用如下命令:

sudo apt update

在这里插入图片描述

安装JDK

执行以下命令安装 OpenJDK:

sudo apt install default-jre

安装完成后,验证一下安装 JDK 的版本:

java -version

在这里插入图片描述

sudo apt-get install default-jdk

在这里插入图片描述

查看java安装位置

update-alternatives --display java

在这里插入图片描述

其中/usr/lib/jvm/java-11-openjdk-amd64/bin/java就是java的路径

设置SSH无密码登录

Hadoop是有很多台服务器组成的,当我们启动hadoop系统时,namenode必须与datanode连接并管理这些节点(datanode)。此时系统会要求用户输入密码。为了让系统顺利运行而不手动输入密码,需要将SSH设置成无密码登录。注意,无密码登录并非不需要密码,而是事先交换SSH Key(密钥)来进行身份认证。
在这里插入图片描述

安装ssh

sudo apt-get install ssh

安装rsync

sudo apt-get install rsync

产生ssh key(密钥)进行后续身份验证

ssh-keygen -t dsa -P '' -f  ~/.ssh/id_dsa

在这里插入图片描述

查看产生的SSH Key(密钥)

ll ~/.ssh

在这里插入图片描述

其中id_dsa和id_dsa.pub为产生的密钥文件

将产生的公钥加入许可证文件

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

重定向符号“>>”会将命令运行产生后的标准输出(stdout)重定向附加在该文件之后,当上述命令运行后,会将/.ssh/id_dsa.pub附加到/.ssh/authorized_keys许可证文件之后。

安装hadoop

下载

来到下载页面
https://archive.apache.org/dist/hadoop/common/hadoop-2.6.4/

在这里插入图片描述

选中hadoop-2.6.4.tar.gz

右键,选复制链接

在这里插入图片描述

复制后的链接如下:

https://archive.apache.org/dist/hadoop/common/hadoop-2.6.4/hadoop-2.6.4.tar.gz

使用wget执行下载命令

wget https://archive.apache.org/dist/hadoop/common/hadoop-2.6.4/hadoop-2.6.4.tar.gz

其实更好的方法是直接下载下来然后传到虚拟机上

安装

解压压缩包

sudo tar -zxvf hadoop-2.6.4.tar.gz

移动文件夹

将解压出的文件夹移动到 /usr/local/hadoop目录

sudo mv hadoop-2.6.4 /usr/local/hadoop

查看hadoop安装目录

ll /usr/local/hadoop 

在这里插入图片描述

常用目录说明

目录说明
bin/各项运行文件,包括hadoop、hdfs、yarn等
sbin/各项shell运行文件,包括start-all.sh、stop-all.sh
etc/etc/hadoop子目录包括hadoop配置文件,例如hadoop-env.sh、core-site.xml、yarn-site.xml、mapred-site.xml、hdfs-site.xml
lib/hadoop函数库
logs/系统日志,可以查看系统运行情况,运行有问题时可以从日志找出错误原因

设置hadoop环境变量

编辑 ~/.bashrc

sudo gedit ~/.bashrc

打开结果如下

在这里插入图片描述

在后边加入输入以下内容然后保存

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH    

其含义为

设置JDK安装路径(需要读者根据自己安装的java版本自行调整)

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

Hadoop的安装路径

export HADOOP_HOME=/usr/local/hadoop

设置PATH

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

设置HADOOP其他环境变量

export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME

链接库相关设置

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH    

使得~/.bashrc设置生效

source ~/.bashrc 

修改hadoop配置设置文件

sudo gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh 

打开如下

在这里插入图片描述

原本文件中的JAVA_HOME的设置为

export JAVA_HOME=${JAVA_HOME}

修改为

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

保存并关闭

设置core-site.xml

sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml

打开后如下

在这里插入图片描述

添加以下配置

<configuration>
<property>
	<name>fs.default.name</name>
	<value>hdfs://localhost:9000</value>
</property>
</configuration>

修改后结果如下

在这里插入图片描述

设置YARN-site.xml

输入以下命令

sudo gedit /usr/local/hadoop/etc/hadoop/yarn-site.xml

在这里插入图片描述

输入以下配置

<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
</property>
<property>
	<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
	<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>

添加结果如下

在这里插入图片描述

设置mapred-site.xml

Mapred-site.xml用于设置监控Map与Reduce程序的JobTracker任务分配情况以及TaskTraker任务的运行情况。Hadoop提供了设置的模板文件,可以自行复制修改

sudo cp /usr/local/hadoop/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/etc/hadoop/mapred-site.xml 

编辑mapred-site.xml

sudo gedit /usr/local/hadoop/etc/hadoop/mapred-site.xml

打开后的结果如下:

在这里插入图片描述

添加以下配置

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

添加后的结果如下:

在这里插入图片描述

设置HDFS分布式文件系统

打开hdfs-site.xml

sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml

插入以下内容

<property>
	<name>dfs.replication</name>
	<value>3</value>
</property>
<property>
	<name>dfs.namenode.name.dir</name>
	<value>file:/usr/local/hadoop/hadoop_data/hdfs/namenode</value>
</property>
<property>
	<name>dfs.datanode.data.dir</name>
	<value>file:/usr/local/hadoop/hadoop_data/hdfs/datanode</value>
</property>

默认的blocks副本备份数量是每一个文件在其他node的备份数量,默认值为3。编辑完成后,先保存,再关闭gedit。

创建并格式化HDFS目录

创建namenode数据存储目录

sudo mkdir -p /usr/local/hadoop/hadoop_data/hdfs/namenode

创建datanode数据存储目录

sudo mkdir -p /usr/local/hadoop/hadoop_data/hdfs/datanode

将hadoop目录的所有者更换为当前用户名
我这里用户名是aixing,大家可以自行更换

sudo chown aixing:aixing -R /usr/local/hadoop

格式化HDFS

如果HDFS已有数据,执行会删除掉所有数据

hadoop namenode -format

在这里插入图片描述

启动hadoop

启动HDFS

start-dfs.sh

启动hadoop mapreduce 框架yarn

start-yarn.sh

同时启动HDFS、yarn

start-all.sh

查看namenode、datanode进程是否启动
在这里插入图片描述

其中ResourceManager和NodeManager是Yarn相关进程,NameNode、SecondNameNode、DataNode是HDFS相关进程

打开hadoop resource-manager web页面

打开Hadoop ResourceManager web
点开浏览器,访问链接:http://localhost:8088/
打开后页面如下:

在这里插入图片描述

点击Nodes就会显示当前所有节点,不过我们安装的是single Node Cluster,所有只有一个节点
在这里插入图片描述

Namenode HDFS Web 界面

打开浏览器访问:http://localhost:50070/
查看Live Nodes,可以看到启动了1个节点

在这里插入图片描述

查看DataNode

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1321127.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[ CTF ]【天格】战队WriteUp-第七届“强网杯”全国安全挑战赛

第七届“强网杯”全国安全挑战赛 2023.12.16~2023.12.17 文章目录 【Misc】Pyjail ! Its myFILTER !!!easyfuzz谍影重重2.0签到Pyjail ! Its myRevenge !!!server_8F6C72124774022B.py 问卷调查 【Reverse】ezre 【Web】happygame 【强网先锋】石头剪刀布TrieSpeedUpezreez_fmt…

翻译: LLMs新的工作流程和新的机会 New workflows and new opportunities

生成人工智能正以多种方式引领着不仅仅是成本节约&#xff0c;更是收入增长。但是&#xff0c;就像生成人工智能这样的通用技术创造价值的方式有很多&#xff0c;谈论这些方式是很多的。但在这个视频中&#xff0c;我想看看一些我看到的新兴的&#xff0c;或者更常见的走向这种…

Java 8 中的 Stream:优雅的集合处理

Java 8 中的 Stream&#xff1a;优雅的集合处理 为什么需要 Stream&#xff1f;Stream 的特性Stream 基本操作1. 创建 Stream2. 中间操作2.1 过滤&#xff08;Filter&#xff09;2.2 映射&#xff08;Map&#xff09;2.3 截断&#xff08;Limit&#xff09; 3. 终端操作3.1 遍历…

STM32内部是怎么工作的

STM32是怎么工作的 1 从孩子他妈说起2 早期计算机的组成2.1 五大元件&#xff08;1&#xff09;第一个出场的是电容元件&#xff08;2&#xff09;第二个出场的是二极管&#xff08;3&#xff09;第三个出场的是电阻元件&#xff08;4&#xff09;第四个出场的是电感&#xff0…

其他配置相关安装

consul安装和配置 docker run -d -p 8500:8500 -p 8300:8300 -p 8301:8301 -p 8302:8302 -p 8600:8600/udp consul consul agent -dev -client0.0.0.0访问&#xff1a;http://192.168.0.102:8500/ DNS查询 dig 192.168.0.102 -p 8600 consul.service.consul SRVnacos安装 ht…

华为OS与麒麟OS:华为自研操作系统的对决

导言 在移动操作系统领域&#xff0c;华为OS和麒麟OS代表了华为在自主研发方面的努力。本文将深入探讨这两个操作系统的特点、竞争关系以及它们在用户体验、生态系统建设等方面的差异。 1. 背景与起源 华为OS的诞生&#xff1a; 华为OS是华为公司为应对外部环境而自主…

12.18_黑马数据结构与算法笔记Java

目录 thinking:orElse? thinking:map.computerifabsent? thinking&#xff1a;subString&#xff1f; 184 哈希表 问2 解释拆分 185 哈希算法 概述 186 哈希算法 Object.hashCode 187 哈希算法 String.hashCode 188 哈希算法 冲突测试 189 哈希算法 MurmurHash 190…

Linux操作系统:自由、稳定、强大的开源之光

导言 Linux操作系统作为一个开源的、多用户、多任务、支持多线程和多CPU的UNIX类操作系统&#xff0c;不仅在服务器领域占有显著份额&#xff0c;也逐渐在桌面和嵌入式系统中崭露头角。Linux操作系统的多样性体现在各种不同的发行版上&#xff0c;而Ubuntu、CentOS和Red Hat可以…

用Python编辑PDF文件:拆分合并、加密解密、页面编辑

文章目录 安装和初步使用合并与拆分页面编辑加密解密 安装和初步使用 PyPDF2支持拆分、合并、页面旋转、添加水印、加密解密等操作。支持pip安装&#xff0c;过程很丝滑。 pip install PyPDF2PyPDF2提供了PdfFileReader类&#xff0c;可用于读取PDF文件&#xff0c;其metadat…

用户行为分析遇到的问题-ubantu16,hadoop3.1.3

用户行为分析传送门 我的版本 ubantu16 hadoop 3.1.3 habse 2.2.2 hive3.1.3 zookeeper3.8.3 sqoop 1.46/1.47 我sqoop把MySQL数据往hbase导数据时候有问题 重磅&#xff1a;大数据课程实验案例&#xff1a;网站用户行为分析&#xff08;免费共享&#xff09; 用户行为分析-小…

使用ffmpeg将图片合成为mp4

首先在在图片文件夹输入cmd 这里确保已经安装ffmpeg并配置好环境变量。 然后这是我的文件夹目录&#xff1a; 将21张图片合成为mp4视频 这里使用如下命令&#xff1a; ffmpeg -framerate 1 -start_number 0 -i %d.png -c:v libx264 -pix_fmt yuv420p output.mp4 -framerat…

rabbitmq-常见七种消息队列-控制台界面管理-python-实现简单访问

文章目录 1.消息的基本概念1.1.生产者和消费者1.2.消息队列(Queue)1.3.交换机(Exchange)1.4.消息确认 2.七种队列模式2.1.简单模式(Hello World)2.2.工作队列模式(Work queues)2.3.发布订阅模式(Publish/Subscribe)2.4.路由模式(Routing)2.5.主题模式(Topics)2.6.远程过程调用(…

windows下wsl(ubuntu)ldconfig报错

错误 sudo ldconfig /sbin/ldconfig.real: Cant link /usr/lib/wsl/lib/libnvoptix_loader.so.1 to libnvoptix.so.1 /sbin/ldconfig.real: /usr/lib/wsl/lib/libcuda.so.1 is not a symbolic link解决&#xff1a; 处理 sudo ldconfig 报错 libcuda.so.1 is not a symbolic …

GZ015 机器人系统集成应用技术样题8-学生赛

2023年全国职业院校技能大赛 高职组“机器人系统集成应用技术”赛项 竞赛任务书&#xff08;学生赛&#xff09; 样题8 选手须知&#xff1a; 本任务书共 25页&#xff0c;如出现任务书缺页、字迹不清等问题&#xff0c;请及时向裁判示意&#xff0c;并进行任务书的更换。参赛队…

RPC(3):HttpClient实现RPC之GET请求

1HttpClient简介 在JDK中java.net包下提供了用户HTTP访问的基本功能&#xff0c;但是它缺少灵活性或许多应用所需要的功能。 HttpClient起初是Apache Jakarta Common 的子项目。用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包&#xff0c;并且它支持 H…

3.2 内容管理模块 - 课程分类、新增课程、修改课程

内容管理模块-课程分类、新增课程、修改课程 文章目录 内容管理模块-课程分类、新增课程、修改课程一、课程分类1.1 课程分类表1.2 查询树形结构1.2.1 表自连接1.2.2 SQL递归 1.3 Mapper1.4 Service1.5 Controller1.6 效果图 二、添加课程2.1 需求分析2.2 数据表2.2.1 课程基础…

【linux】SSH终端Putty配置:文件上传/下载、显示中文字体、自动登录

文章目录 写在前面putty上传/下载文件1. 下载2. 解压和配置3. 使用sz/rz3.1 下载文件:sz3.2 上传文件:rz 显示中文字体1. 下载合适的字体2. 解压和安装3. putty配置 putty自动登录1. putty配置2. putty快捷方式配置3. 使用putty 写在后面 写在前面 一篇博客介绍了12种SSH终端工…

福德植保无人机工厂:创新科技与绿色农业的完美结合

亲爱的读者们&#xff0c;欢迎来到福德植保无人机工厂的世界。这里&#xff0c;科技与农业的完美结合为我们描绘出一幅未来农业的新篇章。福德植保无人机工厂作为行业的领军者&#xff0c;以其领先的无人机技术&#xff0c;创新的理念&#xff0c;为我们展示了一种全新的农业服…

C++共享和保护——(4)保护共享数据

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 一滴汗珠万粒粮&#xff0c;万粒汗珠谷…

Scala多线程爬虫程序的数据可视化与分析实践

一、Scala简介 Scala是一种多种类型的编程语言&#xff0c;结合了针对对象编程和函数式编程的功能。它运行在Java虚拟机上&#xff0c;具有强大的运算能力和丰富的库支持。Scala常用于大数据处理、并发编程和Web应用程序开发。其灵活性和高效性编程成为编写多线程爬虫程序的理…