Hadoop集群的搭建【完全分布式】

19 篇文章 0 订阅
10 篇文章 0 订阅

集群安装在多个节点上的

   1)多个节点的要求:

   多个节点的用户名(安装的时候使用的用户/普通用户)一定要统一

   多个节点的安装目录统一

  集群规划:集群中的各个节点安装的组件有哪些

   HDFS yarn

  namenode datanode secondarynamenode rm nm

  master namenode resourcemanager

  node1 datanode secondarynamenode nodemanager

  node2  datanode nodemanager

  搭建 


  准备:

   1)ip

   2)主机名

   3)映射

   4)关闭防火墙和sellinux

    vi /etc/sysconfig/selinux

    SELINUX=disabled 

    linux的安全认证 高级运维人员会用到

   5)为普通用户添加 sudoers

   vi /etc/sudoers

   hadoop ALL=(ALL) ALL

   6) 切换到普通用户

   7)做免密码登录

    一定切换到普通用户

    ~/.ssh

    这里和用户有关的

    3台机器之间 相互都需要做 免密码登录

    ssh-keygen

    ssh-copy-id master

    ssh-copy-id node1

    ssh-copy-id node2

    

           测试:

                ssh master

                ssh node1

                ssh node2

   然后    source /etc/profile

       8)修改系统的启动级别 3

    sudo vi /etc/inittab


   hadoop的安装:

   先装在一个节点上 在进行远程发送

   mkdir /home/hadoop/apps

       1)安装jdk

   source /etc/profile

   java -version

       2)上传安装包

       3)解压hadoop的安装包

   tar -xvzf hadoop-2.7.6.tar.gz 

       4)配置hadoop的环境变量

   sudo vi /etc/profile

   export JAVA_HOME=/home/hadoop/apps/jdk1.8.0_73

   export HADOOP_HOME=/home/hadoop/apps/hadoop-2.7.6

 

/*注意此处为PATH,不要弄成CLASSPATH了,使用时删掉这一行*/

   export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

   source /etc/profile

   验证

   hadoop version 


   5)修改hadoop的配置文件 6个

   $HADOOP_HOME/etc/hadoop/

        1)hadoop-env.sh

 

export JAVA_HOME=/home/hadoop/apps/jdk1.8.0_73

        2)core-site.xml 公共的配置文件

 

hdfs的访问url hdfs://namenode的主机名:9000
    <property>
         <name>fs.defaultFS</name>
         <value>hdfs://master:9000</value>
    </property>
    hdfs的文件的存储路径 包括namenode的信息存储目录 datanode的信息存储目录 没有配置 /tmp存储 会造成核心数据的丢失 这个生产环境中一定要配置的
    <property>
         <name>hadoop.tmp.dir</name>
         <value>/home/hadoop/data/hadoopdata</value>
    </property>

        3)hdfs-site.xml

 

<property>
     <name>dfs.namenode.name.dir</name>
     <value>/home/hadoop/data/hadoopdata/name</value>
     <description>namenode的数据的存储目录</description>
</property>
<property>
     <name>dfs.datanode.data.dir</name>
     <value>/home/hadoop/data/hadoopdata/data</value>
    <description>datanode 的数据存储目录</description>
</property>
​
<property>
    <name>dfs.replication</name>
     <value>2</value>
    <description>HDFS 的数据块的副本存储个数</description>
</property>
<property>
     <name>dfs.secondary.http.address</name>
     <value>node1:50090</value>
    <description>secondarynamenode 运行节点的信息,和 namenode 不同节点</description>
</property>

        4)mapred-site.xml

 这里可以直接将文件夹中的mapred-site.xml.template文件的.template去掉之后编辑

  cp mapred-site.xml.template mapred-site.xml
<property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
</property>

        5)yarn-site.xml

           配置的是yarn的主节点的 主机名

<property>
     <name>yarn.resourcemanager.hostname</name>
     <value>master</value>
</property>
<property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce_shuffle</value>
    <description>YARN 集群为 MapReduce 程序提供的 shuffle 服务</description>
</property>

        6)vi slaves

             从节点信息 一行一个 不要有空格 和换行 datanode nodemanager

    hadoop02
    hadoop03
    hadoop04

6)远程发送到其他节点

 

   
jdk
   scp -r jdk1.8.0_73 node1:/home/hadoop/apps/
   scp -r jdk1.8.0_73 node2:/home/hadoop/apps/
​
   hadoop:
   scp -r hadoop-2.7.6 node1:/home/hadoop/apps/
   scp -r hadoop-2.7.6 node2:/home/hadoop/apps/
​
   /etc/profile
   sudo scp /etc/profile node1:/etc/
   sudo scp /etc/profile node2:/etc/
 

       3个节点都执行 source /etc/profile

 验证:
   jdk
   java -version
   hadoop
   hadoop version
7)进行格式化 格式化的是hdfs
   在namenode所在的节点 ---master
   hadoop namenode -format
   /home/hadoop/data/hadoopdata/name has been successfully formatted.
   成功的格式化只能进行一次

      8)启动

   先启动hdfs:

任意一个节点启动 start-dfs.sh

    /* 此时Hadoop的更目录下要有一个logs文件夹

       并且需要赋予读写权限

       sudo chmod a+w logs 

   */

 

   jps
  master: namenode
  node1: secondarynamenode datanode
  node2:datanode
   启动yarn:

   start-yarn.sh 最好在yarn的主节点执行master

/*要记得关闭防火墙

firewall-cmd    --state     查询防火墙状态

systemctl stop firewalld      关闭防火墙

*/

   验证:

   hdfs的网页:

   主节点主机名或ip:50070

   hadoop01:50070

   yarn的网页:

   yarn主节点的主机名或ip:8088

   集群的关闭和重启的问题

   集群关闭:

    关闭hdfs:

    stop-dfs.sh 任意节点执行

    关闭yarn:

    stop-yarn.sh 在yarn的主节点执行

   集群重启:

    不需要格式化

    先启动hdfs

    再启动yarn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值