脚本宝典收集整理的这篇文章主要介绍了HDFS完全分布式搭建,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
没有问题
解压,如图。
NameNode1 | NameNode2 | DataNode | Zookeeper | ZKfc | JournalNode | |
---|---|---|---|---|---|---|
Node1 | 是 | 是 | 是 | 是 | 是 | |
Node2 | 是 | 是 | 是 | 是 | 是 | |
Node3 | 是 | 是 | 是 |
```shell
[root@BaseNode opt]# ls
apache-tomcat-18080 hadoop-3.1.2 zook
apache-tomcat-8080 nginx zook
[root@BaseNode opt]# cd hadoop-3.1.2/etc/hadoop/
[root@BaseNode hadoop]#
[root@BaseNode hadoop]# vim hadoop-env.sh
由于通过SSH远程启动进程的时候默认不会加载/etc/PRofile设置,JAVA_HOME变量就加载不到,需要手动指定。在最后一行追加:
export JAVA_HOME=/usr/java/jdk1.8.0_131
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export export HDFS_SECONDARYNAMENODE_USER=root
追加到configuration标签中间
<configuration>
<!-- 指定访问HDFS的时候路径的默认前缀 / hdfs://node1:9000/ -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://zkbase:9000</value>
</property>
<!-- 指定hadoop的临时目录位置,它会给namenode、secondarynamenode以及datanode的存储目录指定前缀 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/VAR/bdp/hadoop/full</value>
</property>
</configuration>
[root@BaseNode hadoop]# vim hdfs-site.xML
<configuration>
<!--声明日志node-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>zknode1:50090</value>
</property>
<property>
<name>dfs.namenode.secondary.https-address</name>
<value>zknode1:50091</value>
</property>
<property>
<name>dfs.namenode.secondary.https-address</name>
<value>zknode1:50093</value>
</property>
<!--声明副本数量-->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
[root@BaseNode hadoop]# vim workers
BaseNode
zknode1
zknode2
zkNode3
~
export HADOOP_HOME=/opt//hadoop-3.1.2
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin/$PATH
source /etc/profile
在basenode上面,hdfs namenode -format
啊偶,失败了
权限不足的原因,来,我们着手解决。
ssh-copy-id -i ~/.ssh/id_rsa.pub <ip>
启动成功
大功告成!
以上是脚本宝典为你收集整理的HDFS完全分布式搭建全部内容,希望文章能够帮你解决HDFS完全分布式搭建所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。