000002 - Hadoop环境安装

news2024/11/24 7:59:30

Hadoop及其大数据生态圈

  • 1. 背景
  • 2. 实践
    • 2.1 Linux服务器准备
    • 2.2 在其中一台服务器上安装JDK
    • 2.3 在其中一台服务器上安装HADOOP
    • 2.4 本地模式运行一个hadoop案例
  • 3. 自动化部署

1. 背景

要搭建Hadoop集群环境,我们需要执行如下

  1. 准备三台Linux服务器,服务器之间相互配置免密ssh登陆
  2. 在其中一台服务器上安装JDK
  3. 在其中一台服务器上安装HADOOP
  4. 本地运行模式-在一台服务器上运行HADOOP
  5. 将JDK和HADOOP分发给其他2台服务器
  6. 集群模式运行HADOOP

2. 实践

2.1 Linux服务器准备

我使用AWS创建三台服务器,并且将对服务器的创建过程以及服务器的配置全部用代码和脚本实现,参考这里.

2.2 在其中一台服务器上安装JDK

  1. 将jdk-8u212-linux-x64.tar.gz拷贝到node1的/home/ec2-user/softwar目录。命令如下
# 需要先创建目录
scp -i "hadoop-instances-stack-key-pair.pem" jdk-8u212-linux-x64.tar.gz ec2-user@{node1_public_ip}:/home/ec2-user/software_package/
  1. ssh至node1服务器
ssh -i "hadoop-instances-stack-key-pair.pem" ec2-user@{node1_public_ip}
  1. 安装JDK
    在node服务器上运行如下命令,解压JDK安装包
cd /home/ec2-user/software_package
tar -zxvf jdk-8u212-linux-x64.tar.gz -C /home/ec2-user/software_installation/
  1. 配置JDK环境变量
    在node1上执行下方命令创建自定义env文件,这个文件会被/etc//profile加载
sudo vim /etc/profile.d/hadoop-learning-env.sh

输入如下内容后保存

#JAVVA_HOME
export JAVA_HOME=/home/ec2-user/software_installation/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin

再输入如下命令重新加载环境变量

source /etc/profile

至此,JDK在node1节点安装成功

2.3 在其中一台服务器上安装HADOOP

  1. 将hadoop-3.1.3.tar.gz拷贝到node1的/home/ec2-user/softwar目录。命令如下
scp -i "hadoop-instances-stack-key-pair.pem" hadoop-3.1.3.tar.gz ec2-user@{node1_public_ip}:/home/ec2-user/software_package/
  1. ssh至node1服务器
ssh -i "hadoop-instances-stack-key-pair.pem" ec2-user@{node1_public_ip}
  1. 解压HADOOP安装包
    在node服务器上运行如下命令,解压JDK安装包
cd /home/ec2-user/software_package
tar -zxvf hadoop-3.1.3.tar.gz -C /home/ec2-user/software_installation/
  1. 配置HADOOP环境变量
    在node1上执行下方命令修改自定义env文件,这个文件会被/etc//profile加载
sudo vim /etc/profile.d/hadoop-learning-env.sh

新增如下内容后保存

#HADOOP_HOME
export HADOOP_HOME=/home/ec2-user/software_installation/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

再输入如下命令重新加载环境变量

source /etc/profile

至此,HADOOP在node1节点安装成功

2.4 本地模式运行一个hadoop案例

  1. ssh至node1服务器
ssh -i "hadoop-instances-stack-key-pair.pem" ec2-user@{node1_public_ip}
mkdir /home/ec2-user/workspace/wordcount
cd /home/ec2-user/workspace/wordcount
  1. 在wordcount目录下创建wordcount_input目录和wordcount_output目录
mkdir /home/ec2-user/workspace/wordcount/wordcount_input
  1. 在wordcount_input目录下放一个文本文件,其中包含一些单词,用空格隔开,下面是一个例子
apple banana bicycle
china apple cup bicycle
bicycle pinapple
  1. 执行下面命令,用hadoop本地运行模式统计文本中每个单词出现的次数
hadoop jar /home/ec2-user/software_installation/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /home/ec2-user/workspace/wordcount/wordcount_input/ /home/ec2-user/workspace/wordcount/wordcount_output
  1. 执行完成后,hadoop会创建一个目录/home/ec2-user/workspace/wordcount/wordcount_output,且统计结果就在这个目录下,如下图所示
    在这里插入图片描述

3. 自动化部署

在服务器创建成功后,我们还需要很多步骤来将JDK和HADOOP安装包上传解压至三台服务器,且需要对三台服务器进行环境变量的配置,着无疑是一个繁琐的步骤,因此我们可以将这写步骤使用脚本来实现。

参考这里

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

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

相关文章

【Linux驱动】【手把手配置3568寄存器】点亮RK3568的一颗LED

【硬件】 3568的LED9 :引脚 GPIO0 B7 【配置GPIO的复用】 找配置复用关系的寄存器基地址、偏移地址、对应配置的GPIO。 查找:io -r -4 0xfdc2000c 系统设置的默认值 结果为1,意思是只有bit 0是1,其他全都为0。所以系统默认就是…

【面试干货】 非关系型数据库(NoSQL)与 关系型数据库(RDBMS)的比较

【面试干货】 非关系型数据库(NoSQL)与 关系型数据库(RDBMS)的比较 一、引言二、非关系型数据库(NoSQL)2.1 优势 三、关系型数据库(RDBMS)3.1 优势 四、结论 💖The Begin…

论文合集整理推荐2024.6.4

论文合集整理推荐2024.6.4 原创 小王搬运工 时序课堂 2024-06-04 20:12 四川 ‍2012年论文合集:论文入口 ‍2019年论文合集:论文入口 2021年论文合集:论文入口 2022年论文合集:论文入口 2023年论文合集:论文入口…

数据结构---力扣 20.有效的括号 (C语言

1.链接: . - 力扣(LeetCode)【点击即可跳转】 思路: 使用 栈 来完成操作 1.左括号-- 入栈 2.右括号-- 判断出栈顶的左括号与右括号是否匹配 如果匹配-->继续 不匹配-->终止 代码中 栈 的基本实现,不在以下展示&…

两站图片滑动对比效果实现(VUE3)

像这种图片滑动对比的效果,网上还不少见吧,但是网上却不好找到完整现成的实现代码,我找到几个地方有类似的代码,但是都不好直接移植到代码里,因为很多都是使用原生htmlcssjs实现,太复杂了。反而不好应用到v…

【Python Cookbook】S02E04 文本模式的匹配和查找 match()、search()、findall() 以及 捕获组和 + 的含义

目录 问题解决方案讨论 问题 本文讨论一些按照特定的文本模式进行的查找和匹配。 解决方案 如果想要匹配的只是简单文字,通常我们使用一些内置的基本字符串方法即可,如:str.find(),str.startwith(),str.endswith() …

MySQL数据库数据恢复方案应对没有where误操作导致的大量数据更新或删除

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Mi…

二分答案-acwing-102. 最佳牛围栏

题目传送门:t​​​102. 最佳牛围栏 - AcWing题库高质量的算法题库https://www.acwing.com/problem/content/104/ 解题思路 整体解析 按照题目要求我们要找到一块连续的区域,使其里面每块地里面的平均值最大,且这块区域的长度要大于f 二分处理…

STM32——ADC篇(ADC的使用)

一、ADC的介绍 1.1什么是ADC ADC(Analogto-Digital Converter)模拟数字转换器,是将模拟信号转换成数字信号的一种外设。比如某一个电阻两端的是一个模拟信号,单片机无法直接采集,此时需要ADC先将短租两端的电…

免费获取云服务器

这几天刚入手了阿贝云的 “免费云服务器 ” ,接下来给大家讲讲如何免费注册阿贝云的免费云服务器 如何获取免费云服务器 打开阿贝云官网,注册并认证 即可以领取免费云服务器 阿贝云地址:https://www.abeiyun.com/ 服务器优势 永久免费&…

单点登录(SSO)前端怎么做

单点登录(SSO)前端怎么做 本文介绍单点登录(SSO)是什么,还有就是前端怎么做。 单点登录(SSO)是什么 单点登录(SSO,Single Sign On),是在企业内部…

【Java笔记】第9章:三个修饰符

前言1. abstract(抽象的)2. static(静态的)3. final(最终的)结语 上期回顾:【Java笔记】第8章:面向对象的三大特性(封装、继承、多态) 个人主页:C_GUIQU 归属…

瑞鑫RK3588 画中画 OSD 效果展示

这些功能本来在1126平台都实现过 但是迁移到3588平台之后 发现 API接口变化较大 主要开始的时候会比较费时间 需要找到变动接口对应的新接口 之后 就比较好操作了 经过几天的操作 已实现 效果如下

项目工具|git相关

本博客暂时只作为个人资料,后续会进行完善,主要内容来自: 【【Git第一讲】:git分区与两个盒子的故事】 理解暂存区和未暂存区 git为什么要多一个暂存区?难道不能我把代码写完后就是未暂存区,然后直接提交…

ROS2从入门到精通4-3:全局路径规划插件开发案例(以A*算法为例)

目录 0 专栏介绍1 路径规划插件的意义2 全局规划插件编写模板2.1 构造规划插件类2.2 注册并导出插件2.3 编译与使用插件 3 全局规划插件开发案例(A*算法)常见问题 0 专栏介绍 本专栏旨在通过对ROS2的系统学习,掌握ROS2底层基本分布式原理,并具有机器人建…

docker bash: vi: command not found 修改文件无法使用 vi yum的方法

如题,被入坑很多次。也参考了很多的修复docker 中的vi yum等方法。最终都未解决。 因为要修改 已安装容器中的各类配置信息。无法使用vi yum很麻烦。除去使用docker 挂载文件方法外,还可以使用如下方法直接修改对应的配置文件信息。 如: 修改 logstas…

通过抑制治疗上调的环氧化酶-2来改善光动力性能的肿瘤归巢嵌合肽菱形体

引用信息 文 章:Tumor Homing Chimeric Peptide Rhomboids to Improve Photodynamic Performance by Inhibiting Therapy‐Upregulated Cyclooxygenase-2. 期 刊:Smal(影响因子:13.3) 发表时间&#xff1a…

赢单有秘诀,大模型智能陪练更懂你

随着数字化技术在营销场景的加速应用,产品营销节奏不断加快,消费者需求日益多元化、个性化,市场竞争日趋激烈。面对复杂多变的市场环境,企业新产品、新服务的推出速度大幅提升,产品知识更新愈加频繁,传统的…

神经网络 torch.nn---优化器的使用

torch.optim - PyTorch中文文档 (pytorch-cn.readthedocs.io) torch.optim — PyTorch 2.3 documentation 反向传播可以求出神经网路中每个需要调节参数的梯度(grad),优化器可以根据梯度进行调整,达到降低整体误差的作用。下面我们对优化器进行介绍。 …

通过龙讯旷腾PWmat发《The Journal of Chemical Physics》 :基于第一性原理分子动力学热力学积分的离子溶剂化自由能计算

背景导读 离子溶解是电化学中一个重要的过程。电化学反应中许多重要的参数,例如电化学还原电位、无限稀释活度系数、亨利定律溶解常数和离子溶解度等,都与离子的溶剂化能有关。然而,由于测量技术和数据处理的困难,离子溶剂化能的…