将hadoop配置为多节点集群

jk9hmnmh  于 2021-05-30  发布在  Hadoop
关注(0)|答案(1)|浏览(484)

我在vmware上的centos linux上安装了hadoop 2.4.1。我应该将hadoop集群配置为多节点集群。首先,我不知道如何在hadoop集群上构建多节点。其次,我应该如何配置hadoop集群上的节点?请指导我一步一步详细,特别是在定义节点。

ijnw1ujt

ijnw1ujt1#

假设您正在设计两节点集群
假设您的节点及其角色如下所示:

NN-host NameNode, DataNode  
DD-host DataNode1

让我们从namenode192.168.3.171开始
配置xml文件,然后更新指向我们目录的hdfs-site.xml文件:
$hadoop\u安装/etc/hadoop/hdfs-site.xml
并将以下内容粘贴在 <configuration> 标签:

<property>
        <name>dfs.datanode.data.dir</name>
        <value>/home/user/hdfs/datanode</value>
        <description>DataNode directory</description>
    </property>

    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/home/user/hdfs/namenode</value>
        <description>NameNode directory for namespace and transaction logs storage.</description>
    </property>

    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.permissions</name>
        <value>false</value>
    </property>
    <property>
        <name>dfs.datanode.use.datanode.hostname</name>
        <value>false</value>
    </property>
    <property>
        <name>dfs.namenode.datanode.registration.ip-hostname-check</name>
        <value>false</value>
    </property>

让hadoop模块知道namenode的位置:
$hadoop\u安装/etc/hadoop/core-site.xml
并将以下内容粘贴在 <configuration> 标签:

<property>
         <name>fs.defaultFS</name>
         <value>hdfs://NN-host:50000</value> 
         <description>NameNode URI</description>
     </property>

$hadoop\u安装/etc/hadoop/mapred-site.xml

<configuration>
 <property>
  <name>mapred.job.tracker</name>
  <value>NN-host:50001</value>
 </property>

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

</configuration>

$hadoop\u安装/etc/hadoop/yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

</configuration>

现在我们可以通过发出以下命令来格式化namenode:
hdfs namenode-格式

hadoop namenode格式
现在我们必须确保我们的nn主机主节点可以无密码登录到其他节点:

ssh-copy-id -i /home/user/.ssh/id_rsa.pub user@NN-host 
ssh-copy-id -i /home/user/.ssh/id_rsa.pub user@DD-host

并将从属(datanodes)添加到从属文件。就我而言:

NN-host  
DD-host

让我们来配置从属数据节点192.168.3.44步骤对于这两个节点是相同的:
准备并创建目录:
然后更新指向我们的目录的hdfs-site.xml文件:

$HADOOP_INSTALL/etc/hadoop/hdfs-site.xml

并将以下内容粘贴在 <configuration> 标签:

<property>
         <name>dfs.datanode.data.dir</name>
         <value>/home/user/hdfs/datanode</value>
         <description>DataNode directory</description>
     </property>
     <property>
         <name>dfs.replication</name>
         <value>2</value>
     </property>
     <property>
         <name>dfs.permissions</name>
         <value>false</value>
     </property>
     <property>
         <name>dfs.datanode.use.datanode.hostname</name>
         <value>false</value>
     </property>

让hadoop模块知道namenode的位置:
$hadoop\u安装/etc/hadoop/core-site.xml
并在标签之间粘贴以下内容:

<property>
     <name>fs.defaultFS</name>
     <value>hdfs://NN-host:50000</value>
     <description>NameNode URI</description> 
 </property>

运行datanodes可以在多节点集群中看到:
dd公司-host:50075
查看ui中的所有应用程序
神经网络-host:8088

相关问题