一、虚拟机配置

1.网络环境配置

[root@localhost]# cd /etc/sysconfig/network-scripts

[root@localhost network-scripts]# vi ifcfg-ens33

[root@localhost network-scripts]# service network restart

[root@localhost network-scripts]# ip addr

[root@localhost network-scripts]# ping www.baidu.com

2.主机名配置

[root@localhost network-scripts]# hostname

[root@localhost network-scripts]# hostnamectl set-hostname hadoop001

[root@localhost network-scripts]# hostname

3.主机名与ip地址建立映射关系

[root@localhost ]# vi /etc/hosts

[root@localhost ]# ping hadoop001

三、远程连接虚拟机

1.远程连接

2.新建目录(用于后续软件包下载与安装)

[root@hadoop001 ]# mkdir /export/        (新建目录)

[root@hadoop001 export ]# mkdir data     (存放数据文件)

[root@hadoop001 export ]# mkdir software  (存放服务)

[root@hadoop001 export ]# mkdir servers   (存放安装包)

四、克隆虚拟机

1.链接克隆两台虚拟机修改网络配置重启网络配置

[root@hadoop001 ~]# cd /etc/sysconfig/network-scripts

[root@hadoop001 network-scripts]# vi ifcfg-ens33

Hadoop003进行同样操作且修改主机名

远程连接成功

连接成功如上图所示

2.与其他两台建立映射

[root@hadoop001 ]# vi /etc/hosts

3.拷贝hosts文件到其他虚拟机中

[root@hadoop001 ]# scp /etc/hosts hadoop002:/etc

[root@hadoop001 ]# scp /etc/hosts hadoop003:/etc

4.与主机建立映射

在notepad++hosts文件下添加以下信息

五、ssh进行三台虚拟机相互免密登录操作

1.进入ssh中生成公钥

[root@hadoop001 .ssh]# ssh-keygen -t rsa

2.查看生成文件

3.拷贝到hadoop001,hadoop002,hadoop003上

[root@hadoop001 .ssh]# ssh-copy-id hadoop001

[root@hadoop001 .ssh]# ssh-copy-id hadoop002

[root@hadoop001 .ssh]# ssh-copy-id hadoop003

4.监测是否能免密登录成功

[root@hadoop001 .ssh]# ssh hadoop001

[root@hadoop001 .ssh]# exit

[root@hadoop001 .ssh]# ssh hadoop002

[root@hadoop001 .ssh]# exit

[root@hadoop001 .ssh]# ssh hadoop003

[root@hadoop001 .ssh]# exit

  六、安装jdk

1.安装ftp工具

将安装包拖拽进入虚拟机

2.解压

[root@hadoop001 software]# tar -xzvf jdk-linux-x64.tar.gz -C /export/servers/

3.配置环境变量

[root@hadoop001 jdk1.8.0_131]# vi /etc/profile

4.使环境变量起作用

[root@hadoop001 jdk1.8.0_131]# source /etc/profile

5.查看是否配置成功

[root@hadoop001 jdk1.8.0_131]# java -version

七、安装hadoop

1.上传压缩包

2.解压压缩包

[root@hadoop001 software]# tar -xzvf hadoop-3.1.4.tar.gz -C /export/servers

解压成功

3.配置环境变量

[root@hadoop001 servers]# source /etc/profile(使环境变量起作用)

4.配置成功

八、配置hadoop主节点文件

1.配置的文件结构

使用notepad++编辑器

2.配置hadoop-env.sh文件

3配置core-site.xml文件

4.配置mapred-site.xml文件

5.配置yarn-site.xml文件

6.配置workers文件

九、启动hadoop集群

1.分发配置

a)将配置好的jdk,hadoop分发给hadoop002,hadoop003

[root@hadoop001 servers]# scp -r /export/servers/ hadoop002:/export/

[root@hadoop001 servers]# scp -r /export/servers/ hadoop003:/export/

b)分发环境变量配置文件

[root@hadoop001 servers]# scp /etc/profile hadoop002:/etc

[root@hadoop001 servers]# scp /etc/profile hadoop003:/etc

c)重启所有虚拟机环境变量配置

d)格式化集群系统

