hadoop搭建

前言

一般企业中不会使用master slave01 slave02来命名

vmware创建虚拟机

打开vmware软件,新建虚拟机

典型

稍后安装系统

选择centos7

虚拟机名称和安放位置自行选择(最小化安装消耗空间较少)

默认磁盘大小即可

自定义硬件

选择centos7的iso镜像文件(没有的话自行上阿里云下载)随后点击关闭centos-7.9.2009-isos-x86_64安装包下载_开源镜像站-阿里云

完成

开启虚拟机

安装centos7

 键盘上下键选择第一项直接安装,第二项是测试镜像完整性并安装,耗时较久

等待一会 

语言中英文都可,按自己喜好,选择继续

选择安装位置,默认即可

直接点击完成

点击开始安装即可

点击设置root用户密码

如果设置的是弱密码需要点击两次完成

点击创建用户

创建一个hd用户,如果设置的是弱密码需要点击两次完成

等待安装,点击完成配置

再次等待,点击重启

启动centos7进行初步设置

登录root用户,输入密码不会有提示 输入完毕后直接回车即可登录

登录后发现没有IP地址

 先配置一个临时IP地址(ens33 对应自己的网卡)

ip根据自己实际情况而设置

ifconfig ens33 192.168.20.30

使用远程工具ssh连接,这里使用MobaXterm

连接类型选择SSH ,输入centos7的IP地址(前面设置了192.168.20.30)根据自己的实际情况来,选择登录hd 用户,点击OK连接,随后输入密码(一样的输入密码是没有提示的)

切换到root用户(因为后面配置需要root用户权限) 

su root

修改为静态ip地址(前面设置的是临时ip重启后失效)

vi /etc/sysconfig/network-scripts/ifcfg-ens33

将BOOTPROTO从dhcp修改为static

ONBOOT从no修改为yes

在文件末尾加入如下三行(因为不需要联网所以不用配置DNS)ip根据自己实际情况而设置

IPADDR=192.168.20.30
NETMASK=255.255.255.0
GATEWAY=192.168.20.2

:wq保存退出、ZZ也可

重启网卡令配置生效

systemctl restart network

关闭防火墙并永久禁用防火墙和selinux,setenforce 0重启后会失效,修改selinux文件需要重启才能生效

systemctl stop firewalld
systemctl disable firewalld
setenforce 0
vi /etc/selinux/config

将SELINUX=enforcing修改为SELINUX=disabled

保存退出

安装Java环境

先删除Linux自带的Java环境

在root用户下 

yum remove  -y  java* 

回到hd用户

su hd

在hd用户目录下创建apps文件夹来放软件包及安装软件

上传Java包

将jdk-8u121-linux-x64.gz包上传至上面创建的apps目录下

 

 解压Java包

注意以hd用户解压否则会出现hd用户无权限无法启动Hadoop 

tar -zxvf jdk-8u121-linux-x64.gz
 mv jdk1.8.0_121/ java

配置Java环境

su root

添加环境变量 

vi /etc/profile

G来到文件末尾,o在下一行插入

export JAVA_HOME=/home/hd/apps/java
export PATH=$PATH:$JAVA_HOME/bin

加载系统环境并查看Java版本

source /etc/profile
java -version

Hadoop安装

上传Hadoop包 

上传hadoop-2.8.1.tar.gz至apps目录并解压

切换至hd用户

su hd

解压 Hadoop包

tar -zxvf hadoop-2.8.1.tar.gz

修改目录名

mv hadoop-2.8.1 hadoop

修改Hadoop配置文件

先进入Hadoop配置文件目录

cd hadoop/etc/hadoop/

 

 修改hadoop-env.sh

vi hadoop-env.sh

按G来到文件末尾o在下一行插入,在文件末尾追加

export JAVA_HOME=/home/hd/apps/java

:wq保存退出 或 ZZ保存退出

注意!!!! 看了再往下做

下面修改的4个文件一定要在<configuration></configuration>中添加,不要图省事直接追加在文件末尾,一个xml文件只能一个根节点,出现了2个 会导致Hadoop无法启动(本人踩的雷)

修改core-site.xml

 vi core-site.xml

在<configuration></configuration>中添加

    <!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 --><property><name>fs.defaultFS</name><value>hdfs://master:9000</value></property><!-- 指定hadoop运行时产生文件的存储目录 --><property><name>hadoop.tmp.dir</name><value>/home/hd/apps/hadoop/tmpdata</value></property><!--Hadoop回收站trash,默认是关闭的 可以设置一个时间阀值(单位:分钟),
