Hadoop是一个开源的分布式系统框架

一.集群准备

1. 三台虚拟机,操作系统Centos7,三台主机名分别为k1,k2,k3,NAT模式

2.节点分布

k1: NameNode DataNode ResourceManager NodeManager
        k2: SecondNameNode DataNode NodeManager
        k3 : DataNode NodeManager

3.安装包准备

jdk-8uxx-linux-x64.rpm
        hadoop-2.7.1.tar.gz

二.Linux准备

1.关闭防火墙

systemctl status firewalld  //查看防火墙状态
        systemctl stop firewalld    //关闭防火墙
        systemctl disable firewalld   //防火墙开机不启动

2.修改主机名

hostnamectl set-hostname 主机名
        注:如果克隆的虚拟机,那么需要修改主机名

3.IP设置

编辑:vi /etc/sysconfig/network-scripts/ifcfg-ens33

文件中修改 :
BOOTPROTO=none
ONBOOT=yes [开机启动网卡]
文件中添加 : 
IPADDR=xxx  [IP地址]
NETMASK=xxx  [子网掩码]
GATEWAY=xxx  [网关] 
DNS1=xxx

重启网卡 : systemctl restart network
        注 : 克隆的虚拟机需要修改IP地址,删除UUID

4.添加hosts文件

编辑:vi /etc/host

文件中添加:
IP地址 主机名
IP地址 主机名
IP地址 主机名

5.安装JDK

安装包 : jdk-8uxx-linux-x64.rpm
        安装     : rpm -ivh jdk-8uxx-linux-x64.rpm
        配置环境变量 : vi /etc/profile

           文件中添加 : 
                JAVA_HOME=/usr/java/jdk
                PATH=$PATH:$JAVA_HOME/bin:
                CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:

  环境变量生效 : source /etc/profile
        查看:java -version

6.SSH免密

1. ssh-keygen
            之后一直回车就可以 
        2.ssh-copy-id 主机名 
            三台机子都需要进行免密
        3.ssh 主机名
             测试免密是否成功

三.HADOOP环境搭建

1.解压缩

安装包 : hadoop-2.7.1.tar.gz
            解压缩 : tar -zxvf hadoop-2.7.1.tar.gz -C /opt/apps

2.修改环境变量

编辑 :vi /etc/profile

文件中添加 : 
  export HADOOP_HOME=/opt/apps/hadoop.2.7.1/
  export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:

3.环境变量生效

source/etc/profile

四.HADOOP配置文件

1.进入hadoop配置文件目录

cd /opt/apps/hadoop.2.7.1/etc/hadoop

2.修改配置文件 : hadoop-env.sh

vi hadoop-env.sh     
    修改文件中JAVA_HOME,改为自己JDK的路径

3.配置文件 :core-site.xml

vi core-site.xml  添加如下内容:

<property>
            <name>fs.defaultFS</name>
            <value>hdfs://主机名:8020</value>  //NameNode节点主机名
            </property>
            <property>
            <name>io.file.buffer.size</name>
            <value>4096<value>
            </property>
            <property>
            <name>hadoop.tmp.dir</name>
            <value>/home/hadoopdata/bigdata/tmp</value>
            </property>

4.配置文件 : hdfs-site.xml

vi hdfs-site.xml 添加如下内容:

<property>
            <name>dfs.namenode.name.dir</name>
            <value>file:///home/hadoopdata/dfs/name</value>
            </property>
            <property>
            <name>dfs.datanode.data.dir</name>
            <value>file:///home/hadoopdata/dfs/data<>
            </property>
            <property>
            <name>dfs.http.address</name>
            <value>NameNode节点主机名:50070</value>
            </property>
            <property>
            <name>dfs.secondary.http.address</name>
            <value>SecondNameNode节点主机名:50090</value>
            </property>
            <property>
            <name>dfs.replication</name>
            <value>3</value>
            </property>
            <property>
            <name>dfs.webhdfs.enabled</name>
            <value>true</value>
            </property>
            <property>
            <name>dfs.permissions</name>
            <value>false</value>      
            </property>

5.配置文件 : salves

vi salves 添加以下内容(三台机器的主机名) :

hostname1
            hostname2
            hostname3

6.配置文件 : mapred-site.xml

mv mapred-site.xml.template mapred-site.xml  (进行重命名)
        vi mapred-site.xml  添加以下内容 :

<property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
            <final>true</final>  
            </property>
            <property> 
            <name>mapreduce.jobhistory.address</name>
            <value>历史服务:10020</value>
            </property>
            <property>
            <name>mapreduce.jobhistory.webapp.address</name>
            <value>历史服务节点主机名:19888</value>
            </property>

7.配置文件 : yarn-site.xml

vi yarn-site.xml 添加如下内容 :

<property>
            <name>yarn.resourcemanager.hostname</name>
            <value>ResourceManager节点主机名</value>
            </property>
            <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
            </property>
            <property>
            <name>yarn.resourcemanager.address</name>
            <value>ResourceManager节点主机名:8032</value>
            </property>
            <property>
            <name>yarn.resourcemanager.scheduler.address</name>
            <value>ResourceManager节点主机名:8030</value>
            </property>
            <property>
            <name>yarn.resourcemanager.resource-tracker.address</name>      
            <value>ResourceManager节点主机名:8031</value>
            </property>
            <property>
            <name>yarn.resourcemanager.admin.address</name>
            <value>ResourceManager节点主机名:8033</value>
            </property>
            <property>
            <name>yarn.resourcemanager.webapp.address</name>
            <value>ResourceManager节点主机名:8088</value>
            </property>
            <property>
            <name>yarn.client.failover-proxy-provider</name>   
            <value>org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider</value>              </property>
            <property>
            <name>yarn.web-proxy.address</name>
            <value>ResourceManager节点主机名:9989</value>
            </property>

