Hadoop配置手册1:hadoop环境搭建与测试

news2024/9/17 8:27:04

Hadoop配置手册1

Date: September 25, 2022


第1章 hadoop环境搭建

1.1 安装Vmware软件

  1. 下载地址:https://www.onlinedown.net/soft/45831.htm

Untitled

  1. 运行安装程序,并连续点击下一步安装

Untitled

  1. 输入密钥,启动程序

Untitled

详细参考:https://blog.csdn.net/weixin_45014379/article/details/126102088

1.2 引入CentOS镜像

前言:

这里开始安装虚拟机,为节省硬盘容量和减轻电脑运算负担,这里采用Linux的最小化安装方式,即命令行版本

1.2.1 新建虚拟机

  1. 选择自定义

Untitled

  1. 选额Cent OS 7

Untitled

  1. 安装虚拟机位置

Untitled

  1. 处理器配置

Untitled

  1. 指定磁盘容量

Untitled

  1. 指定磁盘文件配置

Untitled

1.2.2 编辑虚拟网络编辑器

前言:

这里其实默认配置就好,若未来有网络配置问题,则需要对此处进行修改。

  1. 编辑虚拟网络编辑器

Untitled

  1. 设置NAT模式

Untitled

  1. 检测网关IP是否冲突

Untitled

  1. 检测DHCP是否有IP冲突问题

Untitled

1.2.3 同步物理机IPv4地址

对虚拟机的网络配置完成之后,需要对物理机的IPv4进行同步

  1. 对VMnet8进行网络配置属性

Untitled

  1. 同步IP地址

Untitled

1.2.4 正式安装CentOS7系统

安装之前,手动配置一下CD,即手动使用映像文件

Untitled

  1. 选择英文,防止以后系统出现未知错误

Untitled

  1. 基础配置

Untitled

Untitled

1.2.5 配置CentOS

准备工作:

安装vim编辑器

yum install vim

配置网络:

  1. 找到并编辑 ifcfg-ens33 文件

Untitled

Untitled

因为要静态IP,更方便管理,所以这里BOOTPROTO设置成static

  1. 重启,以更新配置,并检查网卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33
IPADDR=192.168.8.130
GATEWAY=192.168.8.2
DNS1=8.8.8.8
DNS2=8.8.4.4
service network restart

Untitled

lo是回环地址,它是一个软件实现回环

ens33是配置的网卡,我们需要查看其中的 inet是否是自己所配置的,若是就可

然后我们可以尝试用ping来ping一下百度,查看网络是否通畅

注意:这里用 ctrl+c 来停止ping

补充:这里我们需要下载一个网络工具以检查网络

yum install net-tools

关闭防火墙

分布式集群中,各个节点之间的通信会受到防火墙的阻碍,因此关闭防火墙

systemctl stop firewalld.service

禁止防火墙开机启动

systemctl disable firewalld.service

若出现网络问题,查看网络配置文件是否错误

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

Untitled

1.2.6 基础环境配置

配置时钟同步

在线安装 nt­p­date,使用阿里云 ntp 服务器同步时间,date 命令查看当前时间

yum install ntpdate
ntpdate ntp.aliyun.com
date

配置主机名

作用:

在网络中能够唯一标识主机,让我们能够通过ip 地址和网络主机名访问这台主机

修改主机名:

hostnamectl set-hostname master

查看修改后的主机名:

hostname

配置hosts列表

hosts 列表作用是让集群中的每台服务器彼此都知道对方的主机名和 ip 地址

vim /etc/hosts

Untitled

验证,ping ip 地址和主机名,结果相同无区别

ping 192.168.253.5
ping master

1.2.7 连接powershell

Untitled

方便未来cv,节省操作时间

如果连接不上powershell:

Untitled

解决方案:

方案1:

  1. 修改ip地址

    虚拟网络编辑:

    这里的ip最好给DHCP分配范围内的

    Untitled

    物理机中的VMnet8修改一下IP地址:

    Untitled

  2. 虚拟机同步配置

具体过程见上面配置centos中的配置网络一块

Untitled

Untitled

  1. 配置主从机
vim /etc/hosts

Untitled

解决方案2:

在VMnet8中采用自动获取IP地址,解决问题

Untitled

采用如上方式,成功解决了虚拟机与物理机ip地址冲突的问题


常用知识:查看虚拟机和物理机的ip地址

虚拟机:

ifconfig 检查虚拟机的ip

Untitled

物理机:

可以用在管理员权限下cmd中输入ipconfig找WLAN开头的ipv4,也可以直接找设置中的网络和Internet中的查看网络属性