当回收站里文件的存放时间超过这个阀值或是回收站被清空时,文件才会被彻底删除,并且释放占用的数据块。
--><property><name>fs.trash.interval</name><value>1440</value>
</property>

修改hdfs-site.xml

vi hdfs-site.xml

在<configuration></configuration>中添加

    <!-- 指定HDFS副本的数量 --><property><name>dfs.replication</name><value>2</value></property><!-- 设置namenode的http通讯地址 --><property><name>dfs.namenode.http-address</name><value>master:50070</value></property><!-- 设置secondarynamenode的http通讯地址 --><property><name>dfs.namenode.secondary.http-address</name><value>master:50090</value></property><!-- 设置namenode存放的路径 --><property><name>dfs.namenode.name.dir</name><value>/home/hd/apps/hadoop/namenode</value></property><!-- 设置datanode存放的路径 --><property><name>dfs.datanode.data.dir</name><value>/home/hd/apps/hadoop/datanode</value></property>

 

修改mapred-site.xml

 因为我的包里没有mapred-site.xml,需要将mapred-site.xml.template重命名为mapred-site.xml

mv mapred-site.xml.template mapred-site.xml

 再来修改文件

vi mapred-site.xml

在<configuration></configuration>中添加

    <!-- 指定mr运行在yarn上 --><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=/home/hd/apps/hadoop</value></property><property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=/home/hd/apps/hadoop</value></property><property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=/home/hd/apps/hadoop</value></property>

修改yarn-site.xml

vi yarn-site.xml

在<configuration></configuration>中添加

    <!-- 指定YARN的老大(ResourceManager)的地址 --><property><name>yarn.resourcemanager.hostname</name><value>master</value></property><!-- reducer获取数据的方式 --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>

 

修改slaves

vi slaves

 追加

slave01
slave02

修改环境变量

先切换到root用户

su root
vi /etc/profile

在文件末尾追加

export HADOOP_HOME=/home/hd/apps/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

加载环境

source /etc/profile

查看Hadoop版本

hadoop version

克隆虚拟机

先关闭虚拟机

shutdown -h now

右键虚拟机标签,选择管理,克隆

我选择链接克隆,根据自己情况来选择(链接克隆如果母机损坏了链接克隆的机器也无法正常启动,但是占用空间小,克隆速度快)

 为了方便分辨虚拟机名称设为hd2,存储位置自行选择,点击完成即可

完毕

同样方法再克隆一台

启动并修改克隆的虚拟机IP地址

vi /etc/sysconfig/network-scripts/ifcfg-ens33

 将网卡ID删除(避免与母机冲突)并修改IP地址,ip根据自己实际情况而设置

重启网卡

systemctl restart network

随后检查个各机器防火强是否关闭,selinux是否关闭

 systemctl status firewalld  
setenforce 0

java版本,Hadoop版本是否一致(如果没有的话自行检查 /etc/profile 环境变量 source加载)

 java -version
hadoop version

修改主机名

母机 master

从机1 slave01

从机2 slave02

一般企业中是不会像这样命名的

hostnamectl set-hostname master

bash重新加载交互

hostnamectl set-hostname slave01
hostnamectl set-hostname slave02

修改/etc/hosts 文件

切换到root用户 

su root

修改hosts文件 

vi /etc/hosts

在文件末尾追加(ip根据自己实际情况而设置)

192.168.20.30 master
192.168.20.31 slave01
192.168.20.32 slave02

保存并退出

同步到两台子机上

scp /etc/hosts root@slave01:/etc/
scp /etc/hosts root@slave02:/etc/

输入yes

输入密码后回车(没有提示的)

第二台同理

免密登录

先退出root用户,直接

exit

在master上生成密钥

ssh-keygen

回车 

继续回车

一直回车 

拷贝密钥到需要免密登录的机器

master slave01 slave02三台机器

ssh-copy-id slave02
ssh-copy-id slave01
ssh-copy-id master

输入yes,随后输入密码,回车

另外两台同理

测试免密登录

ssh slave01
ssh slave02
ssh master

不需要输入密码就说明成功了(如若不成功检查防火墙,重新生成密钥并发送到三个节点 ,并确认你的当前用户是hd)

exit退出 

格式化Hadoop

只需要在master上格式化

hadoop namenode -format

