Hadoop详解(三):HDFS完全分布式环境搭建
1. 前言
本文搭建了一个由三节点(master、slave1、slave2)构成的Hadoop完全分布式集群,并通过Hadoop分布式计算的一个示例测试集群的正确性。
2. 基础集群的搭建
目的:获得一个可以互相通信的三节点集群
使用VMware安装master节点(稍后其他两个节点可以通过复制master节点的虚拟机文件创建)。
三个节点存储均为30G默认安装,master节点内存大小为1GB,单核,slave节点内存大小1GB,单核
3. 集群网络配置
本文中的集群网络环境配置如下:
ubuntu1内网IP:192.168.186.101
ubuntu2内网IP:192.168.186.102
ubuntu3内网IP:192.168.186.103
4. 集群SSH免密登陆设置
4.1 创建master用户
为三个节点分别创建相同的用户master,并在以后的操作均在此用户下操作,操作如下:
$su -#useradd -m master#passwd master
为hadoop添加sudo权限
#visudo
在该行root ALL=(ALL) ALL下添加master ALL=(ALL) ALL保存后退出,并切换回hadoop用户
#su master
注意事项:三个节点的用户名必须相同,不然以后会对后面ssh及hadoop集群搭建产生巨大影响
4.2 Host文件设置
为了不直接使用IP,可以通过设置hosts文件达到ssh slave1这样的的效果(三个节点设置相同)
$sudo vim /etc/hosts
在文件尾部添加如下行,保存后退出:
192.168.186.101 ubuntu1
192.168.186.102 ubuntu2
192.168.186.103 ubuntu3
4.3 ssh设置
设置master节点和两个slave节点之间的双向ssh免密通信,下面以master节点ssh免密登陆slave节点设置为例,进行ssh设置介绍(以下操作均在master机器上操作):
首先生成master的rsa密钥:$ssh-keygen -t rsa
设置全部采用默认值进行回车
将生成的rsa追加写入授权文件:$cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
给授权文件权限:$chmod 600 ~/.ssh/authorized_keys
进行本机ssh测试:$ssh master正常免密登陆后所有的ssh第一次都需要密码,此后都不需要密码
将master上的authorized_keys传到slave1
sudo scp ~/.ssh/authorized_keys master@ubuntu2:~/.ssh/
退出slave1:$exit
进行免密ssh登陆测试:$ssh ubuntu2
5. Java安装
目的:hadoop是基于Java的,所以要安装配置Java环境(三个节点均需要操作,以下以master节点为例)
配置JavaPATH和Java_HOME
export JAVA_HOME=/opt/softwares/java/jdk1.8.0_191export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:
6.Hadoop HDFS 安装
6.1 Hadoop的masetr节点配置
配置hadoop的配置文件core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml slaves(都在~/hadoop/etc/hadoop文件夹下)
$cd ~/hadoop/etc/hadoop
$vim core-site.xml其他文件相同,以下为配置文件内容:
core-site.xml
<configuration>
<!-- 指定HDFS namenode的通信地址 -->
<property><name>fs.defaultFS</name><value>hdfs://ubuntu1:9000</value>
</property><!-- 指定hadoop运行时产生文件的存储路径 -->
<property><name>hadoop.tmp.dir</name><value>/opt/softwares/hadoop/tmp</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property><name>dfs.replication</name><value>2</value>
</property><property><name>dfs.namenode.secondary.http-address</name><value>ubuntu1:50090</value>
</property>
</configuration
hadoop-env.sh
export JAVA_HOME=/opt/softwares/java/jdk1.8.0_191
export JAVA_HOME=/opt/softwares/java/jdk1.8.0_191
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
#Zookeeper
export ZOOKEEPER_HOME=/opt/softwares/zookeeper/zookeeper-3.4.6
#Hadoop
export HADOOP_HOME=/opt/softwares/hadoop/hadoop-2.9.2
#PATH
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ZOOKEEPER_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
7. Hadoop Namenode格式化
hdfs namenode -format (ubuntu1)
start-dfs.sh
8. 启动和关闭Hadoop HDFS
8.1 启动HDFS
启动hadoop Hdfs进程
start-dfs.sh
启动hadoop namenode进程
hadoop-daemon.sh start namenode
启动hadoop datanode进程
hadoop-daemon.sh start datanode
启动hadoop Secondarynamenode进程
hadoop-daemon.sh start secondarynamenode
8.2 关闭HDFS
关闭hadoop Hdfs进程
stop-dfs.sh
关闭hadoop namenode进程
hadoop-daemon.sh stop namenode
关闭hadoop datanode进程
hadoop-daemon.sh stop datanode
关闭hadoop Secondarynamenode进程
hadoop-daemon.sh stop secondarynamenode
Hadoop详解(三):HDFS完全分布式环境搭建相关推荐
- HDFS伪分布式环境搭建-很不错
HDFS伪分布式环境搭建 原创 ZeroOne01 2018-03-24 19:51:20 评论(0) 655人阅读 HDFS概述及设计目标 什么是HDFS: 是Hadoop实现的一个分布式文件系统( ...
- Hadoop详解(三)——MapReduce原理和执行过程,远程Debug,Writable序列化接口,MapReduce程序编写
MapReduce概述 MapReduce是一种分布式计算模型,由Google提出,主要用于搜索领域,解决海量数据的计算问题. MR由两个阶段组成:Map和Reduce,用户只需要实现map()和Re ...
- 看完就能独自把集群搭起来!Hadoop HDFS完全分布式环境搭建以及技术详解
作者 | 慢慢变成大佬 责编 | Carol 出品 | CSDN云计算(ID:CSDNcloud) 在文章开始之前,作者想要告诉大家:读懂本篇文章,能让小白快速入门,并且能够搭建完全分布式的集群,以及 ...
- Hadoop HDFS完全分布式环境搭建以及技术详解(保证没接触过大数据的小白看完就能独自把集群搭起来,并对HDFS有详细的认知)
**读懂本篇文章,能让小白快速入门,并且能够搭建完全分布式的集群,以及能对hadoop hdfs产生详细的认知,对以后的学习有很大的帮助** 我们先来了解hadoop的hdfs基本概念,熟知基本概念, ...
- 详解三种主流分布式事务方案的优劣
一.分布式事务前奏 事务:事务是由一组操作构成的可靠的独立的工作单元,事务具备ACID的特性,即原子性.一致性.隔离性和持久性. 本地事务:当事务由资源管理器本地管理时被称作本地事务.本地事务的优点就 ...
- 家用路由器研究详解入门(内含仿真环境搭建)
家用路由器研究介绍 soho路由器 常见路由器品牌 家用路由器漏洞主要四个方面 WI-FI常见加密认证方式3种 WPS一键加密技术(Wi-Fi Protected Setup) 路由器密码 后门|溢出 ...
- HDFS伪分布式环境搭建
(一).HDFS shell操作 以上已经介绍了如何搭建伪分布式的Hadoop,既然环境已经搭建起来了,那要怎么去操作呢?这就是本节将要介绍的内容:HDFS自带有一些shell命令,通过这些命令我们可 ...
- Hadoop详解以及历史版本介绍
Hadoop详解 Hadoop的介绍以及发展历史 Hadoop之父Doug Cutting Hadoop最早起源于lucene下的Nutch.Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页 ...
- Hadoop入门基础教程 Hadoop之完全分布式环境搭建
上一篇我们完成了Hadoop伪分布式环境的搭建,伪分布式模式也叫单节点集群模式, NameNode.SecondaryNameNode.DataNode.JobTracker.TaskTracker所 ...
最新文章
- Keystone创建服务实体报错HTTP401和HTTP500
- matlab 创建批量文件夹_Matlab开发Web App服务器(一)
- 使用easyexcel导出
- AI学习笔记(三)特征选择与提取、边缘提取
- 使用bat运行jar文件
- [转载]遗留系统中的RUBY中文解决方案
- LintCode 137. 克隆图
- LaTeX 引用表格、照片、公式的时候自动添加 table,fig,equ
- DSP28335 CAN通讯实验
- CCC中国强制性产品认证目录已公布 共17大类103种产品
- mumu模拟器android调试,如何使用网易mumu模拟器调试安卓程序?
- 【详解】MD5加密真的安全吗?不安全有什么解决办法?
- 头脑王者答题神器,开发思路
- 平凡的世界 田晓霞的日记 摘抄
- [golang] go中如何监听一组channels
- Calamari 安装
- http的长连接和短连接(史上最通俗!)
- neo4j报错1:因CREATE和MERGE报错
- java实现mysql还原_java代码实现mysql的备份与还原
- 【Python】计算机视觉 手掌图片穴位识别(二)