任何一条命令执行前要确保知道如下三个环境
1.你是用那个用户执行命令的 (sudo 执行命令创建的文件都是root用户的)
2.你所在的主机是哪个
3.你当前所在的目录是否影响你命令的执行!!!!!!
操作之前先做 rm -rf /usr/local/hadoop/tmp/* !!!!!!
1.sudo tar xzvf software/zookeeper-3.4.10.tar.gz -C /usr/local/
目的:将zookeeper解压到 /usr/local/目录下
验证:ll /usr/local/ ,看一下有没有zookeeper-3.4.10这个文件
2. cd /usr/local/
目的:进入/usr/local/的路径
验证:看到用户名哪里有没有出现/usr/local/
3. sudo mv /usr/local/zookeeper-3.4.10/ /usr/local/zookeeper
目的:将zookeeper-3.4.10改名为zookeeper
验证:输入cd /usr/local/zookeeper看存不存在
4. ll -d zookeeper 查看此目录的属性
目的:查看zookeeper目录的属性
验证:出现zookeeper的属性
5. sudo chown -R hadoop:hadoop zookeeper/
目的:将当前目录下zookeeper的文件与子目录的拥有者和使用者都设为Hadoop,
验证:
6. mkdir zkData
目的:创建zkData这个目录
验证:进入这个目录
7. touch myid
目的:创建myid文件
验证:用find命令查找文件
8. cd /usr/local/zookeeper/conf
目的:进入到/usr/local/zookeeper/conf这个路径
验证:看用户名那里有没有进入该路径
9. mv zoo_sample.cfg zoo.cfg
目的:把zoo_sample.cfg改名为zoo.cfg
验证:用find命令查找文件
10. vim zoo.cfg 修改如下内容
目的:打开zoo.cfg进行读写
验证:cat zoo.cfg
#######################cluster##########################
dataDir=/usr/local/zookeeper/zkData
#######################cluster##########################
server.2=hadoop01:2888:3888
server.3=hadoop02:2888:3888
server.4=hadoop03:2888:3888
#######################cluster##########################
11.
切换到hadoop02 sudo rm -fr /usr/local/zookeeper
切换到hadoop03 sudo rm -fr /usr/local/zookeeper
目的:逐一删除/usr/local/zookeeper目录及以下的档案,不用逐一确定
验证:尝试进入该路径,如果显示该目录不存在就表示成功
12. 切换到hadoop01
cd /usr/local/
目的:进入该路径
13. scp -r zookeeper/ hadoop02:~
scp -r zookeeper/ hadoop03:~
目的:同步Hadoop01的设置到Hadoop02,03
验证:
14
切换到hadoop02 sudo mv zookeeper /usr/local/
切换到hadoop03 sudo mv zookeeper /usr/local/
目的:移动zookeeper目录到/usr/local/目录之下
验证:cd /usr/local/zookeeper/
15.
切换到hadoop02 修改myid
切换到hadoop03 修改myid
目的:修改配置
验证:cat myid
16. 3台在 /usr/local/zookeeper 目录下执行 bin/zkServer.sh start
目的:启动zookeeper
验证:输入jps,出现2406 QuorumPeerMain
2570 Jps
Zookeeper问题类型:
zkData/myid
zoo.cfg
权限问题
机器间不能互通
如果有问题一直解决不掉,就查看日志!!!!!!
常见日志级别如下
DEUBG
INFO
WARN --- warn
ERROR --- error
FATAL fatal
重点关注warn,error,fatal,Exception,invalid,unknownhost
问题解决完成后,重启你的服务进程
hadoop01 hadoop02 hadoop03
namenode V V
zkfc V V
datanode V V V
zookeeper V V V
JournalNode V V V
RM V V
Hadoop集群可以做两件事情
1.存储 用HDFS存储海量数据, 配置hdfs-site.xml 就是用来实现HDFS的高可用
2.计算 用MapReduce做分布式计算, 配置 mapred-site.xml yarn-site.xml 是用来实现计算的高可用
hdfs集群web端地址 http://192.168.56.101:50070/,http://192.168.56.102:50070/查看集群的高可用状态
hdfs 命令行查看高可用状态 hdfs haadmin