Untitled

1.3 安装Java

  1. 安装Java
yum install java-1.8.0-openjdk

yum install java-1.8.0-openjdk-devel
  1. 找到Java路径, 一般在如下位置, 记住这个路径
[root@master lib]# cd /usr/lib/jvm
[root@master jvm]# cd java
[root@master java]# pwd
/usr/lib/jvm/java
  1. 配置profile文件
vim /etc/profile

文末添加如下两行, 方便其他软件读java的home环境

export JAVA_HOME=/usr/lib/jvm/java
export PATH=$JAVA_HOME/bin:$PATH

使配置生效

source /etc/profile

1.4 安装Hadoop

  1. 选择使用阿里云的网址下载Hadoop

https://mirrors.aliyun.com/apache/hadoop/common/hadoop-2.10.1/?spm=a2c6h.25603864.0.0.433f3a2cRJPZLj

Untitled

  1. 解压后可得如下文件

Untitled

  1. 使用xftp连接虚拟机

Untitled

然后将hadoop的压缩包转移到/usr/hadoop中

  1. 虚拟机中解压缩包

解压压缩包:

 tar -zxvf hadoop-2.10.1

hadoop文件路径

 /usr/hadoop/hadoop-2.10.1

配置/etc/profile文件,文末加上如下两行

注意一下这里的版本号为2.10.1

 export HADOOP_HOME=/usr/hadoop/hadoop-2.10.1
 export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

保存出来,source /etc/profile让文件生效

然后,我们用 hadoop version验证一下是否配置成功即可

  1. 将hadoop与java绑定
 cd /usr/hadoop/
 cd hadoop-2.10.1/
 cd etc/
 cd hadoop/
 
 vim hadoop-env.sh
     export JAVA_HOME=/usr/lib/jvm/java
  1. Hadoop核心文件配置

进入 hadoop 的 etc 文件夹, vim core-site.xml

<configuration>
    <!--指定文件系统的入口地址,可以为主机名或ip -->
    <!--端口号默认为8020 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:8020</value>
    </property>
    <!--指定hadoop的临时工作存目录-->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/hadoop/tmp</value>
    </property>
</configuration>

配置 yarn-env.sh 文件,vim yarn-env.sh

# export JAVA_HOME=/home/y/libexec/jdk1.6.0/

修改为:

export JAVA_HOME=/usr/java/jdk1.8.0_241

配置 hdfs-site.xml 文件,新增以下内容:

<configuration>
    <!--指定hdfs备份数量,小于等于从节点数目-->
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
        <property>
                  <name>dfs.namenode.http.address</name>
                   <value>master:50070</value>
           </property>
  <!--  自定义hdfs中namenode的存储位置-->
  <!--  <property>-->
  <!--      <name>dfs.namenode.name.dir</name>-->
  <!--      <value>file:/usr/hadoop/dfs/name</value>-->
  <!--  </property>-->
  <!--  自定义hdfs中datanode的存储位置-->
  <!--  <property>-->
  <!--      <name>dfs.datanode.data.dir</name>-->
  <!--      <value>file:/usr/hadoop/dfs/data</value>-->
  <!--</property>-->
</configuration>

配置 mapred-site.xml 文件,通过 cp 命令生成不带后缀 template 的文件

cp mapred-site.xml.template mapred-site.xml

编辑 mapred-site.xml 文件,新增以下内容:

<configuration>
    <!--hadoop的MapReduce程序运行在YARN上-->
    <!--默认值为local-->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

配置 yarn-site.xml 文件

<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
    </property>
    <!--nomenodeManager获取数据的方式是shuffle-->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>

编辑 slaves 文件,vim slaves,修改成如下

slave1
slave2
  1. 克隆虚拟机

Untitled

Untitled

  1. 配置SSH公钥

生成公钥私钥

在 mas­ter 和每台 slave 上,采用 rsa 算法产生公钥和私钥

ssh-keygen -t rsa

查看生成的私钥 id_rsa 和公钥 id_rsa.pub

cd /root/.ssh/
ls

发送公钥

在 mas­ter 上创建一个大家通用的公钥 au­tho­rized_keys,修改 au­tho­rized_keys 权限,并将这个公钥发送给每个 slave

cat id_rsa.pub >> authorized_keys
chmod 644 authorized_keys
systemctl restart sshd.service
scp /root/.ssh/authorized_keys slave1:/root/.ssh
scp /root/.ssh/authorized_keys slave2:/root/.ssh
scp /root/.ssh/authorized_keys slave3:/root/.ssh

具体配置过程如下:

Untitled

  1. 验证SSH

ssh 登录检验,测试是否可以在主机ssh其他从机,且不用输入密码

ssh master
ssh slave1
exit
ssh slave2
exit
ssh slave3
exit

第2章 测试Hadoop安装

2.1 测试Hadoop实验

  1. 格式化HDFS
[root@master ~]# cd /usr/hadoop/
[root@master hadoop]# cd hadoop-2.10.1/
[root@master hadoop-2.10.1]# cd bin/
[root@master bin]# hdfs namenode -format

注意:格式化仅需进行一次

  1. 启动hadoop
cd /usr/hadoop/hadoop-2.10.1/sbin
[root@master sbin]# start-all.sh
  1. 查看hadoop进程
jps
//我个人的显示如下
[root@master sbin]# jps
1440 NameNode
3348 Jps
1768 ResourceManager
1628 SecondaryNameNode
  1. 通过web端访问hadoop

查看 YARN 界面:http://192.168.8.130:8088/

Untitled

查看 Na­meN­ode、DataN­ode:http://192.168.8.130:50070/

Untitled

查看 Sec­ondary­Na­meN­ode :http://192.168.8.130:50090/

Untitled
在这里插入图片描述

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

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

相关文章

2023年19个数学建模竞赛重磅来袭!!!

更新时间&#xff1a;2022年2月3日 本人的团队全是计算机的研究生&#xff0c;从本科到研究生有丰富的打比赛和数模的经验&#xff0c;有需要指导的&#xff0c;请私信我 相关链接 &#xff08;1&#xff09;【数学建模】2022年整年所有数学建模竞赛时间表 &#xff08;2&a…

再过半小时,你就能理解Kafka的基本原理了

kafka总结一.定义二.基础架构及术语三.工作流程分析3.1发送数据3.2保存数据3.2.1 partition结构3.2.2 message结构3.2.3 存储策略3.2.4 消费数据一.定义 Kafka是一种高吞吐量的分布式发布订阅消息系统&#xff0c;可以处理消费者规模的网站中的所有动作流数据&#xff0c;具有…

基于 PyTorch 的目标检测(YOLO实现)

目标检测是一个直到最近才开始逐渐被征服的挑战。解决这个问题对于自动化和自动驾驶来说是至关重要的。对解决办法的追求导致了各种方法的发展。我想要描述一些主要的方法&#xff0c;在过去的21目标检测已经被使用&#xff0c;然后讨论 Yolov3的实现。讨论方法引言虽然深度学习…

windows 7 离线安装vs20219,GraalVM 打包java成可执行程序

环境准备 由于vs2022不支持windows 7 &#xff0c;故用vs2019版。 如果是 win7 系统&#xff0c;在安装下载的依赖项前需要安装 win7 所需要的两个补丁 KB4490628和KB4474419 &#xff0c;下载地址分别为&#xff08;下载后直接安装即可&#xff09;&#xff1a; 参考这篇博客…

vite --- 搭建开发环境

目录 下载安装和初始化VSCode 安装Node.js yarn 使用 pnpm 安装与使用 搭建第一个Vite项目 使用 PNPM创建项目 项目目录解读 下载安装和初始化VSCode 1、访问网站 Visual Studio Code - Code Editing. Redefined 2、选择平台版本 选择符合自己操作系统的安装包下载完毕…

接口测试及接口抓包常用的测试工具有哪些?

目录 接口 接口测试的重要性 常用抓包工具 01、F12 02、Fiddler抓包工具 03、Charles抓包工具 04、Firebug抓包工具 05、httpwatch抓包工具 06、Wireshark抓包工具 07、SmartSniff抓包工具 常用接口测试工具 01、Postman 02、Jmeter 03、RESTClient 04、WireMock…

655. 汽车大甩卖2 etiger.vip 答案

题目描述 有n辆车大甩卖&#xff0c;第i辆车售价a[i]元。有m个人带着现金来申请购买&#xff0c;第i个到现场的人带的现金为b[i]元&#xff0c;只能买价格不超过其现金额的车子。你是大卖场总经理&#xff0c;希望将车和买家尽量多地进行一对一配对&#xff0c;请问最多卖出多…

Qt 开发环境搭建

一、Qt下载与安装 1、qt下载网站https://download.qt.io/ 其中各个目录含义如下&#xff1a; 目录说明snapshots/预览版&#xff0c;最新开发测试的Qt库和开发工具online/在线安装源official_releases/正式发布版&#xff0c;是与开发版相对应的稳定版Qt库和开发工具&#x…

利用哨兵简化实现难度

