hadoop系列(一)概念、组件介绍、安装环境、配置

hadoop系列(一)概念、组件介绍、安装环境、配置

一、大数据概念

概念

  1. 大数据:解决海量数据的采集、存储分析计算的能力

大数据特点

  1. Volume(大量)
  2. Velocity(高速)
  3. Variety(多样)
  4. value(价值密度的高低于数据总量成反比)

大数据应用场景

抖音、京东、零售、仓储(京东物流)、保险、金融、房产等等等


二、hadoop-概念


1.什么是hadoop

什么是hadoop

  1. Apache基金会分布式基础架构
  2. 主要解决海量数据的存储、分析计算圈
  3. 广义上Hadoop指的是Hadoop生态圈

2.hadoop的发展

hadoop的发展


image-20220809134704228


3.hadoop发行版本

hadoop发行版本

  1. Apache版本,最原始基础版本,入门学习友好
  2. Cloudera版本,内部集成了很多大数据框架,对应产品CDH
  3. Hortonwork版本,文档较好、对应HDP

4.hadoop优势

hadoop优势

  1. 高可用:底层维护多个数据副本,既视节点存储故障,也不会导致数据丢失
  2. 高扩展性:在集群分配任务数据,可方便扩展结点(动态扩增)
  3. 高效性:并行工作,加快任务处理速度
  4. 高容错性:自动将失败的任务重新分配

5.hadoop组成

hadoop组成

重要组件:MapReduce、HDFS、common、Yarn

在这里插入图片描述

HDFS:分布式文件存储系统

  • HDFS:分布式文件存储系统
    1. NameNode:记录每一个文件块的索引位置
    2. DataNode:具体存储数据
    3. 2NN:NameNode的备份节点,防止NameNode停机造成文件索引位置丢失(每隔一段时间就备份NameNode)
    4. 在这里插入图片描述

YARN:Hadoop的资源管理器

  • 组件
    1. Resource Manager(管理整个集群资源)
    2. Node Manager(单节点资源管理)
    3. client、(多客户端任务提交)
    4. Application Manager(单节点任务管理)
    5. Container (容器)
  • 任务概述
    1. client客户端请求任务,
    2. ResourceManager(集群资源管理器)分配任务,
    3. NodeManager(节点资源管理器)处理任务
    4. NodeManager(节点)使用虚拟化,可以创建Container (容器),类似docker,client提交的任务在Container容器中执行
    5. 假设当前节点NodeManager-1,无法处理,需要跟多节点分配资源一起处理,可以向ResourceManager申请
    6. 在这里插入图片描述

MapReduce:任务计算,将计算分为Map和Reduce两个阶段

  • Map并行处理输入数据
  • Reduce阶段对Map结果进行汇总
6.Hadop体系

Hadoop体系

在这里插入图片描述

三、hadoop-环境准备

模板虚拟机准备

1.虚拟机环境准备
  1. 使用VMware
  2. 配置虚拟机参数
  3. 使用centos7镜像
  4. 安装centos镜像

一、选择语言、设置时间


image-20220809163831624


二、选择了最小安装

https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220809165239955.png


三、安装位置选择了自定义分区,选“我要配置分区”,点击完成,进入第二张图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xfxYgZkd-1660122903282)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220809165605493.png)]

点击加号:设置/boot是开机初始化分配的资源,设置/swap是设置虚拟内存,符号 / 表示整个空间,分配剩余资源

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fYmTijw0-1660122903283)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220809165532710.png)]

后面还有设置密码等 安装内容步骤,大同小异,看个人资源和喜好进行安装

配置VMware

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CRT33w77-1660122903285)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810110728359.png)]

配置子网网段等信息

https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810110847544.png

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zJ4WL75c-1660122903288)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810110905300.png)]

配置windows 网络 VMnet8

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BvDVGxxw-1660122903289)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810111102231.png)]

centos中,vim 或者vi vi /etc/sysconfig/network-scripts/ifcfg-ens33

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9YJAMbkK-1660122903290)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810112303416.png)]

检查主机名字,centos初始化安装的时候可以设置,如果没有是设置,可以使用vim修改

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cVwaSkdB-1660122903291)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810112428973.png)]

