当前位置: 首页 > news >正文

在ubuntu上安装hadoop完分布式

准备工作

Xshell安装包

Xftp7安装包

虚拟机安装包

Ubuntu镜像源文件

Hadoop包

Java包

一、安装虚拟机

创建ubuntu系统

完成之后会弹出一个新的窗口 

跑完之后会重启一下

按住首先用ctrl+alt+f3进入命令界面,输入root,密码登录管理员账号

按Esc

然后输入

:wq

冒号也要输入

然后找到语言文件

vi /etc/default/locale

最后一行加上以下语句后保存

LC_ALL=zh_CN.UTF-8
reboot

完成之后

在按ctrl+alt+f1进入图形界面

配置完成之后先关闭虚拟机

先配置网络结构

点击设置

之后点击网络

修改完网络配置之后在重启ubuntu

连接Xshell

说明:需要提前先安装好 Xshell 和 Xftp

输入之后,可能中间会中断一次,不要担心,按enter继续就可以了  

​编辑

将 jdk的包(Linux版)

Hadoop的镜像文件(Hadoop的包)

eclipse(linux版)

这几个包从winws转到虚拟机中

开始下一步操作

 设置 hostname(3 个虚拟机都设置)

hostname 设置计划

主节点:master

从节点 1:slave1

从节点 2:slave2

切换到 root 用户

su - //切换root用户

修改 hostname

vi /etc/hostname

删掉原有内容,写入:master

按ESC

输入 :wq  分号也要输入

重启后显示新的 hostname

 切换到hadoop用户

su hadoop

允许hadoop用户使用超级权限(superprivileges,也称root权限)

注意:默认情况下,不允许普通用户使用超级权限,如果以sudo

 作为开头输入指令,会出现如下提示,告知当前用户不在允许使用超级权限的文件内。

需要将当前用户添加到sudoers文件中。

切换到root用户

su -

编辑/etc/sudoers文件

vi /etc/sudoers

移动到文件底部,在rootALL=(ALL) ALL下添加:

                                [username]ALL=(ALL) ALL

添加后强制保存:wq! 退出。使用exit指令退出root用户(会返回到hadoop用户)

exit

 4. 关闭防火墙(3个虚拟机都设置)

查看防火墙运行状态,返回running表示防火墙正在运行中。

sudo ufw status

临时关闭防火墙(系统重启后防火墙又会自动启动)

sudo systemctl stop ufw.service

 需要禁止防火墙自动启动(永久关闭)

sudo systemctl disable ufw.service

查看防火墙运行状态,返回running表示防火墙正在运行中。

sudo ufw status

如果终端输出“Status: inactive”,则表示防火墙已成功关闭。

 

 (5)设置IP地址(3个虚拟机都设置)

注意:网段必须与VMnet8子网IP的网段保持一致,网段中xxx.xxx.xxx.1和xxx.xxx.xxx.2(网关(GATEWAY))这两个地址不能使用。例:本机的VMnet8网段为192.168.56.0,则192.168.56.1和192.168.56.2不能使用。可选的IP地址范围为:192.168.56.3-192.168.56.255。

IP地址分配计划

master 192.168.56.3

slave1 192.168.56.4

slave2 192.168.56.5

 有命令和窗口页面两种操作方式

窗口页面操作

点击设置(setting)

按照下面的图片内容填写

 查看IP地址

ip addr show

 6)设置每台主机hostname到IP的映射关系3个虚拟机都设置)

sudo vi /etc/hosts

 在配置文件中追加3行

192.168.126.3 master

192.168.126.4 slave1

192.168.126.5 slave2

  测试hostname是否可用

sudo vi /etc/hosts

终止按钮

ctrl c

配置SSH免密登录

(1)生成秘钥对

ssh-keygen -t rsa

2)发送公钥 先发给自己(装完三个节点之后在发送给slave1、slave2)

将master节点上hadoop用户的公钥发给各个节点的hadoop用户(包括自己)

在这样说明一点,要将三台hadoop配置完毕之后在发送其它两台的,下面的代码

要在master节点下一行一行输入

正在途中还要输入yes,密码,

