3.1 Hadoop基本命令
Hadoop分布式文件系统被设计成适合运行在通用硬件上的分布式文件系统。Hadoop是一个能够对海量数据进行分布式处理的软件框架。以一种可靠、高效、可伸缩的方式进行数据处理,能够让用户轻松和使用的分布式计算平台。
3.1.1 hadoop基本命令
ls命令
查看目录下的所有文件。 使用语法:hadoop fs -ls URI hadoop fs -ls /data/lsqlointer
cat命令
打开HDFS某一文件。 使用语法:hadoop fs -cat URI hadoop fs -cat /data/pointer/index/test.txt
chmod命令
改变文件的权限。 使用语法:hadoop fs -chmod URI hadoop fs -chmod 777 /data/pointer/index/test.txt
chown命令
改变文件拥有者。 使用语法:hadoop fs -chown owner:group URI hadoop fs -chown root:supergroup /data/lsqlointer/index/test.txt
cp命令
将文件从源路径复制到目标路径。 使用语法:hadoop fs -cp URI [URI...] hadoop fs -cp /data/lsqlointer/index/test.txt /data/lsqlointer_bak
mv命令
将文件从源路径移动到目标路径(也可以进行重命名)。 使用语法:hadoop fs -cp URI [URI...] hadoop fs -mv /data/lsqlointer/index/test.txt /data/lsqlointer_bak
mkdir命令
创建一个目录。 使用语法:hadoop fs -mkdir URI hadoop fs -mkdir /data/lsqlointer/index
rm命令
删除文件(请谨慎使用)。 使用语法:hadoop fs -rm -r -f URI hadoop fs -rm -r -f /data/lsqlointer/index/test.txt
get命令
HDFS上下载文件到本地。 使用语法:hadoop fs -get hdfs文件 本地路径 hadoop fs -get /data/lsqlointer/index/test.txt /home/
put命令
将文件从本地上传到HDFS。 使用语法:hadoop fs -put 本地文件 hdfs路径 hadoop fs -put /home/test.txt /data/lsqlointer/
du命令
统计文件大小。 使用语法:hadoop fs -du -s -h URI(统计整个目录的总大小) hadoop fs -du -h URI(统计整个目录下每一个子目录的大小)
3.1.2 hadoop实操命令
1. Hadoop集群命令
启动Hadoop集群 | /opt/software/hadoop/hdfs/sbin/start-all.sh |
---|---|
停止Hadoop集群 | /opt/software/hadoop/hdfs/sbin/stop-all.sh |
启动HDFS | /opt/software/hadoop/hdfs/sbin/start-dfs.sh |
停止HDFS | /opt/software/hadoop/hdfs/sbin/stop-dfs.sh |
启/停NameNode | /opt/software/hadoop/hdfs/sbin/hadoop-daemon.sh start/stop namenode |
启/停DataNode | /opt/software/hadoop/hdfs/sbin/hadoop-daemon.sh start/stop datanode |
启动Yarn | /opt/software/hadoop/hdfs/sbin/start-yarn.sh |
停止Yarn | /opt/software/hadoop/hdfs/sbin/stop-yarn.sh |
启/停ResourceManager | /opt/software/hadoop/hdfs/sbin/yarn-daemon.sh start/stop resourcemanager |
启/停NodeManager | /opt/software/hadoop/hdfs/sbin/yarn-daemon.sh start/stop nodemanager |
2. hadoop fsck命令
执行该命令,检查hdfs上文件和目录的健康状态、block信息
图 3.1.2.1hdfs文件和目录的状态
参数说明:
- Tatal size:目录下的文件总大小
- Total dirs:该目录下总共有多少子目录
- Total files:检测目录一共有多少文件
- Over-replicated blocks:副本数大于指定副本数的block数量(正常:0)
- Under-replicated blocks:副本数小于指定副本数的block数量(正常:0)
- Mis-replicated blocks:丢失的block块数量
- Default replication factor:默认副本的个数,这里是存储两份(相当于数据一份,副本一份)
- Missing replicas:丢失的副本数
- Number of data-nodes:有多少个节点
- Number of racks:有多少个机架
3. 数据备份--快照处理
HDFS的快照是在某一时间点对指定文件系统的拷贝,快照采用只读模式,可以对重要数据进行恢复、防止用户错误性的操作。
1,为备份目录授权,允许创建快照
hdfs dfsadmin -allowSnapshot /backup
2,停止数据接入操作,创建快照(对整个库所有表进行快照)
hdfs dfs -createSnapshot /backup backup20190304
4. 主从节点切换
1,查看主从节点属性:
hdfs haadmin -getServiceState node2
2,active从node2 切换到 node1:
hdfs haadmin -failover --forcefence --forceactive node2 node1