美文网首页Hadoop实践
环境搭建(2)

环境搭建(2)

作者: 疯魔雪梨 | 来源:发表于2019-07-13 22:31 被阅读0次

    1. 修改/opt/module/hadoop-2.9.2/etc/hadoop/core-site.xml文件

    <configuration>
         <property>
             <name>fs.defaultFS</name>
             <value>hdfs://hadoop1:9000</value>
         </property>
         <property>
             <name>hadoop.tmp.dir</name>
             <value>/opt/module/hadoop-2.9.2/data/tmp</value>
         </property>
    </configuration>
    

    2. 修改/opt/module/hadoop-2.9.2/etc/hadoop/hdfs-site.xml文件

    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>3</value>
        </property>
        <property>
            <name>dfs.namenode.secondary.http-address</name>
            <value>hadoop3:50090</value>
        </property>
    </configuration>
    

    3. 打印JDK的环境变量

    echo $JAVA_HOME
    

    4. 修改/opt/module/hadoop-2.9.2/etc/hadoop/hadoop-env.sh将其中的export JAVA_HOME的值改为自己的JDK环境变量

    5. 修改/opt/module/hadoop-2.9.2/etc/hadoop/yarn-env.sh将其中的export JAVA_HOME的值改为自己的JDK环境变量

    6. 修改/opt/module/hadoop-2.9.2/etc/hadoop/yarn-site.xml文件

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

    7. 修改/opt/module/hadoop-2.9.2/etc/hadoop/mapred-env.sh将其中的export JAVA\_HOME的值改为自己的JDK环境变量

    8. 将同路径下的mapred-site.xml.template改名

    mv mapred-site.xml.template mapred-site.xml
    

    9. 修改改名后的mapred-site.xml文件

    <configuration>
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
    </configuration>
    

    SCP集群间拷贝

    1. 在1号主机上切换到root用户

    su      #仅做切换用户操作
    su -    #切换用户并且切换用户的环境变量
    

    2. 进入/opt,将1号主机上的/opt下的module目录推到2号主机

    sudo scp -r module/ root@hadoop2:/opt/
    

    3. 将1号主机上的/opt下的module目录拉到3号主机

    #在3号主机上进入/opt目录
    #再执行
    scp -r root@hadoop3:/opt/module/ ./
    

    4. 将所有主机上的/opt/module目录的权限改为自建用户

    #分别在2号和3号主机上执行
    chown hwhadoop:hwhadoop /opt/module -R
    

    5. 将1号主机的/etc/profile推送到2号和3号主机

    scp -r /etc/profile root@hadoop2:/etc/profile
    scp -r /etc/profile root@hadoop3:/etc/profile
    

    6. 完成后别忘记了

    source /etc/profile
    

    7. 在所有主机上分别下载rsync

    yum install rsync -y
    

    8. 编写集群分发脚本xsync

    ​ 打开一号主机,并输入命令echo $PATH,查看/usr/local/bin是否存在,如果存在就进入/usr/local/bin

    cd /usr/local/bin
    

    ​ 编写分发脚本如下

    #!/bin/bash
    #1 获取输入参数的个数,如果没有参数,直接退出 
    pcount=$#
    if((pcount==0));then
    echo no args;
    exit;
    fi
    #2获取文件名称
    p1=$1
    fname=`basename $p1`
    echo fname=$fname
    
    #3获取上级目录到绝对目录 
    pdir=`cd -P $(dirname $p1); pwd`
    echo pdir=$pdir
    #4获取当前用户名 
    user=`whoami`
    #5循环 
    for((host=1; host<3; host++));do
            rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
    done
    

    ​ 保存退出,给与分发脚本可执行权限

    sudo chmod a+x xsync
    

    9. 配置免密登录

    cd  #在1号主机上执行,进入当前登录用户的家目录
    ls -al  #查看是否存在.ssh目录。若没有,就执行下面的命令
    ssh 某主机名    #进行远程登录,登录成功后,退出登录状态,再次查看,.ssh目录生成
    ssh-keygen -t rsa   #进入.ssh目录生成公钥和私钥
    ssh-copy-id 其他主机名   #所有的主机都要分发公钥,包括它自己
    

    ​ 切换到root下,执行同样的公钥私钥操作

    10. 修改slaves文件,在文件中加入

    hadoop1
    hadoop2
    hadoop3 #不允许有多余的空格和换行
    

    ​ 然后分发slaves文件到集群

    xsync slaves
    

    11. 格式化namenode

    #格式化之前要关闭所有的进程
    sbin/stop-dfs.sh
    #删除各台主机上的data和logs目录
    rm -rf data logs
    #执行格式化命令
    bin/hdfs namenode -format
    

    12. 启动HDFS

    sbin/start-dfs.sh   #路径要对
    

    13. 检查所有的配置文件并分发

    • yarn-site.xml
    • mapred-site.xml
    • yarn-env.sh
    • mapred-env.sh

    14. 在2号主机上启动yarn

    sbin/start-yarn.sh
    

    15. 启动完毕后检查所有的主机的进程数,包括jps在内各有4个进程

    相关文章

      网友评论

        本文标题:环境搭建(2)

        本文链接:https://www.haomeiwen.com/subject/qmlvkctx.html