wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
--2021-06-19 01:41:29-- https://archive.apache.org/dist/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
Resolving archive.apache.org (archive.apache.org)... 138.201.131.134, 2a01:4f8:172:2ec5::2
Connecting to archive.apache.org (archive.apache.org)|138.201.131.134|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 35042811 (33M) [application/x-gzip]
Saving to: ‘zookeeper-3.4.10.tar.gz’
zookeeper-3.4.10.tar.gz 100%[========================================>] 33.42M 3.34MB/s in 11s
2021-06-19 01:41:41 (3.06 MB/s) - ‘zookeeper-3.4.10.tar.gz’ saved [35042811/35042811]
zoo.cfg 으로 변경 후 시작/종료 테스트(zoo.cfg파일 변경후 나머지 서버에도 zookeeper를 복사해줘야한다.)
conf/zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/opt/zookeeper-3.4.10
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
server.1=aidw-001:2888:3888
server.2=aidw-002:2888:3888
server.3=aidw-003:2888:3888
(base) root@aidw-001:/opt/zookeeper-3.4.10# bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
(base) root@aidw-001:/opt/zookeeper-3.4.10# bin/zkServer.sh stop
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
export HDFS_ZKFC_USER="root"
export ZOOKEEPER_HOME="/opt/zookeeper-3.4.10"
export HDFS_JOURNALNODE_USER="root"
export PATH=$HADOOP_HOME/sbin:$SPARK_HOME/bin:$SPARK_HOME/sbin:$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HIVE_HOME/bin:$SQOOP_HOME/bin:$ZOOKEEPER_HOME/bin:
root@aidw-002:/opt/zookeeper-3.4.10# bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
root@aidw-002:/opt/zookeeper-3.4.10# netstat -anp | grep 2181
tcp6 0 0 :::2181
(base) root@aidw-001:/opt/zookeeper-3.4.10# bin/zkCli.sh -server aidw-001:2181
Connecting to aidw-001:2181
2021-06-19 02:28:14,436 [myid:] - INFO [main:Environment@100] - Client environment:zookeeper.version=3.4.10-39d3a4 f269333c922ed3db283be479f9deacaa0f, built on 03/23/2017 10:13 GMT
2021-06-19 02:28:14,439 [myid:] - INFO [main:Environment@100] - Client environment:host.name=aidw-001
2021-06-19 02:28:14,439 [myid:] - INFO [main:Environment@100] - Client environment:java.version=1.8.0_292
2021-06-19 02:28:14,440 [myid:] - INFO [main:Environment@100] - Client environment:java.vendor=Private Build
2021-06-19 02:28:14,440 [myid:] - INFO [main:Environment@100] - Client environment:java.home=/usr/lib/jvm/java-8-o penjdk-amd64/jre
2021-06-19 02:28:14,440 [myid:] - INFO [main:Environment@100] - Client environment:java.class.path=/opt/zookeeper- 3.4.10/bin/../build/classes:/opt/zookeeper-3.4.10/bin/../build/lib/*.jar:/opt/zookeeper-3.4.10/bin/../lib/slf4j-log 4j12-1.6.1.jar:/opt/zookeeper-3.4.10/bin/../lib/slf4j-api-1.6.1.jar:/opt/zookeeper-3.4.10/bin/../lib/netty-3.10.5.F inal.jar:/opt/zookeeper-3.4.10/bin/../lib/log4j-1.2.16.jar:/opt/zookeeper-3.4.10/bin/../lib/jline-0.9.94.jar:/opt/z ookeeper-3.4.10/bin/../zookeeper-3.4.10.jar:/opt/zookeeper-3.4.10/bin/../src/java/lib/*.jar:/opt/zookeeper-3.4.10/b in/../conf:
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:java.library.path=/usr/java/pac kages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/us r/lib
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:java.io.tmpdir=/tmp
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:java.compiler=<NA>
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:os.name=Linux
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:os.arch=amd64
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:os.version=5.4.0-74-generic
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:user.name=root
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:user.home=/root
2021-06-19 02:28:14,441 [myid:] - INFO [main:Environment@100] - Client environment:user.dir=/opt/zookeeper-3.4.10
2021-06-19 02:28:14,442 [myid:] - INFO [main:ZooKeeper@438] - Initiating client connection, connectString=aidw-001 :2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@42110406
Welcome to ZooKeeper!
2021-06-19 02:28:14,457 [myid:] - INFO [main-SendThread(aidw-001:2181):ClientCnxn$SendThread@1032] - Opening socke t connection to server aidw-001/1.209.179.131:2181. Will not attempt to authenticate using SASL (unknown error)
JLine support is enabled
2021-06-19 02:28:14,503 [myid:] - INFO [main-SendThread(aidw-001:2181):ClientCnxn$SendThread@876] - Socket connect ion established to aidw-001/1.209.179.131:2181, initiating session
2021-06-19 02:28:14,513 [myid:] - INFO [main-SendThread(aidw-001:2181):ClientCnxn$SendThread@1299] - Session estab lishment complete on server aidw-001/1.209.179.131:2181, sessionid = 0x17a2024bdf10001, negotiated timeout = 30000
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
[zk: aidw-001:2181(CONNECTED) 0] help
ZooKeeper -server host:port cmd args
stat path [watch]
set path data [version]
ls path [watch]
delquota [-n|-b] path
ls2 path [watch]
setAcl path acl
setquota -n|-b val path
history
redo cmdno
printwatches on|off
delete path [version]
sync path
listquota path
rmr path
get path [watch]
create [-s] [-e] path data acl
addauth scheme auth
quit
getAcl path
close
connect host:port
[zk: aidw-001:2181(CONNECTED) 1]
[zk: aidw-001:2181(CONNECTED) 1] create /zk_test my_data
Created /zk_test
[zk: aidw-002:2181(CONNECTED) 1] ls /
[zookeeper, zk_test]
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- <property>
<name>dfs.replication</name>
<value>3</value>
</property> -->
<property>
<name>dfs.namenode.name.dir</name>
<!-- <value>file:/usr/local/hadoop/namenode</value> -->
<value>file:/dw/hadoop/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<!-- <value>file:/usr/local/hadoop/datanode</value> -->
<value>file:/dw/hadoop/datanode</value>
</property>
<!--############################################################-->
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/usr/local/hadoop/journalnode</value>
</property>
<property>
<name>dfs.nameservices</name>
<value>mycluster</value>
</property>
<property>
<name>dfs.ha.namenodes.mycluster</name>
<value>nn1,nn2,nn3</value>
</property>
<property>
<name>dfs.namenode.rpc-address.mycluster.nn1</name>
<value>aidw-001:8020</value>
</property>
<property>
<name>dfs.namenode.rpc-address.mycluster.nn2</name>
<value>aidw-002:8020</value>
</property>
<property>
<name>dfs.namenode.rpc-address.mycluster.nn3</name>
<value>aidw-003:8020</value>
</property>
<property>
<name>dfs.namenode.http-address.mycluster.nn1</name>
<value>aidw-001:9870</value>
</property>
<property>
<name>dfs.namenode.http-address.mycluster.nn2</name>
<value>aidw-002:9870</value>
</property>
<property>
<name>dfs.namenode.http-address.mycluster.nn3</name>
<value>aidw-003:9870</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://aidw-001:8485;aidw-002:8485;aidw-003:8485/mycluster</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.mycluster</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>
<property>
<name>ha.zookeeper.quorum</name>
<value>aidw-001:2181,aidw-002:2181,aidw-003:2181</value>
</property>
<!--############################################################-->
</configuration>
root@aidw-001:/usr/local/hadoop/logs# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
root@aidw-002:/dw/hadoop# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
root@aidw-003:/usr/local/hadoop/logs# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
root@aidw-001:/usr/local/hadoop/logs# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: follower
root@aidw-002:/dw/hadoop# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: leader
root@aidw-003:/usr/local/hadoop/logs# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: follower
root@aidw-001:/usr/local/hadoop/logs# start-all.sh
Starting namenodes on [aidw-001 aidw-002 aidw-003]
Starting datanodes
Starting journal nodes [aidw-003 aidw-002 aidw-001]
Starting ZK Failover Controllers on NN hosts [aidw-001 aidw-002 aidw-003]
Starting resourcemanager
Starting nodemanagers
root@aidw-001:/usr/local/hadoop/logs# jps
114496 QuorumPeerMain
114948 DataNode
115447 DFSZKFailoverController
115590 ResourceManager
114790 NameNode
115752 NodeManager
116123 Jps
115199 JournalNode
root@aidw-002:/dw/hadoop# jps
46147 Jps
45673 JournalNode
45818 DFSZKFailoverController
45180 QuorumPeerMain
45534 DataNode
45934 NodeManager
root@aidw-003:/usr/local/hadoop/logs# jps
31221 QuorumPeerMain
31799 DFSZKFailoverController
31655 JournalNode
32088 Jps
31915 NodeManager
31516 DataNode