ssh-copy-id  -i  /home/hadoop/.ssh/id_rsa.pub hadoop@masterssh-copy-id  -i  /home/hadoop/.ssh/id_rsa.pub hadoop@slave1(slave1节点装完在输入)ssh-copy-id  -i  /home/hadoop/.ssh/id_rsa.pub hadoop@slave2(slave2节点装完在输入)

 3)测试免密登录

ssh master

(1)安装jdk和hadoop

先解压文件

输入代码

jdk-8u301-linux-x64.tar.gz 是文件名,要改成自己的文件名

hadoop-2.10.1.tar.gz 是文件名,要改成自己的文件名

tar -zxvf jdk-8u301-linux-x64.tar.gztar -zxvf hadoop-2.10.1.tar.gz

移动至/usr/local 路径下

移动jdk

sudo mv jdk1.8.0_301 /usr/local/jdk1.8.0

移动hadoop

sudo mv hadoop-2.10.1 /usr/local/

安装 vim 编辑器,不安装的话可以使用自带的 vi 编辑器

(功能相对少)

sudo apt install vim

打开环境变量配置文件

sudo vim /etc/profile

在文件末尾插入以下定义

export JAVA_HOME=/usr/local/jdk1.8.0export HADOOP_HOME=/usr/local/hadoop-2.10.1export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

按Esc

然后输入

:wq

$ source /etc/profile

测试是否配置成功

测试Hadoop是否安装完成

hadoop version

测试Java是否安装完成

java -version

 配置Hadoop

建立保存临时目录的路径

sudo mkdir -p /usr/data/hadoop/tmp

Hadoop 默认启动的时候使用的是系统下的 /temp 目录下,但 是在每一次重启的时候系统都会将其自动清空 ,如果没有临 时的储存目录有可能会在下一次启动 Hadoop 的时候出现 问题。

为防止 Hadoop 运行时出现权限的问题,需要将/usr/data 目 录及其子目录的拥有者全部从 root 改为用户名。 (这里以本机用户名 silin 为例。)

sudo chown sillin:silin -R /usr/data

(4)Hadoop分布式配置(master节点)

进入hadoop安装文件下的/etc/hadoop/文件夹中。

cd  /usr/local/hadoop-2.10.1/etc/hadoop

配置hadoop-env.sh脚本文件

将${JAVA_HOME}改为jdk的实际安装路径

vi hadoop-env.sh

 将${JAVA_HOME}改为jdk的实际安装路径

 配置core-site.xml配置文件

vi core-site.xml
<configuration><property><name>hadoop.tmp.dir</name><value>/usr/data/hadoop/tmp</value></property><property><name>fs.defaultFS</name><value>hdfs://hostname:9000</value></property></configuration>

配置hdfs-site.xml的配置文件 

vi hdfs-site.xml
<configuration><property><name>dfs.replication</name><value>2</value></property><property><name>dfs.permissions</name><value>false</value></property></configuration>

 将mapred-site.xml.template更名为mapred-site.xml并编辑

cp mapred-site.xml.template mapred-site.xmlvi mapred-site.xml
<property><name>mapreduce.framework.name</name><value>yarn</value></property></configuration>

 配置yarn-site.xml

vi yarn-site.xml
<configuration><!-- Site specific YARN configuration properties --><property><name>yarn.resourcemanager.hostname</name><value>hostname</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property></configuration>

vi slaves

到这里master节点就完成了

但是我们需要配置三个节点

要用到虚拟机里面的复制

 一定要选完全复制

点击完成就行了

复制两份

要改里面的hostname,和hostname的文件

 (5)格式化namenode

hdfs namenode -format

(9)启动(第一次启动需要输入yes)

start-dfs.shstart-yarn.sh

输入jps确认

jps

Master节点

Slave1节点

Slave2节点

 参考链接:

在ubuntu上安装hadoop完分布式-CSDN博客

 在Centos7下安装Hadoop的完全分布_在ubantu上下载hadoop-CSDN博客

如何在Ubuntu下安装伪分布hadoop_ubantu hadoop伪分布式-CSDN博客

相关文章:

在ubuntu上安装hadoop完分布式

