Hadoop常见Shell命令
1. 准备工作
(1)在所有主机上执行zkServer.sh status查看Zookeeper状态,如果未启动则执行zkServer.sh start,验证时只有一个leader则表示正常
zkServer.sh status
# 启动hadoop
zkServer.sh start
(2)在主节点使用命令start-all.sh启动Hadoop集群
在备用主节点的主机上执行yarn-daemon.sh start resourcemanager启动YARN主节点服务
# 主节点
start-all.sh
# 备用主节点
yarn-daemon.sh start resourcemanager
(3)验证启动情况
# 验证是否启动成功
jps
主节点上有NameNode、ResourceManager、DFSZKFailoverController三个进程
备用主节点上有NameNode、ResourceManager、DFSZKFailoverControlle
数据节点上有DataNode、NodeManager、JournalNode
使用hadoop dfsadmin -report 查看HDFS状态
hadoop dfsadmin -report
2.基本命令
-ls : 查看指定路径的当前目录结构
-ls -R : 递归查看指定路径的目录结构
-du : 统计目录下文件(夹)的大小
-mkdir : 创建空白文件夹(-p 递归创建文件夹)
-rm : 删除文件/空白文件夹
-touchz : 创建空白文件
-cat : 查看文件内容
-text : 将源文件输出为文本格式
-get : 将hadoop上某个文件下载到本地已有目录下
-mv : 将hadoop上某个文件移动
-kill : 将正在运行的hsdoop作业kill掉
-du -h : 显示目录下各个文件大小
-du -s : 汇总目录下文件大小
-du -s -h : 汇总文件所占存储空间
3.基础练习
(1)新建文本文件file1.txt并查看
hadoop fs -touchz file1.txt
hadoop fs -ls
hadoop fs -ls /user/admin
(创建的文件的默认目录是/user/admin,如果要查看就访问此目录)
(2)查看hdfs中file1.txt的读写权限、文件大小、创建时间、路径等
hadoop fs -du /user/admin/file1.txt
hadoop fs -du -s /user/admin/file1.txt
hadoop fs -du -h /user/admin/file1.txt
(3)从HDFS下载file1.txt到本地目录
hadoop fs -get /user.admin/file1.txt /home/admin
/user/admin是hdfs文件目录,/home/admin是本地目录
(4)新建文件夹,-p是递归创建文件夹
hadoop fs -mkdir dir1
hadoop fs -mkdir -p /user/admin/dir1/dir2
递归创建时要写绝对路径
(5)在本地echo一个文本文件file2.txt,里面写有内容,上传到hdfs的dir1文件夹下后查看内容
echo 'hello world!'> /home/admin/file2.txt
hadoop fs -put /home/admin/file2.txt /user/admin/dir1
hadoop fs -cat /user/admin/dir1/file2.txt
hadoop fs -text /user/admin/dir1/file2.txt
hdfs中不能给文件中写内容,所以在本地写好后长传到hdfs中
(7)删除文件
hadoop fs -rm file1.txt
(8)删除文件夹
hadoop fs -rm -r test
查看jps进程
http://192.168.10.111:50070/
查看集群状态,日志信息
http://192.168.10.111:8088/