vim /etc/hosts 添加节点ip 和对应的主机变量名称

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SN2XerSQ-1660122903293)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810112627187.png)]

最后重启,ping 百度-查看网络是否成功

2.软件环境准备
yum  install -y epel-release //安装红帽系列软件包
service firewalld stop //关闭防火墙
vim /etc/sudoers


NOPASSWD:ALL 切换用户不用输入密码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nPOIxybT-1660122903294)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810140922156.png)]

创建文件夹,给当前用户授权

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7Dn9YE2A-1660122903295)(https://raw.githubusercontent.com/qq789aa134/typora-image/main/iamg/image-20220810141700881.png)]

最新安装没有安装jdk

工具

yum install -y net-tools //ifconfig 命令工具
yum install -y vim
userdd zhangsan //添加用户
su zhangsan // 切换到用户

克隆

使用VMware 克隆,;选择完整克隆,

image-20220810144009657

进入克隆的资源服务器,修改一下文件,只需要修改

/etc/sysconfig/network-scripts/ifcfg-ens33 --修改ip ( IPADDR )

/etc/hostname 修改name节点,对应 /etc/hosts 中的节点名字
在这里插入图片描述


3.安装JDK

安装JDK

链接: https://pan.baidu.com/s/1L4FQyxRJCWMAGcVX9y4MTg?pwd=vuwg 提取码: vuwg

  1. 下载jdk的tarz Linux安装包
  2. 安装JDK
tar -zxvf jdk-8u212-linux-x64.tar.gz  -C  /opt/module/

配置环境变量

vim /etc/profile.d/myJava_home.sh //创建一个myJava_home.sh的shell执行文件

\#JAVA_HOME 
export JAVA_HOME=/opt/module/jdk1.8.0_212                                                                                     
export PATH=$PATH:$JAVA_HOME/bin   
  1. 执行:cat /etc/profile
  2. 观摩代码,其中,Linux会直接循环读取/etc/profile.d/目录下的脚本,一般公司都是这样的配置
  3. 我们将自己写的.sh脚本文件,放到/etc/profile.d/ 下。然后重启或者 source /etc/profile.d/

#关键代码

for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
    if [ -r "$i" ]; then
        if [ "${-#*i}" != "$-" ]; then 
            . "$i"
        else
            . "$i" >/dev/null
        fi
    fi
done

#整段代码

# /etc/profile

# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc

# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.

pathmunge () {
    case ":${PATH}:" in
        *:"$1":*)
            ;;
        *)
            if [ "$2" = "after" ] ; then
                PATH=$PATH:$1
            else
                PATH=$1:$PATH
            fi
    esac
}


if [ -x /usr/bin/id ]; then
    if [ -z "$EUID" ]; then
        # ksh workaround
        EUID=`/usr/bin/id -u`
        UID=`/usr/bin/id -ru`
    fi
    USER="`/usr/bin/id -un`"
    LOGNAME=$USER
    MAIL="/var/spool/mail/$USER"
fi

# Path manipulation
if [ "$EUID" = "0" ]; then
    pathmunge /usr/sbin
    pathmunge /usr/local/sbin
else
    pathmunge /usr/local/sbin after
    pathmunge /usr/sbin after
fi

HOSTNAME=`/usr/bin/hostname 2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
    export HISTCONTROL=ignoreboth
else
    export HISTCONTROL=ignoredups
fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

# By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
    umask 002
else
    umask 022
fi

for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
    if [ -r "$i" ]; then
        if [ "${-#*i}" != "$-" ]; then 
            . "$i"
        else
            . "$i" >/dev/null
        fi
    fi
done

unset i
unset -f pathmunge
4.安装Hadoop

解压,配置编辑环境变量

链接: https://pan.baidu.com/s/1ICrgitJ7WnZNYXTIgDgeRg?pwd=h6j2 提取码: h6j2

tar -zxvf hadoop-3.1.3.tar.gz  -C /opt/module/     

vim /etc/profile.d/myJava_home.sh //创建一个myJava_home.sh的shell执行文件,写入以下配置,写完直接保存

#HAdOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=#PATH:$HADOOP_HOME/sbin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值