准备工作 Xshell安装包 Xftp7安装包 虚拟机安装包 Ubuntu镜像源文件 Hadoop包 Java包 一、安装虚拟机 创建ubuntu系统 完成之后会弹出一个新的窗口 跑完之后会重启一下 按住首先用ctrlaltf3进入命令界面&#xff0c;输入root&#xff0c;密码登录管理员账号 按Esc 然后输入 …...

Python 语句(二)【循环语句】

循环语句允许执行一个语句或语句组多次&#xff0c;其程序流程图如下&#xff1a; 在python中有三种循环方式&#xff1a; while 循环 当判断条件为 true 时执行循环体&#xff0c;否则退出循环体。for 循环 重复执行语句嵌套循环 &#xff08;在while循环体中嵌套for循环&…...

(3)(3.3) MAVLink高延迟协议

文章目录 前言 1 配置 2 说明 3 消息说明 前言 ArduPilot 支持 MAVLink 高延迟协议(MAVLink High Latency)。该协议专为卫星或 LoRA 等低带宽或高成本链路而设计。 在此协议中&#xff0c;每 5s 只发送一次 HIGH_LATENCY2 MAVLink 信息。对 MAVLink 命令或请求&#xff08…...

【异常处理】Vue报错 Component template should contain exactly one root element.

问题描述 启动VUE项目后控制台报错&#xff1a; Component template should contain exactly one root element. If you are using v-if on multiple elements, use v-else-if to chain them instead.翻译为&#xff1a;组件模板应该只包含一个根元素 查看vue代码&#xff0…...

Eth-trunk隧道

目录 Eth-trunk (划为二层) 二层trunk 三层交换机 网关冗余 Eth-trunk (划为二层) 一,...

【Ubuntu】将多个python文件打包为.so文件

1.为什么要将python打包为.so文件&#xff1f; 保护源码 2.实战例子 a.安装相应的包 pip install cython 验证安装是否成功 cython --version b.实战的文件目录和内容 hi.py # This is a sample Python script.# Press ShiftF10 to execute it or replace it with your…...

FreeRtos自学笔记3-----参考正点原子视频

FreeRtos任务的创建与删除 任务的创建与删除本质上是调用FreeRtos的API函数。 API函数&#xff1a; 1.xTaskGreate():动态创建任务函数&#xff1b; 2.xTaskGreateStatic();静态创建任务函数&#xff1b; 3.xTaskDelete():任务删除 动态创建任务&#xff1a;任务的任务控制块以…...

使用J-Link Commander通过J-LINK以命令的形式来访问ARM通用MCU

通常我们的操作是写好程序然后将程序下载到芯片里面&#xff0c;然后运行程序来进行相应的操作&#xff0c;其实还可以使用 J − L i n k C o m m a n d e r J-Link\quad Commander J−LinkCommander通过 J − L I N K J-LINK J−LINK以命令的形式来简单访问ARM通用MCU&#xf…...

19.删除链表的倒数第N个节点

19.删除链表的倒数第N个节点 力扣题目链接(opens new window) 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 进阶&#xff1a;你能尝试使用一趟扫描实现吗&#xff1f; 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n…...

【Linux C | 网络编程】广播概念、UDP实现广播的C语言例子

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…...

java 面向对象 day3

这里写目录标题 1、 内部类1.1 成员内部类 静态内部类1.2 局部内部类1.3 匿名内部类[重点] 2、枚举2.1 使用枚举类 设计单例模式2.2 小实例 3、泛型3.1 认识泛型3.2 泛型类3.3 泛型接口3.4 泛型方法3.5 注意事项 1、 内部类 内部类 就是定义在一个类中的类 1.1 成员内部类 静…...

Flink 大数据 学习详情

参考视频&#xff1a; 尚硅谷大数据Flink1.17实战教程从入门到精通_哔哩哔哩_bilibili 核心目标&#xff1a; 数据流上的有状态的计算 具体说明&#xff1a; Apache Flink是一个 框架 和 分布式处理引擎&#xff0c;用于对 无界&#xff08;eg&#xff1a;kafka&#xff09; 和…...

[项目设计] 从零实现的高并发内存池(四)