(   )(   )启动!!!

 启动Hadoop集群

 start-dfs.sh 启动HDFS分布式文件系统,停止stop-dfs.sh

 start-yarn.sh 启动Yarn资源管理器,停止stop-yarn.sh

 start-all.sh  HDFS分布式文件系统与Yarn启动,停止stop-all.sh

主要使用 一键启动所有

start-all.sh

如要停止,使用

stop-all.sh

启动卡住没有datanode解决办法

启动Hadoop后 没有DataNode进程 的解决方法_hadoop没有datanode-CSDN博客

中途提示Host key verification failed解决办法

解决Host key verification failed.(亲测有效)-CSDN博客 

使用jps查看启动服务

master服务如图 

两个slave服务如图

hdfs 文件系统访问地址:http://192.168.20.30:50070

ip根据自己实际情况而设置

 

Yarn资源管理器访问地址:http://192.168.20.30:8088

ip根据自己实际情况而设置

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

教师管理系统

大概功能&#xff1a; 1.显示所有教师 2.按姓名查找教师 3.按工号查找教师 4.增加教师 5.删除教师 6.退出 数据会保存到 txt 文件里面 姓名&#xff1a;必须是中文 手机号码&#xff1a;必须是11位&#xff0c;必须是数字 效果展示&#xff1a; 代码展示&#xff1a; Teache…

LLaMA详解

LLaMA 进化史 大规模语言模型(Large Language Model, LLM)的快速发展正在以前所未有的速度推动人工智能(AI)技术的进步。 作为这一领域的先行者, Meta在其LLaMA(Large Language Model Meta AI)系列模型上取得了一系列重大突破。 近日, Meta官方正式宣布推出LLaMA-3, 作为继LL…

BAPI_BATCH_CHANGE在更新后不自动更新批次特征

1、问题介绍 在CL03中看到分类特性配置了制造日期字段&#xff0c;并绑定了生产日期字段MCH1~HSDAT MSC2N修改批次的生产日期字段时&#xff0c;自动修改了对应的批次特性 但是通过BAPI&#xff1a;BAPI_BATCH_CHANGE修改生产日期时&#xff0c;并没有更新到批次特性中 2、BAPI…

JVM简介—3.JVM的执行子系统

大纲 1.Class文件结构 2.Class文件格式概述 3.Class文件格式详解 4.字节码指令 5.类的生命周期和初始化 6.类加载的全过程 7.类加载器 8.双亲委派模型 9.栈桢详解 11.方法调用详解 12.基于栈的字节码解释执行引擎 1.Class文件结构 (1)Java跨平台的基础 字节码是各…

【学生管理系统】权限管理之角色管理

目录 6.3 角色管理 6.3.1 查询所有角色 6.3.2 核心2&#xff1a;给角色授予权限(菜单) 6.3.3 添加角色 6.3 角色管理 6.3.1 查询所有角色 1&#xff09;后端【已有】 2&#xff09;前端 要求&#xff1a;左右分屏 <template><div><el-row><el-c…

ArrayList 和LinkedList的区别比较

前言 ‌ArrayList和LinkedList的主要区别在于它们的底层数据结构、性能特点以及适用场景。‌ArrayList和LinkedList从名字分析&#xff0c;他们一个是Array&#xff08;动态数组&#xff09;的数据结构&#xff0c;一个是Linked&#xff08;链表&#xff09;的数据结构&#x…

深度学习笔记(4)——视频理解

视频理解 视频理解的问题:视频太大了 解决方案:在切片上训练,低FPS,低分辨率 测试的时候:在不同的clips上运行模型,取平均预测结果 视频由图片序列组成: 单帧CNN模型 训练普通的2D CNN模型,对每一帧进行分类&#xff0c;通常是视频分类的一个非常强的基线方法。 Late Fusio…

前端项目 npm报错解决记录

1.首先尝试解决思路 npm报错就切换yarn &#xff0c; yarn报错就先切换npm删除 node_modules 跟 package-lock.json文件重新下载依 2. 报错信息&#xff1a; Module build failed: Error: Missing binding D:\vue-element-admin\node_modules\node-sass\vendor\win32-x64-8…

【AI大模型】探索GPT模型的奥秘:引领自然语言处理的新纪元

目录 &#x1f354; GPT介绍 &#x1f354; GPT的架构 &#x1f354; GPT训练过程 3.1 无监督的预训练语言模型 3.2 有监督的下游任务fine-tunning &#x1f354; 小结 学习目标 了解什么是GPT.掌握GPT的架构.掌握GPT的预训练任务. &#x1f354; GPT介绍 GPT是OpenAI公…

