hadoop 2.6.5下的服务器搭建记录

勤奋不是嘴上说说而已,而是实际的行动,在勤奋的苦度中持之以恒,永不退却。业精于勤,荒于嬉;行成于思,毁于随。在人生的仕途上,我们毫不迟疑地选择勤奋,她是几乎于世界上一切成就的催产婆。只要我们拥着勤奋去思考,拥着勤奋的手去耕耘,用抱勤奋的心去对待工作,浪迹红尘而坚韧不拔,那么,我们的生命就会绽放火花,让人生的时光更加的闪亮而精彩。

导读:本篇文章讲解 hadoop 2.6.5下的服务器搭建记录,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

免密钥有两个需求场景:
1.管理脚本 远程管理其他的节点脚本启动
2.ZKFC:需要免密钥控制对方和自己

JNN配置步骤:
1.逻辑到物理的映射
2.journalnode相关位置信息的一个描述
3.发生故障免密钥的切换的配置

启动过程
1.先启动JNN
2.再启动一个NameNode进行格式化,然后启动这个namenode
3.另外一个NameNode启动进行信息同步

1.上传解压tar xf zookeeper-3.4.6.tar.gz
2. mv zookeeper-3.4.6 /opt/test/
3.配置环境变量
export ZOOKEEPER_HOME=/opt/test/zookeeper-3.4.6
export PATH=

P

A

T

H

:

PATH:

PATH:JAVA_HOME/bin:

H

A

D

O

O

P

H

O

M

E

/

b

i

n

:

HADOOP_HOME/bin:

HADOOPHOME/bin:HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin
4. cp /opt/test/zookeeper-3.4.6/conf
cp zoo_sample.cfg zoo.cfg
4. vi zoo.cfg
dataDir=/var/test/hadoop/zookeeper
server.1=192.168.0.102:2888:3888
server.2=192.168.0.103:2888:3888
server.3=192.168.0.104:2888:3888
5. 创建myid
[root@node2 conf]# mkdir -p /var/test/hadoop/zk
[root@node2 conf]# echo 1 > /var/test/hadoop/zk/myid
6.复制到其他的机器上
scp -r zookeeper-3.4.6/ node3:pwd
scp -r zookeeper-3.4.6/ node4:pwd

[root@node3 test]# mkdir -p /var/test/hadoop/zk
[root@node3 test]# echo 2 > /var/test/hadoop/zk/myid

[root@node4 ~]# mkdir -p /var/test/hadoop/zk
[root@node4 ~]# echo 3 > /var/test/hadoop/zk/myid
在node3 node4上配置环境变量
export ZOOKEEPER_HOME=/opt/test/zookeeper-3.4.6
export PATH=

P

A

T

H

:

PATH:

PATH:JAVA_HOME/bin:

H

A

D

O

O

P

H

O

M

E

/

b

i

n

:

HADOOP_HOME/bin:

HADOOPHOME/bin:HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin
7.启动 node2 node3 node4
zkServer.sh start
zkServer.sh status查看状态

zookeeper配置完毕!ok!

继续配置

  1. /opt/test/hadoop-2.6.5/etc
    cp -r hadoop hadoop-full

hadoop-full 就是以前的没有zooker的完全配置环境,完全分布式

  1. vi hdfs-site.xml

    dfs.namenode.secondary.http-address
    node2:50090

    没有意义了,在HA中secondary没有意义了

    dfs.replication
    2

    dfs.nameservices
    mycluster

    dfs.ha.namenodes.mycluster
    nn1,nn2

    dfs.namenode.rpc-address.mycluster.nn1
    node1:8020

    dfs.namenode.rpc-address.mycluster.nn2
    node2:8020

    dfs.namenode.http-address.mycluster.nn1
    node1:50070

    dfs.namenode.http-address.mycluster.nn2
    node2:50070

    dfs.namenode.shared.edits.dir
    qjournal://node1:8485;node2:8485;node3:8485/mycluster

    dfs.journalnode.edits.dir
    /var/test/hadoop/ha/jn

dfs.client.failover.proxy.provider.mycluster org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider dfs.ha.fencing.methods sshfence dfs.ha.fencing.ssh.private-key-files /root/.ssh/id_dsa dfs.ha.automatic-failover.enabled true

2.core-site.xml
注意:hadoop.tmp.dir的配置变更:/var/test/hadoop-2.6/ha

fs.defaultFS
hdfs://mycluster

hadoop.tmp.dir
/var/test/hadoop/ha

ha.zookeeper.quorum
node2:2181,node3:2181,node4:2181

客户端开发,保证core,hdfs-site.xml都被客户端加载。

3.将修改分发到其他的机器上
scp hdfs-site.xml core-site.xml node2:pwd
scp hdfs-site.xml core-site.xml node3:pwd
scp hdfs-site.xml core-site.xml node4:pwd
scp hdfs-site.xml core-site.xml node5:pwd

  1. node1和node2免密钥控制对方和自己
    ssh-keygen -t dsa -P ‘’ -f ~/.ssh/id_dsa
    cat id_dsa.pub >> authorized_keys
    同样的方式让node1和node2对自己免密钥
    自己可以免密钥了
    scp id_dsa.pub node1:pwd/node2.pub
    cat node2.pub >> authorized_keys
    node1对node2免密码了
    在node1上
    scp id_dsa.pub node2:pwd/node1.pub
    在node2上
    cat node1.pub >> authorized_keys
    node2对node1也免密钥了

5.部署的细节
格式化期间有限启动一个namenode
node1启动
hadoop-daemon.sh start journalnode
node2启动
hadoop-daemon.sh start journalnode
node3启动
hadoop-daemon.sh start journalnode

格式化
node1
hdfs namenode -format
启动
hadoop-daemon.sh start namenode
node2
hdfs namenode -bootstrapStandby
node1
hdfs zkfc -formatZK 在此之前确保zookeeper是否在node2 node3 node4
启动zkServer.sh status
node2 node3 node4中的一个客户端启动起来zkCli.sh

[zk: localhost:2181(CONNECTED) 3] ls /hadoop-ha/mycluster
[]

node1上启动服务:
start-dfs.sh
node04上查看
[zk: localhost:2181(CONNECTED) 0] get /hadoop-ha/mycluster/ActiveStandbyElectorLock

myclusternn1node1 �>(�>

cZxid = 0x200000007
ctime = Sun Sep 13 04:17:51 CST 2020
mZxid = 0x200000007
mtime = Sun Sep 13 04:17:51 CST 2020
pZxid = 0x200000007
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x17483f2c1de0001
dataLength = 29
numChildren = 0

node1上杀死namenode的进程
kill -9 pid
查看node4 get /hadoop-ha/mycluster/ActiveStandbyElectorLock
node2已经称为namenode
恢复
hadoop-daemon.sh start namenode
node1已经standby

50070不能访问一般是
1.hdfs-site.xml

增加如下内容:

           <property>
                    <name>dfs.namenode.http.address</name>
                   <value>slave1:50070</value>
           </property>

2.关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

访问:

http://192.168.0.200:50070
http://masterhost:50070

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/140825.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!