&#x1f308; 博客个人主页&#xff1a;Chris在Coding &#x1f3a5; 本文所属专栏&#xff1a;[高并发内存池] ❤️ 前置学习专栏&#xff1a;[Linux学习] ⏰ 我们仍在旅途 ​ 目录 6.内存回收 6.1 ThreadCache回收内存 6.2 CentralCache回收内存 Rele…...

02.URL的基本知识和使用

一.认识 URL 1. 为什么要认识 URL ? 虽然是后端给我的一个地址&#xff0c;但是哪部分标记的是服务器电脑&#xff0c;哪部分标记的是资源呢&#xff1f;所以为了和服务器有效沟通我们要认识一下 2. 什么是 URL &#xff1f; 统一资源定位符&#xff0c;简称网址&#xff…...

人工智能指数报告2023

人工智能指数报告2023 主要要点第 1 章 研究与开发第 2 章 技术性能第 3 章 人工智能技术伦理第 4 章 经济第 5 章 教育第 6 章 政策与治理第 7 章 多样性第 8 章 舆论 人工智能指数是斯坦福大学以人为本的人工智能研究所&#xff08;HAI&#xff09;的一项独立倡议&#xff0c…...

Android如何对应用进行系统签名

一、使用命令 获取签名文件 从系统源码环境中获取签名相关文件&#xff1a; platform.x509.pem、platform.pk8 、signapk.jar platform.x509.pem、platform.pk8 位于 ../build/target/product/security 目录下。signapk.jar 位于 ../out/host/linux-x86/framework 目录下。 …...

【系统安全加固】Centos 设置禁用密码并打开密钥登录

文章目录 一&#xff0c;概述二&#xff0c;操作步骤1. 服务器端生成密钥2. 在服务器上安装公钥3.下载私钥到本地&#xff08;重要&#xff0c;否则后面无法登录&#xff09;4. 修改配置文件&#xff0c;禁用密码并打开密钥登录5. 重启sshd服务6. 配置xshell使用密钥登录 一&am…...

关于我在项目中封装的一些自定义指令

什么是指令 在Vue中提供了一套为数据驱动视图更为方便的操作&#xff0c;这些操作被称为指令系统。我们看到的v-来头的行内属性&#xff0c;都是指令&#xff0c;不同的指令可以完成或者实现不同的功能。 除了核心功能默认内置的指令&#xff08;v-model和v-show&#xff09;…...

react经验11:访问循环渲染的子组件内容

前有访问单个子组件的需求&#xff0c;现在进一步需要访问循环渲染中的子组件。 访问单个子组件的成员 实施步骤 子组件//child.tsx export declare type ChildInstance{childMethod:()>void } const Child(props:{value:stringonMounted?:(ref:ChildInstance)>void …...

Java开发工程师面试题(业务功能)

一、订单超时未支付自动关闭的几种实现方式。 定时任务扫描&#xff1a;在订单创建时&#xff0c;为订单创建一个定时任务&#xff0c;并设置一个超时时间。后端服务器会定期检查任务的创建时间是否超过了超时时间。如果是&#xff0c;则将订单设置为关闭状态。这种方案需要后…...

【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15

缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下&#xff1a; struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误

HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误&#xff0c;它们的含义、原因和解决方法都有显著区别。以下是详细对比&#xff1a; 1. HTTP 406 (Not Acceptable) 含义&#xff1a; 客户端请求的内容类型与服务器支持的内容类型不匹…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时&#xff0c;需结合业务场景设计数据流转链路&#xff0c;重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点&#xff1a; 一、核心对接场景与目标 商品数据同步 场景&#xff1a;将1688商品信息…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开&#xff0c;首…...

【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统

目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索&#xff08;基于物理空间 广播范围&#xff09;2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...

使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度

文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖

在Vuzix M400 AR智能眼镜的助力下&#xff0c;卢森堡罗伯特舒曼医院&#xff08;the Robert Schuman Hospitals, HRS&#xff09;凭借在无菌制剂生产流程中引入增强现实技术&#xff08;AR&#xff09;创新项目&#xff0c;荣获了2024年6月7日由卢森堡医院药剂师协会&#xff0…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息&#xff0c;对客户进行统一管理&#xff0c;可以把所有客户信息录入系统&#xff0c;进行维护和统计功能。可通过文件的方式保存相关录入数据&#xff0c;对…...