首先先回顾一下链表的插入和删除&#xff0c;如果需要在一个结点p后边插入一个结点&#xff0c;那么只需要下边两行代码&#xff1a; new_node->next p->next; p->next new_node;但是当往链表插入第一个结点时候&#xff0c;上边的代码就不能用了。需要进行下边的处…

【vue2】vue框架学习前置必备基础知识

&#x1f973;博 主&#xff1a;初映CY的前说(前端领域) &#x1f31e;个人信条&#xff1a;想要变成得到&#xff0c;中间还有做到&#xff01; &#x1f918;本文核心&#xff1a;数组 | 字符串中常用方法、对象解构语法、function |箭头函数this指向、展开运算符、原型…

为了会做题而学习期权合约

基本术语 买入期权&#xff1a;按照固定价格购买特定物品的期权。卖出期权&#xff1a;按照固定价格出售特定物品的期权。执行价格&#xff1a;期权合约中约定的固定价格。到期日&#xff1a;在其后期权不再被执行的日期。欧式期权&#xff1a;期权只能在到期日当日被执行。美…

python带你采集热点事件,让你第一时间掌握全发展

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 又到了学Python时刻~ 开发环境: python 3.8: 解释器 pycharm: 代码编辑器 requests: 发送请求 parsel: 解析数据 jieba pandas stylecloud 实现流程: 一. 思路分析 找到数据来源 network 记录网页数据 请求 二…

windows下djaongo项目移植至centos7系统并启动

概述&#xff1a;在windows下开发完成的django项目需要移植至centos系统并启动。 文章目录1,在django项目目录下生成requirements.txt文件2,下载FileZilla安装并连接Linux系统3,本地传输文件至linux系统3.1,可用vim修改settings.py的参数4,安装requirements.txt依赖包5,启动项目…

pwn小白入门 装载 笔记

所看视频奉上&#xff1a;5、装载与汇编_哔哩哔哩_bilibili笔记如下&#xff1a;1.查看文件类型&#xff1a;file 文件名其中&#xff1a;add&#xff1a;文件名ELF&#xff1a;文件格式64-bit&#xff1a;64位LSB&#xff1a;端序 lsb&#xff1a;小端序 msb:大端序x86-64:架构…

sqlserver2012数据库,日志文件损坏修复

背景 服务器突然断电&#xff0c;导致数据库日志文件损坏&#xff0c;数据库无法启动。 本方案也同样适用于不小心删除数据库日志文件的情况。 相关报错 master数据库日志异常&#xff0c;导致数据库无法启动&#xff1a; 无法在数据库“master”(数据库 ID 为 1)的分配单元 …

windows下生成自签证书并配置到chrome

Windows自签证书生成工具&#xff1a;XCA – X Certificate and Key Management 简称&#xff1a;XCA 下载地址&#xff1a; https://github.com/chris2511/xca/releases 或者 http://sourceforge.net/projects/xca/files/latest/download 界面&#xff08;1.4.1版本&#xff0…

从0开始学python -19

Python3 字典 字典是另一种可变容器模型&#xff0c;且可存储任意类型对象。 字典的每个键值 key>value 对用冒号 : 分割&#xff0c;每个对之间用逗号(,)分割&#xff0c;整个字典包括在花括号 {} 中 ,格式如下所示&#xff1a; d {key1 : value1, key2 : value2, key3…

剑指Offer 第23天 数组中出现次数超过一半的数字 数组中数字出现的次数 I 数组中数字出现的次数 II(异或运算)

剑指 Offer 39. 数组中出现次数超过一半的数字 数组中有一个数字出现的次数超过数组长度的一半&#xff0c;请找出这个数字。 你可以假设数组是非空的&#xff0c;并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 输出: 2 来源&#xff1a;力扣&a…

Python自动化测试实战篇(2)unittest实现批量接口测试,并用HTMLTestRunner输出测试报告

代码已上传Python接口项目实战篇&#xff08;2&#xff09;源码 项目场景&#xff1a; 由于关于接口的测试用例任务越来越多&#xff0c;单纯靠人工手敲的方式输入和校验&#xff0c;速度上已经不能够满足项目的进行速度&#xff0c;而且都是针对登录的框框进行用例测试&…

一站式轻监控轻运维系统nezha(下篇)

本文软件由网友 114514 推荐&#xff1b; 命令行安装 docker安装所需要的文件都能在 https://github.com/naiba/nezha/tree/master/script 找到&#xff0c;config.yaml 和 docker-compose.yml 老苏都做了调整 你可以在 data 目录中新建一个空的 config.yaml 文件&#xff0c;…