五.Hadoop启动【Hadoop分发到别的机器,三台机器都要有Hadoop】

1.格式化NameNode

hdfs namenode -format
        注 : 如出现 [name has been successfully formated] 则格式化成功

2.启动进程

start-dfs.sh     
        start-yarn.sh

3.查看节点 ------  jps

4.创建wordcount.txt 验证Yarn

yarn jar /root/app/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /hello.txt /out/1

六.谢谢

本人还处于小白阶段,可能写的地方可能让人晦涩,还请多见谅,我还会继续努力!

Hadoop分布式集群搭建_1的更多相关文章

  1. Hadoop分布式集群搭建

    layout: "post" title: "Hadoop分布式集群搭建" date: "2017-08-17 10:23" catalog ...

  2. Hadoop分布式集群搭建hadoop2.6+Ubuntu16.04

    前段时间搭建Hadoop分布式集群,踩了不少坑,网上很多资料都写得不够详细,对于新手来说搭建起来会遇到很多问题.以下是自己根据搭建Hadoop分布式集群的经验希望给新手一些帮助.当然,建议先把HDFS ...

  3. hadoop分布式集群搭建(2.9.1)

    1.环境 操作系统:ubuntu16 jdk:1.8 hadoop:2.9.1 机器:3台,master:192.168.199.88,node1:192.168.199.89,node2:192.1 ...

  4. hadoop分布式集群搭建前期准备(centos7)

    那玩大数据,想做个大数据的从业者,必须了解在生产环境下搭建集群哇?由于hadoop是apache上的开源项目,所以版本有些混乱,听说都在用Cloudera的cdh5来弄?后续研究这个吧,就算这样搭建不 ...

  5. [过程记录]Centos7 下 Hadoop分布式集群搭建

    过程如下: 配置hosts vim /etc/hosts 格式: ip hostname ip hostname 设置免密登陆 首先:每台主机使用ssh命令连接其余主机 ssh 用户名@主机名 提示是 ...

  6. Centos 7下Hadoop分布式集群搭建

    一.关闭防火墙(直接用root用户) #关闭防火墙 sudo systemctl stop firewalld.service #关闭开机启动 sudo systemctl disable firew ...

  7. 使用Docker在本地搭建Hadoop分布式集群

    学习Hadoop集群环境搭建是Hadoop入门必经之路.搭建分布式集群通常有两个办法: 要么找多台机器来部署(常常找不到机器) 或者在本地开多个虚拟机(开销很大,对宿主机器性能要求高,光是安装多个虚拟 ...

  8. 分布式计算(一)Ubuntu搭建Hadoop分布式集群

    最近准备接触分布式计算,学习分布式计算的技术栈和架构知识.目前的分布式计算方式大致分为两种:离线计算和实时计算.在大数据全家桶中,离线计算的优秀工具当属Hadoop和Spark,而实时计算的杰出代表非 ...

  9. 大数据系列之Hadoop分布式集群部署

    本节目的:搭建Hadoop分布式集群环境 环境准备 LZ用OS X系统 ,安装两台Linux虚拟机,Linux系统用的是CentOS6.5:Master Ip:10.211.55.3 ,Slave ...

随机推荐

  1. SQL Server Mobile/Compact Edition 简单介绍

    除了SQL Server Express,SQL Server还有个更轻量级的版本:SQL Server Compact Edition,容易让人想起Windows Compact Edition ( ...

  2. ppt基本操作

    一.概述及作用 ppt是一种表达用户思想的有力工具,无论是介绍一个计划,介绍一个新的产品,或是员工报告,员工培训,只要事先做一个演示文稿,那么阐述的过程就会变得见面,简明和清晰. 二.界面构成 演示文 ...

  3. Java学习---程序设计_基础题[1]

    180813 补全没有的答案! 0. 数组排序大全[冒泡/选择/快速/插入] package com.ftl; import java.io.BufferedReader; import java.i ...

  4. Android 通过触摸动态地在屏幕上画矩形

    需求概述: 在屏幕上用手指画出一个区域,返回所圈的区域坐标. 技术实现: 自定义View,设置画笔及对应参数,在onTouchEvent()回调函数里,对触摸事件进行判断.画出矩形图形. 代码: 自定 ...

  5. 类库文件引用web服务报错解决方法-在 ServiceModel 客户端配置部分中,找不到引用协定的默认终结点元素

    由于需求,需要改造原有应用,因原有应用是写在console下面的,现在需要开放至web下, 想到BIZ层应用代码都是一样的,又不想在web下在添加引用,而重复写代码,故将原有的console下的服务和 ...

  6. [EffectiveC++]导读 default构造函数

    class B { public: explicit B(int x = 0,bool b = true); //default构造函数 }; explicit可以阻止用来执行隐式类型转换,但是可以用 ...

  7. [UOJ 0034] 多项式乘法

    #34. 多项式乘法 统计 描述 提交 自定义测试 这是一道模板题. 给你两个多项式,请输出乘起来后的多项式. 输入格式 第一行两个整数 nn 和 mm,分别表示两个多项式的次数. 第二行 n+1n+ ...

  8. CocoaPods -- ios项目中安装和使用CocoaPods

    CocoaPods是什么? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而 ...

  9. 定义类、System.Object对象、构造函数与析构函数、抽象类与静态类

    一.类定义 class MyClass { //类成员 } 1.访问级别 默认访问级别为internal(内部类),也可以是public(公共类) internal(内部类):当前项目中的代码才能访问 ...

  10. yarn-site.xml

    要保证spark on yarn的稳定性,避免报错,就必须保证正确的配置,尤其是yarn-site.xml. 首先来理解一下yarn-site.xml各个参数的意义(引自董的博客) 注:下面<v ...