在2个windows 10上设置hadoop多群集

pxiryf3j  于 2021-05-27  发布在  Hadoop
关注(0)|答案(2)|浏览(387)

我正在尝试在两个windows设备之间建立一个多节点hadoop集群。我正在使用hadoop2.9.2。我怎样才能做到呢。

4uqofj5v

4uqofj5v1#

使用本指南在两个系统上安装openssh服务器。在本地计算机上生成新的ssh公钥和私钥对是使用无密码的远程服务器进行身份验证的第一步。将公钥添加到授权的密钥中,并将主机名添加到已知主机列表中。你可以通过搜索互联网找到如何做到这一点的指南。2.将hadoop主IP和从IP添加到主机文件。打开“c:\windows\system32\drivers\etc\hosts”并添加

your-master-ip hadoopMaster
your-salve-ip hadoopSlave

您可以在配置文件中使用这些名称。
与linux系统非常相似,要在windows:3上运行hadoop集群,必须遵循以下步骤。首先,您需要在您的系统上安装java,并且必须将javahome添加到您的环境变量中。您可以从oracle网站下载java并安装它。
从apache网站下载hadoop二进制文件并将其解压缩。
请注意,文件夹名称中不应该有空格,否则可能会遇到问题。
接下来,必须将java和hadoop home和bin文件夹添加到环境变量中。只需打开“开始”菜单,键入“环境变量”,然后从“控制面板”打开“编辑环境变量”窗口。
添加

HADOOP_HOME=”root of your hadoop extracted folder\hadoop-2.9.2″
HADOOP_BIN=”root of hadoop extracted folder\hadoop-2.9.2\bin”
JAVA_HOME=<Root of your JDK installation>”

编辑“path”环境变量并将%java\u home%、%hadoop\u home%、%hadoop\u bin%、%hadoop\u home%/sbin逐个添加到路径中。
您可以通过打开cmd并键入以下内容来验证添加的内容:

echo %HADOOP_HOME%
echo %HADOOP_BIN%
echo %PATH%

配置hadoop:10。打开“your hadoop root\hadoop-2.9.2\etc\hadoop\hadoop env.cmd”并在文件底部添加以下行:

set HADOOP_PREFIX=%HADOOP_HOME%
set HADOOP_CONF_DIR=%HADOOP_PREFIX%\etc\hadoop
set YARN_CONF_DIR=%HADOOP_CONF_DIR%
set PATH=%PATH%;%HADOOP_PREFIX%\bin

11.打开“your hadoop root\hadoop-2.9.2\etc\hadoop\hdfs site.xml”并添加以下内容:

<property>
<name>dfs.name.dir</name>
<value>your desired address</value>
</property>

<property>
<name>dfs.data.dir</name>
<value>your desired address</value>
</property>

<property>
<name>dfs.replication</name>
<value>1</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>

<property>
<name>dfs.namenode.http-address</name>
<value>hadoopMaster:50070</value>
<description>Your NameNode hostname for http access.</description>
</property>

<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoopMaster:50090</value>
<description>Your Secondary NameNode hostname for http access.</description>
</property>

编辑core-site.xml并添加:

<property>
<name>fs.default.name</name>
<value>hdfs://hadoopMaster:9000</value>
</property>

<property>
<name>dfs.permissions</name>
<value>false</value>
</property>

<property>
<name>hadoop.tmp.dir</name>
<value>your-temp-directory</value>
<description>A base for other temporary directories.</description>
</property>

打开“root to hadoop\hadoop-2.9.2\etc\hadoop\mapred site.xml”并在标记中添加以下内容。如果看不到mapred-site.xml,请打开mapred-site.xml.template文件并将其重命名为mapred-site.xml

<property>
<name>mapred.job.tracker</name>
<value>hadoopMaster:9001</value>
</property>

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

14.编辑yarn-site.xml并添加:

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce.shuffle</value>
<description>Long running service which executes on Node Manager(s) and provides MapReduce Sort and Shuffle functionality.</description>
</property>

<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
<description>Enable log aggregation so application logs are moved onto hdfs and are viewable via web ui after the application completed. The default location on hdfs is '/log' and can be changed via yarn.nodemanager.remote-app-log-dir property</description>
</property>

<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoopMaster:8030</value>
</property>

<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoopMaster:8031</value>
</property>

<property>
<name>yarn.resourcemanager.address</name>
<value>hadoopMaster:8032</value>
</property>

<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoopMaster:8033</value>
</property>

<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoopMaster:8088</value>
</property>

在“根hadoop目录/hadoop/bin”中添加

hadoopSlave

在从属节点上也执行这些步骤。
打开cmd和cd到hadoop目录中的sbin文件夹。18.设置namenode的格式

hadoop namenode -format

19.运行以下命令:

start-dfs.sh

然后运行:

start-yarn.sh
uujelgoq

uujelgoq2#

经过反复试验,下面的人把工作交给了我。
按照@absolute初学者前面的回答做同样的配置。
在所有机器上禁用windows防火墙(我想你可以保持它,只是乱弄规则,但这是你要找出的)
hdfs namenode-格式化所有节点(主节点和从节点)
确保所有3个节点中的datanode文件夹都为空(只需shift+del)
在主节点中运行start-all.cmd。应显示以下所有内容。50436名称节点54696节点管理器54744数据节点60028 jps 7340资源管理器
在从属节点中运行start-all.cmd。以下所有内容都应出现在6116 datanode 2408 jps 3208 nodemanager中
注意,nameode和resource manager没有出现的原因是,它们正在master节点上运行,并且已经占用了端口,您只需要运行master resourcemanger和name节点
注意,如果您看到了linux的multi-cluster教程,那么主节点在执行jps时也会显示seceondrynamenode。不知道为什么它不会出现在窗口。
去master:50070,并导航到数据节点,您应该会看到如下内容

去master:8088,并导航到节点,您应该会看到如下内容

相关问题