[root@hadoop001 servers]# hdfs namenode -format

此时hadoop存储的目录结构

2.启动hadoop集群

a)查看java进程(jps)

[root@hadoop001 servers]# jps

说明目前没有启动java进程

b)启动hdfs

[root@hadoop001 servers]# start-dfs.sh

启动出错需要修改配置

添加root用户的启动权限

添加以下内容

export HDFS_NAMENODE_USER=root

export HDFS_DATANODE_USER=root

export HDFS_SECONDARYNAMENODE_USER=root

export YARN_RESOURCEMANAGER_USER=root

export YARN_NODEMANAGER_USER=root

 重新启动

 c)出现错误

SecondaryNameNode应该在hadoop002上

错误解决返回查看配置文件

发现hdfs-site.xml文件并未修改配置

添加如下配置

修改后重新启动hdfs

 d)启动yarn

[root@hadoop001 servers]# start-yarn.sh

十、hadoop集群测试

1.防火墙修改

[root@hadoop001 ~]# firewall-cmd --state

暂时关闭防火墙

[root@hadoop001 ~]# systemctl stop firewalld

永久禁用防火墙

[root@hadoop001 ~]# systemctl disable firewalld

2.使用UI查看hadoop

a)查看hdfs

有两种端口方式查看hdfs(9870)

查看hdfs(50070)

需要在notepad++上将以下注释重新解除

之后可以用50070端口号查看

 b)查看yarn

3.Hdfs shell 命令的使用

[root@hadoop001 ~]# hdfs dfs -ls /

[root@hadoop001 ~]# hdfs dfs -mkdir /test

在ui下查看

上传本地文件

[root@hadoop001 ~]# hdfs dfs -put hello.java /test

上传成功

 4.案例:Hadoop集群的计算使用-单词计数

一个maperduce的单词计算程序的案例

a)转到该目录下

[root@hadoop001 hadoop-3.1.4]# cd /export/servers/hadoop-3.1.4/share/hadoop/mapreduce

b)在当前文件夹新建两个文件

[root@hadoop001 mapreduce]# vi a.txt

[root@hadoop001 mapreduce]# vi b.txt

c)在hadoop集群根目录下创建input文件夹

[root@hadoop001 mapreduce]# hdfs dfs -mkdir /input

[root@hadoop001 mapreduce]# hdfs dfs -ls /

d)将刚才linux主机下新建的a.txt,b.txt两个文件上传至集群input文件夹中

[root@hadoop001 mapreduce]# hdfs dfs -put a.txt /input

[root@hadoop001 mapreduce]# hdfs dfs -put b.txt /input

e)在hadoop集群上执行单词统计操作

[root@hadoop001 mapreduce]# hadoop jar hadoop-mapreduce-examples-3.1.4.jar wordcount /input /output

查看集群操作

f)解决错误

查看错误信息

查看hadoop classpath

[root@hadoop001 ~]# hadoop classpat

修改yarn-site.xml文件

 将更改后的文件分发给其他主机

关闭yarn

重新启动yarn

重新输入单词计数指令重新查看运行操作

运行成功的结果

查看结果

运用shell命令查看

[root@hadoop001 ~]# hdfs dfs -ls /output

[root@hadoop001 ~]# hdfs dfs -get /output/part-r-00000

[root@hadoop001 ~]# cat part-r-00000

5.案例:计算PI值

[root@hadoop001 mapreduce]# hadoop jar hadoop-mapreduce-examples-3.1.4.jar pi 2 500

查看进程

结果如图

至此 hdfs集群初步搭建完成,且具有基本功能。

开启你的hadoop学习之旅吧。