elasticsearch-java客户端jar包中各模块的应用梳理

最近使用elasticsearch-java客户端实现对elasticsearch服务的Api请求&#xff0c;现对elasticsearch-java客户端jar包中各模块的应用做个梳理。主要是对co.elastic.clients.elasticsearch路径下的各子包的简单说明。使用的版本为&#xff1a;co.elastic.clients:elasticsearch-…

前后端分离(前后端交互步骤)

1.设计数据库 /*Navicat Premium Data Transfer ​Source Server : localhost_3306Source Server Type : MySQLSource Server Version : 80037 (8.0.37)Source Host : localhost:3306Source Schema : studymysql ​Target Server Type : MySQL…

【VulnOSv2靶场渗透】

文章目录 一、基础信息 二、信息收集 三、漏洞探测 四、提权 一、基础信息 Kali IP: 192.168.20.146 靶机IP&#xff1a;192.168.20.152 二、信息收集 nmap -sS -sV -p- -A 192.168.20.152 开放了22、80、6667等端口 22端口&#xff1a;openssh 6.6.1p1 80端口&…

无需训练!多提示视频生成最新SOTA!港中文腾讯等发布DiTCtrl:基于MM-DiT架构

文章链接&#xff1a;https://arxiv.org/pdf/2412.18597 项目链接&#xff1a;https://github.com/TencentARC/DiTCtrl 亮点直击 DiTCtrl&#xff0c;这是一种基于MM-DiT架构的、首次无需调优的多提示视频生成方法。本文的方法结合了新颖的KV共享机制和隐混合策略&#xff0c;使…

SpringBoot对静态资源的映射规则

目录 什么是SpringBoot静态资源映射&#xff1f; 如何实现SpringBoot静态资源映射&#xff1f; 1. webjars&#xff1a;以jar包的方式引入静态资源 示例&#xff1a; 2. /** 访问当前项目的任何资源 示例一&#xff1a; 示例二&#xff1a; 3. 静态首页&#xff08;欢…

【EtherCATBasics】- KRTS C++示例精讲(2)

EtherCATBasics示例讲解 目录 EtherCATBasics示例讲解结构说明代码讲解 项目打开请查看【BaseFunction精讲】。 结构说明 EtherCATBasics&#xff1a;应用层程序&#xff0c;主要用于人机交互、数据显示、内核层数据交互等&#xff1b; EtherCATBasics.h &#xff1a; 数据定义…

【论文阅读】Reducing Activation Recomputation in Large Transformer Models

创新点&#xff1a; 针对Transformer结构&#xff0c;通过序列并行和选择性重计算激活值&#xff0c;在节省显存空间占用的情况下&#xff0c;不带来明显通信开销&#xff0c;同时减少重计算成本。 总的来说&#xff0c;就是在原有的张量并行的基础上&#xff0c;对LayerNorm和…

Linux arm 编译安装glibc-2.29

重要的话说三遍&#xff1a; &#xff01;&#xff01;&#xff01;&#xff01;&#xff01;不要轻易自己去安装glibc&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; &#xff01;&#xff01;&#xff01;&#xff01;&#xff01;不要轻易自己去安装glibc&a…

STM32完全学习——FLASH上FATFS文件管理系统

一、需要移植的接口 我们通过看官网的手册&#xff0c;可以看到我们只要完成下面函数的实现&#xff0c;就可以完成移植。我们这里只移植前5个函数&#xff0c;获取时间的函数我们不在这里移植。 二、移植接口函数 DSTATUS disk_status (BYTE pdrv /* Physical drive nmuber…

Docker使用——国内Docker的安装办法

文章目录 参考资料前言Mac安装办法Homebrew 安装1. 直接下报错2. 安装homebrew&#xff0c; 用国内镜像3. 安装Docker4. 启动docker服务5. 测试是否安装成功 参考资料 鸣谢大佬文章。 macOS系统中&#xff1a;Docker的安装&#xff1a;https://blog.csdn.net/sulia1234567890…

Java-38 深入浅出 Spring - AOP切面增强 核心概念 相关术语 Proxy配置

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 大数据篇正在更新&#xff01;https://blog.csdn.net/w776341482/category_12713819.html 目前已经更新到了&#xff1a; MyBatis&#xff…