hadoop 集群搭建

1->集群部署准备工作:
    1.关闭防火墙(进行远程连接)
    systemctl stop firewalld
    systemctl disable firewalld
    2.设置主机名
        vi /etc/hostname
        注意需要重启服务器(虚拟机,reboot)
    3.配置映射文件(必须记住)
    vi /etc/hosts
    192.168.235.128 hd-09-01
    192.168.235.129 hd-09-02
    192.168.235.130 hd-09-03
    
    scp -r /etc/hosts 192.168.235.129:/etc/ 
    
2->安装配置jdk
    1.上传tar包  alt+p
    解压tar包
    tar -zxvf 路径/jdk -C ~/training 
    配置jdk 环境变量
    vi /etc/profile
    export JAVA_HOME=/root/training/jdk1.8.0_102
    export PATH=$PATH:$JAVA_HOME/bin
    注意加载环境变量:source /etc/profile 
    
    scp -r /etc/profile hd-09-02:/etc   发送环境变量
    注意加载环境变量:source /etc/profile (发送后)
    
    设置免密登录  ssh-keygen  
    ssh-copy-id  主机名(自己)
    ssh-copy-id  主机名(其他)
    ssh-copy-id  主机名(其他)
    
3->安装HDFS集群
    1.上传hadoop tar包  alt+p
    解压tar包
    tar -zxvf 路径/hadXX.tar.gz -C ~/training 
    
    2.修改 /root/training/hadXXX/etc/hadoop/hadoop-env.sh    
    export JAVA_HOME=/root/training/jdk1.8.0_102
    
    3.修改配置文件
    修改 core-site.xml
        <property>
            //配置hdfs
            <name>fs.defaultFS</name>
            <value>hdfs://hd-09-01:9000</value>
            </property>

        <property>
          <name>hadoop.tmp.dir</name>
          <value>/root/hd</value>
          </property>   

                修改hdfs-site.xml        

                   <property>

                //配置元数据存储位置
                <name>hdfs.namenode.name.dir</name>
                <value>/root/training/dfs/name</value>
        </property>
        //配置数据存储的位置
        <property>
        <name>dfs.datanode.data.dir</name>
        <value>/root/training/dfs/data</value>
        </property>
    
    4.格式化namenode
    hadoop namenode -format  生成目录
注意:(1)Hadoop的临时存储目录tmp(即core-site.xml配置文件中的hadoop.tmp.dir属性,默认值是/tmp/hadoop-${user.name}),
如果没有配置hadoop.tmp.dir属性,那么hadoop格式化时将会在/tmp目录下创建一个目录,例如在cloud用户下安装配置hadoop,
那么Hadoop的临时存储目录就位于/tmp/hadoop-cloud目录下
(2)Hadoop的namenode元数据目录(即hdfs-site.xml配置文件中的dfs.namenode.name.dir属性,默认值是${hadoop.tmp.dir}/dfs/name),
同样如果没有配置该属性,那么hadoop在格式化时将自行创建。必须注意的是在格式化前必须清楚所有子节点(即DataNode节点)dfs/name下的内容,
否则在启动hadoop时子节点的守护进程会启动失败。这是由于,每一次format主节点namenode,dfs/name/current目录下的VERSION文件会产生新的clusterID、namespaceID。
但是如果子节点的dfs/name/current仍存在,hadoop格式化时就不会重建该目录,因此形成子节点的clusterID、namespaceID与主节点(即namenode节点)的clusterID、namespaceID不一致。最终导致hadoop启动失败。
5.分发Hadoop到其他机器 scp -r /root/training/hadoopxx hd-09-02:/root/training scp -r /root/training/hadoopxx hd-09-03:/root/training 6.配置Hadoop的环境变量 配置hadoop 环境变量 vi /etc/profile export JAVA_HOME=/root/training/jdk1.8.0_102 export HADOOP_HOME=/root/training/hadoop_2.8.5 export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin 加载环境变量 source /etc/profile 7.分发Hadoop到其他机器 scp -r /etc/profile hd-09-02:/etc/profile scp -r /etc/profile hd-09-03:/etc/profile 加载环境变量 source /etc/profile 8.启动namenode jsp 查看进程 hadoop-daemon.sh start namenode 启动namenode 9.启动datanode hadoop-daemon.sh start datanode 启动datanode 10.访问namenode提供的web端口 IP:50070 4-> 自动批量的启动脚本 1.修改 salves 文件 添加 hd-09-02 hd-09-03 删除localhost 2.start-dfs.sh 一键启动 stop-dfs.sh 一键关闭

 

posted @ 2018-10-10 23:05  随风无义  阅读(161)  评论(0)    收藏  举报