HDFS搭建分布式集群

一、创建4台虚机

       192.168.1.156   maste
       192.168.1.157   slave1
       192.168.1.158   slave2

       192.168.1.159   slave3

    1、修改4台机器hosts文件

          sudo vi etc/hosts

        

    2、修改每个机器的hostname

       sudo vi etc/hostname

        分别将localhost.localdomain修改为maste,slave1,slave2,slave3 

    3、生成私钥

        ssh-keygen

        3.1分别将157,158,159三台服务器的公钥id_rsa.pub,复制到156中,如下图所示

        一直回车即可。

        进入cd root/.ssh 目录

    

    cat id_rsa.pub >>  authorized_keys

     cat id_rsa.pub157 >>  authorized_keys

    cat id_rsa.pub158 >>  authorized_keys

    cat id_rsa.pub159 >>  authorized_keys

    3.2、分别在157,158,159三台服务上重复3.1操作。

    3.2、ssh maste

            ssh slave1

            ssh slave2

            ssh slave3

            4台服务器互相ssh登录成功即可。

二、在网上下载hdfs安装包。

        http://hadoop.apache.org/releases.html


三、安装JDK
通过fz将jdk安装包上传
解压安装包
tar -zxvf [jdk安装包位置]
配置环境变量
vim /etc/profile
在文件行尾加入配置后保存退出
export JAVA_HOME=/usr/java/jdk1.8.0_65
export PATH=$PATH:$JAVA_HOME/bin
重新加载profile使配置生效
source /etc/profile
环境变量配置完成,测试环境变量是否生效
echo $JAVA_HOME 
java -version

四、安装hadoop
通过fz将hadoop安装包上传到linux
解压安装包
tar -zxvf [hadoop安装包位置]

五、(1)修改 hadoop-env.sh
通过vim打开
vim [hadoop]/etc/hadoop/hadoop-env.sh
主要是修改java_home的路径
在hadoop-env.sh,把export JAVA_HOME=${JAVA_HOME}修改成具体的路径
重新加载使修改生效
source hadoop-env.sh
(2)修改 core-site.xml
通过vim打开
vim [hadoop]/etc/hadoop/core-site.xml
增加namenode配置、文件存储位置配置
<configuration>
        <property>
        <!--用来指定hdfs的老大,namenode的地址-->
                        <name>fs.defaultFS</name>
                        <value>hdfs://maste:9000</value>
        </property>
        <property>
        <!--用来指定hadoop运行时产生文件的存放目录-->
                        <name>hadoop.tmp.dir</name> 
                        <value>/home/park/work/hadoop-2.5.2/tmp</value>
        </property>
</configuration>
(3)修改 hdfs-site.xml
通过vim打开
vim [hadoop]/etc/hadoop/hdfs-site.xml
配置包括自身在内的备份副本数量。
<configuration>
        <property>
        <!--指定hdfs保存数据副本的数量,包括自己,默认为3-->
        <!--伪分布式模式,此值必须为1-->
                    <name>dfs.replication</name> 
                    <value>3</value>
        </property>
</configuration>


(4)修改 mapred-site.xml
说明:在/etc/hadoop的目录下,只有一个mapred-site.xml.template文件,复制一个
cp mapred-site.xml.template mapred-site.xml
通过vim打开
vim [hadoop]/etc/hadoop/mapred-site.xml
配置mapreduce运行在yarn上
<configuration>
        <property>  
        <!--指定mapreduce运行在yarn上-->
                    <name>mapreduce.framework.name</name>
                    <value>yarn</value>
        </property>
</configuration>


(5)修改 yarn-site.xml
通过vim打开
vim [hadoop]/etc/hadoop/yarn-site.xml
配置
<configuration>
            <property>
<!--指定yarn的老大resourcemanager的地址-->
                                <name>yarn.resourcemanager.hostname</name>
                                <value>hadoop01</value>
            </property>
            <property>
<!--NodeManager获取数据的方式-->
                                <name>yarn.nodemanager.aux-services</name>
                                <value>mapreduce_shuffle</value>
            </property>
</configuration>


(6)修改 slaves,3.X版本修改workers

                                            



(7)配置hadoop的环境变量
export JAVA_HOME=/usr/java/jdk1.8.0_65
export HADOOP_HOME=/opt/hadoop-2.7.1

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

环境变量配置完成,测试环境变量是否生效

echo $HADOOP_HOME 

hadoop version

修改完成后,将其他三台服务器做上述同样的操作

六、

hdfs namenode -format  (hadoop namenode -format   以前的方式)

在格式化的时候,会有这样的输出:

Storage directory /tmp/hadoop-root/dfs/name has been successfully formatted变成功。


systemctl stop firewalld

sudo ufw disable

sudo ufw status


hadoop fs -chmod 777 /

rm -rf /opt/tmp/*

start-all.sh

start-dfs.sh 

start-yarn.sh 

hadoop dfsadmin -report查看使用情况


启动成功后访问:

ip:50070



ip:8088


即可。






猜你喜欢

转载自blog.csdn.net/xiaohanshasha/article/details/80682709
今日推荐