Hadoop学习之hdfs集群搭建详解相关推荐

  1. Linux的企业-Codis 3集群搭建详解

    Codis 3集群搭建详解 Codis 3介绍 对于Redis集群方案有好多种,基本常用的就是twemproxy,codis.redis cluster这三种解决方案,本人有幸工作中都大量使用过,各有 ...

  2. mysql cluster rpm包的作用_MySQL之——MySQL Cluster集群搭建详解(基于RPM安装包)

    1.下载MySQL-cluster 7.3.7 http://dev.mysql.com/downloads/cluster/ 2.环境清理及安装 1)清理CentOS6.5自带的mysql服务,其中 ...

  3. Ceph分布式文件系统集群搭建详解

    1.Ceph分布式文件系统简介 Ceph是一种为优秀的性能.可靠性和可扩展性而设计的统一的.分布式文件系统. Ceph 独一无二地在一个统一的系统中同时提供了对象.块.和文件存储功能. 基开发目标是: ...

  4. zookeeper + kafka集群搭建详解

    文章目录 一.消息队列介绍 1.1 为什么需要消息队列 (MO) 1.2 使用消息队列的好处 (1)解耦 (2)可恢复性 (3)缓冲 (4)灵活性 & 峰值处理能力 (5)异步通信很多时候,用 ...

  5. linux 上elasticsearch集群搭建详解,手把手教学(tar下载包)

    1.安装jdk: 由于es是基于java的,所以先安装jdk: yum install java-1.8.0-openjdk* -y 此命令install结束后不用再去配置环境变量了,直接输入java ...

  6. MySQL分布式集群搭建详解

    搭建MySQL分布式集群,例如:利用MySQL cluster ,MySQL proxy,MySQL replication,drdb等等,有人会问MySQL集群意义是什么呢?为一个数据库减轻负担,说 ...

  7. Hadoop HA 高可用集群搭建

    Hadoop HA 高可用集群搭建 一.首先配置集群信息 1 vi /etc/hosts 二.安装zookeeper 1.解压至/usr/hadoop/下 1 tar -zxvf zookeeper- ...

  8. Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)

    一.服务器环境 主机名 IP 用户名 密码 安装目录 master 192.168.142.124 root xxx /usr/hadoop-2.6.5/ slave1 192.168.142.125 ...

  9. Python +大数据-Hadoop生态-Linux(二)-集群搭建和安装

    Python +大数据-Hadoop生态-Linux(二)-集群搭建和安装 今日课程学习目标 1.掌握Linux用户.权限管理 2.掌握Linux常用系统命令 3.掌握服务器集群环境搭建 4.了解sh ...

  10. Elastic search入门到集群实战操作详解(原生API操作、springboot整合操作)-step1

    Elastic search入门到集群实战操作详解(原生API操作.springboot整合操作)-step2 https://blog.csdn.net/qq_45441466/article/de ...

最新文章

  1. 80% 应聘者不知道的面试加分项
  2. Cacti性能优化和监控H3C交换机
  3. 介绍sendmail中mail relay的规则
  4. WPF基础入门2 - WPF窗口类和垂直布局面板基本使用
  5. linux——管理系统存储之设备分区:MBR分区、GPT分区、swap的分区的设定
  6. 通过sharepoint 客户脚本,验证列表添加页面上的时间
  7. 80-30-040-原理-React模式-简介2
  8. 揭开 Python 内存分配时的小秘密!
  9. 修改web.conf不重启服务的方法
  10. Java棘手面试问题
  11. shell第二次练习
  12. 过去的一年,2013!
  13. python入口文件_python常用模块:项目目录规范、定制程序入口、自定义模块、引用变量、time和datetime模块...
  14. 关于调用Thread.sleep() 哪条线程休眠问题
  15. 教你ogg怎么转mp3格式
  16. 网站被挂马的解决方案
  17. ssm毕设项目焦虑自测与交流平台k43cf(java+VUE+Mybatis+Maven+Mysql+sprnig)
  18. 520|测一测你和ta的夫妻相
  19. 总结一下:运维工程师面试
  20. 独立思考Justic:Free to Choose and Who owns me

热门文章

  1. 硬件探索——STM32F4通过SPI总线读取GMR(磁编码器)
  2. 电影院开工在即,第一部电影就看他
  3. IDEA+Java控制台实现教材管理系统
  4. 一级计算机第65套题,全国计算机一级考试题库(附答案).pdf
  5. 使用PickerView
  6. #洛谷oj:P1197星球大战
  7. python3-matplotlib手册
  8. 全网最全360无死角编写软件测试用例模板【建议收藏】
  9. 安装福昕高级PDF编辑器提示安装错误解决办法
  10. Illustrator导入word中的visio图片方法