精华内容
下载资源
问答
  • Hadoop集群搭建步骤

    2015-08-12 00:24:46
    Hadoop集群搭建步骤
  • hadoop集群搭建步骤

    2018-05-21 16:34:52
    hadoop集群搭建步骤 集群规划 安装步骤:安装配置zooekeeper集群、安装配置hadoop集群、验证HDFS HA
  • 腾讯云hadoop集群搭建步骤及注意的相关问题步骤: 防火墙处理/关闭防火墙【仅在服务器安全级别要求不高的环境下进行】 配置完全分布式hadoop集群 namenode/ datanode 启动问题 1. 防火墙处理最直接的方式,关闭...

    步骤:

    1. 防火墙处理/关闭防火墙【仅在服务器安全级别要求不高的环境下进行】
    2. 配置完全分布式hadoop集群
    3. namenode/ datanode 启动问题

    1. 防火墙处理

    最直接的方式,关闭防火墙,简单省事。当然这也是笔者本人作为新手处理服务器比较简单粗暴的方式。

    sudo ufw disable

    2. 配置完全分布式hadoop集群

    注意: 修改etc/hosts文件时,会遇到修改后重启服务器还遇到unable to resolve host ***** 的问题。

    # 修改/etc/hosts
    127.0.0.1  localhost  localhost.localdomain
    10.135.98.54 node1
    10.135.80.32 node2
    10.135.47.49 node3
    10.135.153.113 node4
    
    
    #修改/etc/hostname 与集群中命名一致,以下是node1的hostname文件
    node1

    集群的搭建详细步骤可参见

    3. namenode/datanode 启动问题

    • 首先启动集群遇到如下问题,表示集群core-site.xml 中hdfs默认端口9000拒绝访问。笔者遇到这个问题,是因为在/etc/hosts配置主机名和IP时,或者在hadoop目录中的etc/hadoop下的*-site.xml文件中配置IP:Port时采用的是云服务的外网IP。
      解决方式: 腾讯云服务需要采用内网IP配置集群间通信。

      report: Call From node1-64GB/10.104.XX.XX to XXXXXXXX:9000 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused

    • 集群搭建好,运行程序出现如下问题。表示节点虽然都启动了,但是集群并不能正常运行,通信还是存在问题。
      解决方式:笔者将这个网站http://wiki.apache.org/hadoop/ConnectionRefused中给出的所有情况都排查了,发现在配置/etc/hosts时,出现主机名的多次命名。也即,在127.0.0.1后面命名主机名1,又在内网IP后面命名主机名2。所以去掉主机名1,保留主机名2就行。

      org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger: USER=XXX OPERATION=Application Finished - Failed TARGET=RMAppManager RESULT=FAILURE DESCRIPTION=App failed with state: FAILED PERMISSIONS=Application application_1496888779647_0001 failed 2 times due to Error launching appattempt_1496888779647_0001_000002. Got exception: java.net.ConnectException: Call From localhost/127.0.0.1 to localhost:43484 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused

    • 重启集群

    #关闭集群
    stop-all.sh
    
    #删除namenode和datanode的临时文件hadoopdata和日志文件
    rm -rf hadoop目录/hadoopdata/*
    rm -rf hadoop目录/logs/*

    hadoopdata设置在hdfs-site.xml文件中
    <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:///home/hadoop-2.6.0/hadoopdata/dfs/name</value>
    </property>
    <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:///homehadoop-2.6.0/hadoopdata/dfs/data</value>
    </property>

    展开全文
  • Hadoop版本:2.x Java版本: jdk-8u251-linux VMware版本:16.x 二、开始第二环节 1.创建虚拟机 2.修改网卡 3.配置hosts 4.配置网络名+修改hostname 5.关掉网络管理 6.关掉Linux的内核防火墙 7.关闭linux...

    一、可以官方下载工具

        操作系统:Centos5\6\7
        Hadoop版本:2.x
        Java版本: jdk-8u251-linux
        VMware版本:16.x

    二、开始第二环节

        1.创建虚拟机
        2.修改网卡
        3.配置hosts
        4.配置网络名+修改hostname
        5.关掉网络管理
        6.关掉Linux的内核防火墙
        7.关闭linux防火墙,禁用其开机启动
        8.重启,再次查看selinux


    三、配置hadoop配置文件

         1、hadoop文件解压安装后,涉及配置文件修改有:

        core-site.xml、
        hdfs-site.xml、
        mapred-site.xml、
        yarn-site.xml、
        slaves文件

        2、vim ~/.bashrc  修改环境变量

    #JAVA_HOME
    export JAVA_HOME=/opt/module/jdk1.8.0_251
    export PATH=$PATH:$JAVA_HOME/bin
    ​
    #HADOOP
    export HADOOP_HOME=/opt/module/hadoop-2.6.1
    export PATH=$PATH:$HADOOP_HOME/bin
    export PATH=$PATH:$HADOOP_HOME/sbin
    3、改hosts文件
    

    C:\Windows\System32\drivers\etc

    在hosts文件中增加访问

    192.168.1.1 master

    192.168.1.2 slave1

    192.168.1.3 slave2

    四、启动hadoop集群

    各种配置修改好后,就可以启动hadoop集群服务

    start-all.sh 启动没有报错就存在4个进程

    看到如下进4个进程号:

    2208 ResourceManager

    2467 Jps

    2059 SecondaryNameNode

    1884 NameNode

    然后浏览器访问

    master:8088

    master:50070

     

    展开全文
  • hadoop集群搭建步骤

    2018-10-08 14:14:15
    hadoop2.0已经发布了稳定版本了,增加了很多特性,比如HDFS HA、YARN等。最新的hadoop-2.6.4又增加了YARN HA 注意:apache提供的hadoop-2.6.4的安装包是在32位操作系统编译的,因为hadoop依赖一些C++的本地库, ...

    hadoop2.0已经发布了稳定版本了,增加了很多特性,比如HDFS HA、YARN等。最新的hadoop-2.6.4又增加了YARN HA

    注意:apache提供的hadoop-2.6.4的安装包是在32位操作系统编译的,因为hadoop依赖一些C++的本地库,
    所以如果在64位的操作上安装hadoop-2.6.4就需要重新在64操作系统上重新编译
    (建议第一次安装用32位的系统,我将编译好的64位的也上传到群共享里了,如果有兴趣的可以自己编译一下)

    前期准备就不详细说了,课堂上都介绍了
    1.修改Linux主机名
    2.修改IP
    3.修改主机名和IP的映射关系 /etc/hosts
        ######注意######如果你们公司是租用的服务器或是使用的云主机(如华为用主机、阿里云主机等)
        /etc/hosts里面要配置的是内网IP地址和主机名的映射关系    
    4.关闭防火墙
    5.ssh免登陆
    6.安装JDK,配置环境变量等

    集群规划:
        主机名        IP                安装的软件                    运行的进程
        mini1    192.168.1.200    jdk、hadoop                    NameNode、DFSZKFailoverController(zkfc)
        mini2    192.168.1.201    jdk、hadoop                    NameNode、DFSZKFailoverController(zkfc)
        mini3    192.168.1.202    jdk、hadoop                    ResourceManager 
        mini4    192.168.1.203    jdk、hadoop                    ResourceManager
        mini5    192.168.1.205    jdk、hadoop、zookeeper        DataNode、NodeManager、JournalNode、QuorumPeerMain
        mini6    192.168.1.206    jdk、hadoop、zookeeper        DataNode、NodeManager、JournalNode、QuorumPeerMain
        mini7    192.168.1.207    jdk、hadoop、zookeeper        DataNode、NodeManager、JournalNode、QuorumPeerMain
        
    说明:
        1.在hadoop2.0中通常由两个NameNode组成,一个处于active状态,另一个处于standby状态。Active NameNode对外提供服务,而Standby NameNode则不对外提供服务,仅同步active namenode的状态,以便能够在它失败时快速进行切换。
        hadoop2.0官方提供了两种HDFS HA的解决方案,一种是NFS,另一种是QJM。这里我们使用简单的QJM。在该方案中,主备NameNode之间通过一组JournalNode同步元数据信息,一条数据只要成功写入多数JournalNode即认为写入成功。通常配置奇数个JournalNode
        这里还配置了一个zookeeper集群,用于ZKFC(DFSZKFailoverController)故障转移,当Active NameNode挂掉了,会自动切换Standby NameNode为standby状态
        2.hadoop-2.2.0中依然存在一个问题,就是ResourceManager只有一个,存在单点故障,hadoop-2.6.4解决了这个问题,有两个ResourceManager,一个是Active,一个是Standby,状态由zookeeper进行协调
    安装步骤:
        1.安装配置zooekeeper集群(在hadoop05上)
            1.1解压
                tar -zxvf zookeeper-3.4.5.tar.gz -C /home/hadoop/app/
            1.2修改配置
                cd /home/hadoop/app/zookeeper-3.4.5/conf/
                cp zoo_sample.cfg zoo.cfg
                vim zoo.cfg
                修改:dataDir=/home/hadoop/app/zookeeper-3.4.5/tmp
                在最后添加:
                server.1=hadoop05:2888:3888
                server.2=hadoop06:2888:3888
                server.3=hadoop07:2888:3888
                保存退出
                然后创建一个tmp文件夹
                mkdir /home/hadoop/app/zookeeper-3.4.5/tmp
                echo 1 > /home/hadoop/app/zookeeper-3.4.5/tmp/myid
            1.3将配置好的zookeeper拷贝到其他节点(首先分别在hadoop06、hadoop07根目录下创建一个hadoop目录:mkdir /hadoop)
                scp -r /home/hadoop/app/zookeeper-3.4.5/ hadoop06:/home/hadoop/app/
                scp -r /home/hadoop/app/zookeeper-3.4.5/ hadoop07:/home/hadoop/app/
                
                注意:修改hadoop06、hadoop07对应/hadoop/zookeeper-3.4.5/tmp/myid内容
                hadoop06:
                    echo 2 > /home/hadoop/app/zookeeper-3.4.5/tmp/myid
                hadoop07:
                    echo 3 > /home/hadoop/app/zookeeper-3.4.5/tmp/myid
        
        2.安装配置hadoop集群(在hadoop00上操作)
            2.1解压
                tar -zxvf hadoop-2.6.4.tar.gz -C /home/hadoop/app/
            2.2配置HDFS(hadoop2.0所有的配置文件都在$HADOOP_HOME/etc/hadoop目录下)
                #将hadoop添加到环境变量中
                vim /etc/profile
                export JAVA_HOME=/usr/java/jdk1.7.0_55
                export HADOOP_HOME=/hadoop/hadoop-2.6.4
                export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
                
                #hadoop2.0的配置文件全部在$HADOOP_HOME/etc/hadoop下
                cd /home/hadoop/app/hadoop-2.6.4/etc/hadoop
                
                2.2.1修改hadoo-env.sh
                    export JAVA_HOME=/home/hadoop/app/jdk1.7.0_55

    ###############################################################################
                    
    2.2.2修改core-site.xml
    <configuration>
    <!-- 指定hdfs的nameservice为ns1 -->
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://bi/</value>
    </property>
    <!-- 指定hadoop临时目录 -->
    <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/hadoop/app/hdpdata/</value>
    </property>

    <!-- 指定zookeeper地址 -->
    <property>
    <name>ha.zookeeper.quorum</name>
    <value>mini5:2181,mini6:2181,mini7:2181</value>
    </property>
    </configuration>

    ###############################################################################
                    
    2.2.3修改hdfs-site.xml
    <configuration>
    <!--指定hdfs的nameservice为bi,需要和core-site.xml中的保持一致 -->
    <property>
    <name>dfs.nameservices</name>
    <value>bi</value>
    </property>
    <!-- bi下面有两个NameNode,分别是nn1,nn2 -->
    <property>
    <name>dfs.ha.namenodes.bi</name>
    <value>nn1,nn2</value>
    </property>
    <!-- nn1的RPC通信地址 -->
    <property>
    <name>dfs.namenode.rpc-address.bi.nn1</name>
    <value>mini1:9000</value>
    </property>
    <!-- nn1的http通信地址 -->
    <property>
    <name>dfs.namenode.http-address.bi.nn1</name>
    <value>mini1:50070</value>
    </property>
    <!-- nn2的RPC通信地址 -->
    <property>
    <name>dfs.namenode.rpc-address.bi.nn2</name>
    <value>mini2:9000</value>
    </property>
    <!-- nn2的http通信地址 -->
    <property>
    <name>dfs.namenode.http-address.bi.nn2</name>
    <value>mini2:50070</value>
    </property>
    <!-- 指定NameNode的edits元数据在JournalNode上的存放位置 -->
    <property>
    <name>dfs.namenode.shared.edits.dir</name>
    <value>qjournal://mini5:8485;mini6:8485;mini7:8485/bi</value>
    </property>
    <!-- 指定JournalNode在本地磁盘存放数据的位置 -->
    <property>
    <name>dfs.journalnode.edits.dir</name>
    <value>/home/hadoop/journaldata</value>
    </property>
    <!-- 开启NameNode失败自动切换 -->
    <property>
    <name>dfs.ha.automatic-failover.enabled</name>
    <value>true</value>
    </property>
    <!-- 配置失败自动切换实现方式 -->
    <property>
    <name>dfs.client.failover.proxy.provider.bi</name>
    <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
    </property>
    <!-- 配置隔离机制方法,多个机制用换行分割,即每个机制暂用一行-->
    <property>
    <name>dfs.ha.fencing.methods</name>
    <value>
    sshfence
    shell(/bin/true)
    </value>
    </property>
    <!-- 使用sshfence隔离机制时需要ssh免登陆 -->
    <property>
    <name>dfs.ha.fencing.ssh.private-key-files</name>
    <value>/home/hadoop/.ssh/id_rsa</value>
    </property>
    <!-- 配置sshfence隔离机制超时时间 -->
    <property>
    <name>dfs.ha.fencing.ssh.connect-timeout</name>
    <value>30000</value>
    </property>
    </configuration>

    ###############################################################################
                
    2.2.4修改mapred-site.xml
    <configuration>
    <!-- 指定mr框架为yarn方式 -->
    <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    </property>
    </configuration>    

    ###############################################################################
                
    2.2.5修改yarn-site.xml
    <configuration>
    <!-- 开启RM高可用 -->
    <property>
    <name>yarn.resourcemanager.ha.enabled</name>
    <value>true</value>
    </property>
    <!-- 指定RM的cluster id -->
    <property>
    <name>yarn.resourcemanager.cluster-id</name>
    <value>yrc</value>
    </property>
    <!-- 指定RM的名字 -->
    <property>
    <name>yarn.resourcemanager.ha.rm-ids</name>
    <value>rm1,rm2</value>
    </property>
    <!-- 分别指定RM的地址 -->
    <property>
    <name>yarn.resourcemanager.hostname.rm1</name>
    <value>mini3</value>
    </property>
    <property>
    <name>yarn.resourcemanager.hostname.rm2</name>
    <value>mini4</value>
    </property>
    <!-- 指定zk集群地址 -->
    <property>
    <name>yarn.resourcemanager.zk-address</name>
    <value>mini5:2181,mini6:2181,mini7:2181</value>
    </property>
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    </configuration>
                
                    
    2.2.6修改slaves(slaves是指定子节点的位置,因为要在hadoop01上启动HDFS、在hadoop03启动yarn,所以hadoop01上的slaves文件指定的是datanode的位置,hadoop03上的slaves文件指定的是nodemanager的位置)
    mini5
    mini6
    mini7

                2.2.7配置免密码登陆
                    #首先要配置hadoop00到hadoop01、hadoop02、hadoop03、hadoop04、hadoop05、hadoop06、hadoop07的免密码登陆
                    #在hadoop01上生产一对钥匙
                    ssh-keygen -t rsa
                    #将公钥拷贝到其他节点,包括自己
                    ssh-coyp-id hadoop00
                    ssh-coyp-id hadoop01
                    ssh-coyp-id hadoop02
                    ssh-coyp-id hadoop03
                    ssh-coyp-id hadoop04
                    ssh-coyp-id hadoop05
                    ssh-coyp-id hadoop06
                    ssh-coyp-id hadoop07
                    #配置hadoop02到hadoop04、hadoop05、hadoop06、hadoop07的免密码登陆
                    #在hadoop02上生产一对钥匙
                    ssh-keygen -t rsa
                    #将公钥拷贝到其他节点
                    ssh-coyp-id hadoop03                
                    ssh-coyp-id hadoop04
                    ssh-coyp-id hadoop05
                    ssh-coyp-id hadoop06
                    ssh-coyp-id hadoop07
                    #注意:两个namenode之间要配置ssh免密码登陆,别忘了配置hadoop01到hadoop00的免登陆
                    在hadoop01上生产一对钥匙
                    ssh-keygen -t rsa
                    ssh-coyp-id -i hadoop00                
            
            2.4将配置好的hadoop拷贝到其他节点
                scp -r /hadoop/ hadoop02:/
                scp -r /hadoop/ hadoop03:/
                scp -r /hadoop/hadoop-2.6.4/ hadoop@hadoop04:/hadoop/
                scp -r /hadoop/hadoop-2.6.4/ hadoop@hadoop05:/hadoop/
                scp -r /hadoop/hadoop-2.6.4/ hadoop@hadoop06:/hadoop/
                scp -r /hadoop/hadoop-2.6.4/ hadoop@hadoop07:/hadoop/
                
                
                
    ###注意:严格按照下面的步骤!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
            2.5启动zookeeper集群(分别在mini5、mini6、mini7上启动zk)
                cd /hadoop/zookeeper-3.4.5/bin/
                ./zkServer.sh start
                #查看状态:一个leader,两个follower
                ./zkServer.sh status
                
            2.6启动journalnode(分别在在mini5、mini6、mini7上执行)
                cd /hadoop/hadoop-2.6.4
                sbin/hadoop-daemon.sh start journalnode
                #运行jps命令检验,hadoop05、hadoop06、hadoop07上多了JournalNode进程
            
            2.7格式化HDFS
                #在mini1上执行命令:
                hdfs namenode -format
                #格式化后会在根据core-site.xml中的hadoop.tmp.dir配置生成个文件,这里我配置的是/hadoop/hadoop-2.6.4/tmp,然后将/hadoop/hadoop-2.6.4/tmp拷贝到hadoop02的/hadoop/hadoop-2.6.4/下。
                scp -r tmp/ hadoop02:/home/hadoop/app/hadoop-2.6.4/
                ##也可以这样,建议hdfs namenode -bootstrapStandby
            
            2.8格式化ZKFC(在mini1上执行一次即可)
                hdfs zkfc -formatZK
            
            2.9启动HDFS(在mini1上执行)
                sbin/start-dfs.sh

            2.10启动YARN(#####注意#####:是在hadoop02上执行start-yarn.sh,把namenode和resourcemanager分开是因为性能问题,因为他们都要占用大量资源,所以把他们分开了,他们分开了就要分别在不同的机器上启动)
                sbin/start-yarn.sh

            
        到此,hadoop-2.6.4配置完毕,可以统计浏览器访问:
            http://hadoop00:50070
            NameNode 'hadoop01:9000' (active)
            http://hadoop01:50070
            NameNode 'hadoop02:9000' (standby)
        
        验证HDFS HA
            首先向hdfs上传一个文件
            hadoop fs -put /etc/profile /profile
            hadoop fs -ls /
            然后再kill掉active的NameNode
            kill -9 <pid of NN>
            通过浏览器访问:http://192.168.1.202:50070
            NameNode 'hadoop02:9000' (active)
            这个时候hadoop02上的NameNode变成了active
            在执行命令:
            hadoop fs -ls /
            -rw-r--r--   3 root supergroup       1926 2014-02-06 15:36 /profile
            刚才上传的文件依然存在!!!
            手动启动那个挂掉的NameNode
            sbin/hadoop-daemon.sh start namenode
            通过浏览器访问:http://192.168.1.201:50070
            NameNode 'hadoop01:9000' (standby)
        
        验证YARN:
            运行一下hadoop提供的demo中的WordCount程序:
            hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.1.jar wordcount /profile /out
        
        OK,大功告成!!!

        
                
            
    测试集群工作状态的一些指令 :
    bin/hdfs dfsadmin -report     查看hdfs的各节点状态信息


    bin/hdfs haadmin -getServiceState nn1         获取一个namenode节点的HA状态

    sbin/hadoop-daemon.sh start namenode  单独启动一个namenode进程


    ./hadoop-daemon.sh start zkfc   单独启动一个zkfc进程
                
                
                    
                
                
        
                
            
        

     

    展开全文
  • 首先VMware中准备一台Centos 系统(我用的是 CentOS-6.7-x86_64-bin-DVD1.iso) 1:修改主机名 (如果需要权限的话用sudo) 命令:[hadoop@hadoop11 ~]$ vi /etc/sysconfig/network  

    首先VMware中准备一台Centos 系统(我用的是  CentOS-6.7-x86_64-bin-DVD1.iso)

    1:修改主机名  (如果需要权限的话用sudo)

    命令:[hadoop@hadoop11 ~]$ vi /etc/sysconfig/network

                                                                             NETWORKING=yes
                                                                             HOSTNAME=hadoop11

    2:设置系统默认启动级别(如果需要权限的话用sudo)

     在root管理员身份下输入:  [hadoop@hadoop11 ~]$ vi /etc/inittab 

    将最后一行修改为3启动级别    id:3:initdefault:

    3:用root用户给Hadoop用户配置sudoer权限

    [root@hadoop11 hadoop]# vi /etc/sudoers    

    (大概在89行左右)

    root ALL=(ALL) ALL

    在这一行下面加入

    Hadoop ALL=(ALL) ALL

    4:配置ip ,我是用修改配置文件的方式(如果需要权限的话用sudo)

    [hadoop@hadoop11 ~]$ vi /etc/sysconfig/network-scripts/ifcfg-eth0 


    DEVICE="eth0"
    BOOTPROTO=none
    IPV6INIT="yes"
    NM_CONTROLLED="yes"
    ONBOOT="yes"
    TYPE="Ethernet"
    UUID="0f9a4b6e-ec25-4831-9188-c7b904406202"
    IPADDR=192.168.55.111
    PREFIX=24
    GATEWAY=192.168.55.2
    DNS1=192.168.55.2
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    NAME="System eth0"
    HWADDR=00:0C:29:71:6B:38
    IPV6_PEERDNS=yes
    IPV6_PEERROUTES=yes
    LAST_CONNECT=1501315727

    修改成自己的IP

    5:关闭防火墙

    service iptables stop(关闭)

    service iptables status(查看状态)

    chkconfig iptables off(永久关闭防火墙)

    6:添加内网域名映射(如果需要权限的话用sudo)

    sudo vi /etc/hosts


    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.55.101 hadoop01
    192.168.55.102 hadoop02
    192.168.55.103 hadoop03
    192.168.55.104 hadoop04
    192.168.55.105 hadoop05
    192.168.55.106 hadoop06
    192.168.55.107 hadoop07
    192.168.55.108 hadoop08
    192.168.55.109 hadoop09
    192.168.55.110 hadoop10
    192.168.55.111 hadoop11
    192.168.55.112 hadoop12
    192.168.55.113 hadoop13
    192.168.55.114 hadoop14
    192.168.55.115 hadoop15
    192.168.55.116 hadoop16

    7:安装JDK

    sftp> put C:/Users/Administrator/Desktop/Test/jdk-8u73-linux-x64.tar.gz

    此方法默认上传到 sftp> pwd
    /home/hadoop

    的路径下

    8:解压到如下路径 [hadoop@hadoop11 apps]$ pwd
    /home/hadoop/apps
    [hadoop@hadoop11 apps]$ 

    [hadoop@hadoop11 apps]$ tar -zxvf jdk1.8.0_73/

    9:配置环境变量

    [hadoop@hadoop11 apps]$ vi /etc/profile

    在最后加入:

    export JAVA_HOME=/home/hadoop/apps/jdk1.8.0_73
    export PATH=$PATH:$JAVA_HOME/bin

    10:同步时间

    (1)开启ntpd服务

    service ntpd start(开启ntpd服务)

    chkconfig ntpd on(永久开启服务)

    chkconfig | grep ntpd(查看)

    (2)输入命令:tzselect 按提示一次选择 5 9 1 1 1 生成一个Shanghai 的文件

    然后输入命令:crontab 202.120.2.101 (获取时间)

    接着reboot重启电脑

    为了保证时间同步接着 crontab 202.120.2.101

    (3)设置任务 每小时获取一次时间

    [hadoop@hadoop11 apps]$ crontab -e

    在和面加上:

    0 */1 * * * ntpdate 202.120.2.101

    (4)执行命令 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime(把时间文件考到本地)

    万一不行可以手动设置时间 date -s "201X-0X-29 10:52:00" 哈哈哈

    完成以上步骤可以适当的设一个快照(也没有大的必要)

    下面是分布式Hadoop的集群安装

    这里为了节省时间,我就搭建三个节点的集群


    HDFS YARN
    hadoop11 NameNode+DateNode
    (主节点)
    NodeManager
    hadoop12 DataNode +
     SecondaryNamenode
     NodeManager 
    hadoop13  DataNode 
    NodeManager +
     ResourceManager 主节点

    设置副本数为2

    具体步骤:

    1:上传hadoop-2.6.5-centos-6.7.tar.gz到

    sftp> pwd
    /home/hadoop/apps

    2:解压 tar -zxvf hadoop-2.6.5-centos-6.7.tar.gz

    3:修改 hadoop-env.sh 

    jdk的环境 export JAVA_HOME=/hone/apps/jdk1.8.0_73 

    4:修改core-site.xml 

    <property> 
     <name>fs.defaultFS</name> 
     <value>hdfs://hadoop11:9000</value> 
    </property> 
    <property> 
     <name>hadoop.tmp.dir</name> 
     <value>/home/hadoop/hadoopdata</value> 
    </property> 

    5:修改hdfs-site.xml 
     <property> 
     <name>dfs.namenode.name.dir</name> 
     <value>/home/hadoop/hadoopdata/name</value> 
    </property> 
    <property> 
     <name>dfs.datanode.data.dir</name> 
     <value>/home/hadoop/hadoopdata/data</value> 

    </property> 
    <property> 
     <name>dfs.replication</name> 
     <value>2</value> 
    </property> 
    <property> 
     <name>dfs.secondary.http.address</name> 
     <value>hadoop12:50090</value> 
    </property> 

    6:修改 mapred-site.xml(集群只有mapred-site.xml.template,可以从这个文件进行复
    制,或者直接改名也可,在里面加入以下内容即可) 
     <property> 
     <name>mapreduce.framework.name</name> 
     <value>yarn</value> 
    </property> 

    7:修改yarn-site.xml 
     <property> 
     <name>yarn.resourcemanager.hostname</name> 
     <value>hadoop13</value> 
    </property> 
    <property> 
     <name>yarn.nodemanager.aux-services</name> 
     <value>mapreduce_shuffle</value> 
    </property> 

    8:修改slaves 
     hadoop11
     hadoop12 
     hadoop13 

    9:改hadoop配置环境变量

    [hadoop@hadoop11 apps]$ vi /etc/profile

    最后面加上

    export HADOOP_HOME=/home/hadoop/apps/hadoop-2.6.5
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

    10:然后在hadoop11的基础上克隆hadoop12和hadoop13

    11:修改hadoop12和hadoop13的网卡 IP 主机名(IP和主机名修改成相应的和上面一样,注释掉eth0,然后把eth1改成eth0)


    12:配置三台机器之间的免密登录

    (经验:然后可以重启以下)

    13:在HDFS的主节点上执行初始化

    hadoop namenode -format

    查看最后是否初始化成功

    17/07/31 23:13:13 INFO common.Storage: Storage directory /home/hadoop/hadoopdata/name has been successfully formatted.
    17/07/31 23:13:13 INFO namenode.FSImageFormatProtobuf: Saving image file /home/hadoop/hadoopdata/name/current/fsimage.ckpt_0000000000000000000 using no compression
    17/07/31 23:13:14 INFO namenode.FSImageFormatProtobuf: Image file /home/hadoop/hadoopdata/name/current/fsimage.ckpt_0000000000000000000 of size 323 bytes saved in 0 seconds.
    17/07/31 23:13:14 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
    17/07/31 23:13:14 INFO util.ExitUtil: Exiting with status 0
    17/07/31 23:13:14 INFO namenode.NameNode: SHUTDOWN_MSG: 
    /************************************************************
    SHUTDOWN_MSG: Shutting down NameNode at hadoop11/192.168.55.111
    ************************************************************/
    14:如果成功的话启动

    start-dfs.sh 

    15:在hadoop13上启动

    start-yarn.sh 

    16:查看进程 jps

    [hadoop@hadoop11 ~]$ jps
    2743 DataNode
    3292 NodeManager
    4093 Jps
    2653 NameNode
    [hadoop@hadoop12 ~]$ jps
    2561 DataNode
    2902 NodeManager
    2649 SecondaryNameNode
    3611 Jps
    [hadoop@hadoop13 apps]$ jps
    2679 NodeManager
    2856 ResourceManager
    3324 Jps
    2557 DataNode
    17:查看文件系统HDFS

    hadoop fs -ls /

    18:如果有没有启动的进程,在适当的节点可以试试:

    hadoop-daemon.sh start datanode 

    hadoop-daemon.sh start namenode yarn-daemon.sh start nodemanager 

    yarn-daemon.sh start resourcemanager 



    可以通过50070端口管理HDFS集群的信息
    可以通过8088端口,查看mapreduce的运行状态


    展开全文
  • 大数据面试题之Hadoop集群搭建步骤

    千次阅读 2018-02-27 23:34:45
    一、打开需要搭建Hadoop集群的主从节点服务器 ,配置好静态IP、主机名hostname、主机IP映射文件hosts、关掉防火墙二、通过远程登录工具(我用的是SecureSRT) 登录到Linux系统,登录前需要在Windows系统中C:\Windows...
  • CentOS 7 环境下全分布试安装配置Hadoop 目录 <一>设置静态IP地址 <二>修改主机名 <三>解压安装包 <四>配置环境变量 <五>克隆其他的两个主机 <六>设置ssh免密登录 <...
  • 第六步、安装配置hadoop集群 2.1解压 2.2配置HDFS(hadoop2.0所有的配置文件都在$HADOOP_HOME/etc/hadoop目录下) #将hadoop添加到环境变量中 vi /etc/profile export JAVA_HOME=/root/jdk1.7.0_...
  • Hadoop集群搭建步骤: 1、安装虚拟机 2、安装Linux镜像 3、配置网络 vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改 ONBOOT=yes BOOTPROTO=dhcp 网络ip自动获取 4、重启网络服务 service network ...
  • hadoop集群搭建详细步骤,从伪分布式到克隆并将其成功转化为集群搭建
  • CentOs系统下Hadoop集群搭建配置步骤,一步步带你搭建分布式Hadoop
  • Hadoop集群搭建的详细步骤,涉及Linux:Centos6.5基础环境配置,Hadoop集群离线部署方式。
  • 集群25号搭好,今日凌晨整理完本文方才发布。 (一)准备 首先, 开启本地主机 CPU 虚拟化(主机或笔记本或服务器)【amd 或者 intel 的 CPU 都阔以】 本地安装 vmware 虚拟机,xshell、xftp 工具安装一台 ...
  • hadoop学习笔记之hadoop伪分布集群搭建(一) hadoop学习笔记之hadoop伪分布集群搭建(二) hadoop学习笔记之hadoop伪分布集群搭建(三) hadoop学习笔记之hadoop伪分布集群搭建(四) hadoop学习笔记之hadoop伪...
  • 集群准备 一、虚拟机克隆  1、虚拟机关闭状态下右键点击虚拟机选择克隆  2、选择创建完整克隆,定义虚拟机名称和路径  3、点击完成等待虚拟机克隆 至少克隆两台虚拟机   二、克隆机网络设置  1、两台克隆...
  • hadoop集群搭建

    2018-07-25 21:55:04
    hadoop集群搭建关键性步骤,超级详细,轻松应对hadoop!
  • 详细的hadoop集群搭建步骤
  • hadoop集群搭建.docx

    2020-09-01 19:28:30
    续博客zookeeper搭建后,hadoop集群搭建的详细步骤,来源于自学大数据hadoop集群搭建后总结学习笔记,供初学者参考学习。
  • 操作步骤: 1、设置虚拟机的网络适配器(nat、仅主机、桥接) 2、编辑/虚拟网络编辑器(指定某一网络模式) 3、在命令行中修改网卡的静态地址 cd /etc/sysconfig/network-scripts/,修改配置文件ifcfg-ens33 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,921
精华内容 768
关键字:

hadoop集群搭建步骤