(一)安装JDK

1. 下载JDK,解压到相应的路径

2.  修改 /etc/profile 文件(文本末尾添加),保存

sudo vi /etc/profile
# 配置 JAVA_HOME
export JAVA_HOME=/home/komean/workspace/JDK/jdk1.8.0_181
export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar # 设置PATH
export PATH=${JAVA_HOME}/bin:$PATH:

3.  让修改后的配置立即生效

# 让修改的配置立即生效
source /etc/profile

(二)初步搭建Hadoop

1.  下载hadoop-2.7.7.tar.gz,解压到相应的路径下

2.  修改 hadoop-2.7.7/etc/hadoop 路径下的:slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml 、mapred-env.sh、hadoop-env.sh、yarn-env.sh

(1)文件 slaves,将作为 DataNode 的主机名写入该文件,每行一个,默认为 localhost,所以在伪分布式配置时,节点即作为 NameNode 也作为 DataNode。分布式配置可以保留 localhost,也可以删掉,让 Master 节点仅作为 NameNode 使用。

localhost
slave1
slave2

(2)文件 core-site.xml 改为下面的配置:

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/komean/workspace/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>

(3)文件 hdfs-site.xml,dfs.replication 一般少于节点数,所以这里 dfs.replication 的值还是设为 2:

<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:50090</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/komean/workspace/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/komean/workspace/hadoop/tmp/dfs/data</value>
</property>
</configuration>

(4)文件 mapred-site.xml ,需要先拷贝mapred-site.xml.template:

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

然后mapred-site.xml配置修改如下:

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>

(5)文件 yarn-site.xml

<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

(6)mapred-env.shhadoop-env.shyarn-env.sh 文件 修改相应的JAVA_HOME

export JAVA_HOME=/home/komean/workspace/JDK/jdk1.8.0_181

3.  修改 /etc/profile 文件(文本末尾添加),保存

# set JAVA_HOME
export JAVA_HOME=/home/komean/workspace/JDK/jdk1.8.0_181
export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar # set HADOOP_HOME
export HADOOP_HOME=/home/komean/workspace/hadoop/hadoop-2.7.7
export PATH=${JAVA_HOME}/bin:$PATH:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin

让修改后的配置立即生效

# 让修改的配置立即生效
source /etc/profile

(三)克隆两台节点虚拟机

192.168.105.25 slave1
192.168.105.35 slave2

