使用zookeeper 配置HDFS(hadoop 分布式文件系統)高可用(三)


1.安裝啟動zookeeper

a)上傳解壓zookeeper包

b)# cp zoo_sample.cfg zoo.cfg

c) # vim zoo.cfg

dataDir=/opt/data/zookeeper

server.1=node1:2888:3888

server.2=node2:2888:3888

server.3=node3:2888:3888

這里的node1是自己主機名,可以寫ip

d)分別在node1 node2 node3 的數據目錄/opt/data/zookeeper下面創建myid文件,里面寫對應server.后面的數字

# mkdir /opt/data/zookeeper

# cd /opt/data/zookeeper

# vim myid

# cd /opt/soft

# scp -r zookeeper-3.4.6 root@node2:/opt/soft

# scp -r zookeeper-3.4.6 root@node3:/opt/soft

e)配置環境變量並source生效

# vim /etc/profile

export ZK_HOME=/opt/soft/zookeeper-3.4.6

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

# source profile

 

2.配置hadoop配置文件(3個節點一致)

vim etc/hadoop/hdfs-site.xml

#原來的保留

<property>

<name>dfs.nameservices</name>

<value>sxt</value>

</property>

<property>

<name>dfs.ha.namenodes.sxt</name>

<value>nn1,nn2</value>

</property>

<property>

<name>dfs.namenode.rpc-address.sxt.nn1</name>

<value>node1:8020</value>

</property>

<property>

<name>dfs.namenode.rpc-address.sxt.nn2</name>

<value>node2:8020</value>

</property>

<property>

<name>dfs.namenode.http-address.sxt.nn1</name>

<value>node1:50070</value>

</property>

<property>

<name>dfs.namenode.http-address.sxt.nn2</name>

<value>node2:50070</value>

</property>

<property>

<name>dfs.namenode.shared.edits.dir</name>

<value>qjournal://node1:8485;node2:8485;node3:8485/sxt</value>

</property>

<property>

<name>dfs.client.failover.proxy.provider.sxt</name>

<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>

</property>

<property>

<name>dfs.ha.fencing.methods</name>

<value>sshfence</value>

</property>

<property>

<name>dfs.ha.fencing.ssh.private-key-files</name>

<value>/root/.ssh/id_rsa</value>

</property>

<property>

<name>dfs.ha.automatic-failover.enabled</name>

<value>true</value>

</property>

配置core-site.xml

vim etc/hadoop/core-site.xml

#原來的刪除

<property>

<name>fs.defaultFS</name>

<value>hdfs://sxt</value>

</property>

<property>

<name>dfs.journalnode.edits.dir</name>

<value>/opt/data/journal</value>

</property>

<property>

<name>ha.zookeeper.quorum</name>

<value>node1:2181,node2:2181,node3:2181</value>

</property>

 

 

# scp -r ./* root@cai2:`pwd`

# scp -r ./* root@cai3:`pwd`

3.啟動所有journalnode

hadoop-daemon.sh start journalnode

4.其中一個namenode節點執行格式化

# 先刪除 /opt/data 下的dfs 和data文件

# hdfs namenode -format

5.另外一個namenode節點格式化拷貝

首先要將剛才格式化之后的namenode啟動起來

hadoop-daemon.sh start namenode

hdfs namenode -bootstrapStandby

6.上傳配置到zookeeper集群

hdfs zkfc -formatZK

stop-dfs.sh

--------------------------------目前已經安裝完畢----------------------------------

 

以后正常啟動順序如下:

# zkServer.sh start (所有幾點)

# start-all.sh

等1分鍾

# jps(所有節點)

在主從節點中如果namenode或resourcemanager沒起來,執行如下命令

# hadoop-daemon.sh start namenode

# yarn-daemon.sh start resourcemanager

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM