AmosCloud

Library

Have a Question?

If you have any question you can ask below or enter what you are looking for!

2020年5月20日_day04_Hadoop入门

hadoop入门

  • Hadoop是Apache的一个顶级项目

  • hadoop.apache.org

1.版本

  1. Apache原生版本(github可以直接下载到源代码)

    • 特点:所有代码开源免费,我们可以随意根据自己的需要修改
    • 适用:学习者,公司有比较高端的定制化需求需要自己二次开发
  2. Cloudera发行的CDH
    Cloudera在大型互联网企业中用的较多。
    官网地址: https://www.cloudera.com/

  3. Hortonworks发行的HDP
    文档较为完整。
    官网地址: https://www.cloudera.com/

  4. 华为发行的 FusionInsight HD
    只在和华为合作比较紧密的公司使用
    商用不是非常成熟

2. 组件

  1. HDFS 分布式的文件系统
  2. MapReduce 分布式离线计算框架
  3. Yarn 分布式资源管理系统
    • 资源(计算资源):cpu和内存

2.1 NameNode(nn)

  • 存储文件的元(meta) 数据,如文件名,文件目录结构,文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和块所在的DataNode等。

  • 块(block): 因为一个文件可能非常大,一台机器存不下,所以我们把文件以相同的大小分成多个小的块,块大小默认128MB,存储在不同机器上

2.2 DataNode(dn)

  • 在本地文件系统存储文件块数据,以及块数据的校验和。

3. hadoop安装环境准备

  1. 设置静态IP
# 1.找到网卡名
ifconfig
# 2.修改配置文件为静态
vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
  1. 修改主机名

    #查看主机名
    hostname
    #设置主机名
    hostnamectl set-hostname 主机名
    会立即生效,但是需要重新登陆
  2. 关闭防火墙

    
    #端口port
    一般计算机一共有0-65535端口
    端口又分别对应一个协议
    1000以下的是一些知名端口
    ssh 22
    http 80
    https 443
    windows远程连接 3389

查看防火墙状态

systemctl status firewalld

关闭防火墙

systemctl stop firewalld

关闭自动启动

systemctl disable firewalld


4. 安装JDK

```shell
#上传安装包
 上传到/opt目录
#解压
 tar zxvf ***.tar.gz
#修改目录名字
 mv jdk1.8.0_181 jdk1.8

#修改环境变量

/etc/profile

1.声明一个变量叫JAVA_HOME
export JAVA_HOME=/opt/jdk1.8
2.把JAVA_HOME添加到PATH里
export PATH=$JAVA_HOME/bin:$PATH
3.刷新/etc/profile
source /etc/profile
4.检验
java -version

4. hadoop三节点完全分布式搭建

4.1 准备三台Centos7的服务器(虚拟机)

4G内存 每个虚拟机1G内存
8G内存 每个虚拟机1.5-2G内存
16G或以上 每个4G

  • Centos7关闭图形化界面
    systemctl set-default multi-user.target
    reboot

  • 克隆

  • 修改每台机器的ip和主机名

发表评论

电子邮件地址不会被公开。 必填项已用*标注