(1)配置IP (保持在一个网段下)(参照虚拟机中CentoOs配置ip且连网  第4点

(2)修改 /etc/hosts 文件 (注意:克隆的,第一个是localhost.localdomain,重复了,修改为localhost)

127.0.0.1       localhost       localhost.localdomain   localhost4      localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.105.15 master
192.168.105.25 slave1
192.168.105.35 slave2

(四)配置SSH无密登录

1.  安装SSH(所有节点都需要)

# 安装
sudo yum install openssh-server
# 重启
service sshd restart

2.  对master节点生成密钥对(只是master节点)运行 ssh-keygen -t rsa 后,不要输入密码,回车

# 生产密钥
cd .ssh
ssh-keygen -t rsa
# 将公钥id_rsa.pub追加到授权的key中
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 修改authorized_keys的权限
chmod 600 ~/.ssh/authorized_keys

3.  将authorized_keys文件以及id_rsa文件用scp命令分别复制到其他2个节点(依旧是在master上操作)

scp ~/.ssh/authorized_keys komean@192.168.105.25:~/.ssh
scp ~/.ssh/authorized_keys komean@192.168.105.35:~/.ssh

4.  测试 ssh slave1 或者ssh slave2

(五)关闭防火墙(所有节点),在开启 Hadoop 集群之前,需要关闭集群中每个节点的防火墙。有防火墙会导致 ping 得通但 telnet 端口不通,从而导致 DataNode 启动了,但 Live datanodes 为 0 的情况。

关闭防火墙
sudo service iptables stop # 关闭防火墙服务
sudo chkconfig iptables off # 禁止防火墙开机自启,就不用手动关闭了

(六)Hadoop初始化,启动所有节点

1.  启动节点(初始化别总用)

# 进入"workspace/hadoop/hadoop-2.7.7" 路径下
cd workspace/hadoop/hadoop-2.7.7 # Hadoop初始化(第一次)
# bin/hdfs namenode -format # Hadoop启动
sbin/start-all.sh # 验证
jps

2.  查看两个从节点的情况

  

3.  查看节点信息 (或者通过Web 页面看到查看 DataNode 和 NameNode 的状态:http://master:50070/)

hdfs dfsadmin -report

通过Web 页面看到查看 DataNode 和 NameNode 的状态:http://master:50070/

Centos6.10搭建Hadoop三节点分布式的更多相关文章

  1. centos6.5搭建hadoop单节点

    1.添加用户 groupadd  hadoop useradd -d /home/hadoop -m hadoop -g hadoop passwd hadoop    修改密码 付给用户sudo权限 ...

  2. hadoop备战:一台x86计算机搭建hadoop的全分布式集群

    主要的软硬件配置: x86台式机,window7  64位系统 vb虚拟机(x86的台式机至少是4G内存,才干开3台虚机) centos6.4操作系统 hadoop-1.1.2.tar.gz jdk- ...

  3. 【Hadoop环境搭建】Centos6.8搭建hadoop伪分布模式

    阅读目录 ~/.ssh/authorized_keys 把公钥加到用于认证的公钥文件中,authorized_keys是用于认证的公钥文件 方式2: (未测试,应该可用) 基于空口令创建新的SSH密钥 ...

  4. 1.如何在虚拟机ubuntu上安装hadoop多节点分布式集群

    要想深入的学习hadoop数据分析技术,首要的任务是必须要将hadoop集群环境搭建起来,可以将hadoop简化地想象成一个小软件,通过在各个物理节点上安装这个小软件,然后将其运行起来,就是一个had ...

  5. 快速搭建Hadoop及HBase分布式环境

    本文旨在快速搭建一套Hadoop及HBase的分布式环境,自己测试玩玩的话ok,如果真的要搭一套集群建议还是参考下ambari吧,目前正在摸索该项目中.下面先来看看怎么快速搭建一套分布式环境. 准备 ...

  6. Windows 10 搭建Hadoop平台

    一.环境配置 JDK:1.8. Hadoop下载地址(我选择的是2.7.6版本):https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/ ...

  7. Cassandra集群:一,搭建一个三节点的集群

    环境准备 JDK1.8 http://download.oracle.com/otn/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8 ...

  8. centos6.10搭建ELK之elasticsearch6.5.4

    1.环境准备 1.1.安装java环境版本不要低于java8 # java -version java version "1.8.0_191" Java(TM) SE Runtim ...

  9. centos6.5搭建hadoop完整教程

    https://blog.csdn.net/hanzl1/article/details/79040380 博客地址http://blog.csdn.net/pucao_cug/article/det ...

随机推荐

  1. 关于 block的一些浅识

    block的定义:“带自动变量的匿名函数” (一)写法: ^ void (int iAge){ NSLog(@"%d", iAge);}; 和C函数写法区别在于: 1) :以插入符 ...

  2. Spring学习大纲

    1.BeanFactory 和 FactoryBean? 2.Spring IOC 的理解,其初始化过程? 3.BeanFactory 和 ApplicationContext? 4.Spring B ...

  3. ZOJ - 3057 D - Beans Game(三堆威佐夫博弈)

    Beans Game Time Limit: 5 Seconds Memory Limit: 32768 KB There are three piles of beans. TT and DD pi ...

  4. 说“DPI”

    作者:马健邮箱:stronghorse_mj@hotmail.com发布:2007.03.08更新:2007.04.02 目录一.基本概念二.图像文件中的DPI三.PDG文件中的DPI四.PDF文件中 ...

  5. 用create table 命令建立表

    create table [[V.]HANKE.].MADE IN HOME (xuliehao int primary key, name varchar(20)not null, jiage fl ...

  6. appium报错信息:Could not extract PIDs from ps output. PIDS: [], Procs: ["bad pid 'uiautomator'"]”

    appium+Java 自动化测试真机测试时报错“info: [debug] Error: Could not extract PIDs from ps output. PIDS: [], Procs ...

  7. 【1】循序渐进学 Zabbix :初识与基础依赖环境搭建( LNMP )

    写在前面的话 运维监控是一个很大的话题,在这一块个人接触的比较突出的服务主要有 Nagio 和 Zabbix 两款.而这几年跳过的公司中,Zabbix 一直都是首选且唯一选择,Nagios 没遇到. ...

  8. Zookeeper学习文档

      1. Zookeeper简介 ZooKeeper是一个开源的分布式框架,提供了协调分布式应用的基本服务.它向外部应用暴露一组通用服务——分布式同步(Distributed Synchronizat ...

  9. Java基础之身份证验证

    //简约版package test; import java.util.Scanner; public class ID { /** * 匹配算法 : 1) 得到17位身份证号码与下面给出的17位 2 ...

  10. 背包 DP【洛谷P4158】 [SCOI2009]粉刷匠

    P4158 [SCOI2009]粉刷匠 windy有 N 条木板需要被粉刷. 每条木板被分为 M 个格子. 每个格子要被刷成红色或蓝色. windy每次粉刷,只能选择一条木板上一段连续的格子,然后涂上 ...