Hadoop基本操作指令假设Hadoop的安装目录HADOOP_HOME为/home/admin/hadoop,默认认为Hadoop环境已经由运维人员配置好直接可以使用启动与关闭启动Hadoop1. 进入HADOOP_HOME目录。
2. 执行sh bin/start-all.sh关闭Hadoop1. 进入HADOOP_HOME目录。
2. 执行sh bin/stop-all.sh文件操作Hadoop使用的是HDFS,能够实现的功能和我们使用的磁盘系统类似。
并且支持通配符,如*。
查看文件列表查看hdfs中/user/admin/aaron目录下的文件。
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs -ls /user/admin/aaron这样,我们就找到了hdfs中/user/admin/aaron目录下的文件了。
我们也可以列出hdfs中/user/admin/aaron目录下的所有文件(包括子目录下的文件)。
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs -lsr /user/admin/aaron创建文件目录查看hdfs中/user/admin/aaron目录下再新建一个叫做newDir的新目录。
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs -mkdir /user/admin/aaron/newDir删除文件删除hdfs中/user/admin/aaron目录下一个名叫needDelete的文件1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs -rm /user/admin/aaron/needDelete删除hdfs中/user/admin/aaron目录以及该目录下的所有文件1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs -rmr /user/admin/aaron上传文件上传一个本机/home/admin/newFile的文件到hdfs中/user/admin/aaron目录下1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs –put /home/admin/newFile /user/admin/aaron/下载文件下载hdfs中/user/admin/aaron目录下的newFile文件到本机/home/admin/newFile 中1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs –get /user/admin/aaron/newFile/home/admin/newFile查看文件我们可以直接在hdfs中直接查看文件,功能与类是cat类似查看hdfs中/user/admin/aaron目录下的newFile文件1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs –cat /home/admin/newFileMapReduce Job操作提交MapReduce Job原则上说,Hadoop所有的MapReduce Job都是一个jar包。
运行一个/home/admin/hadoop/job.jar的MapReduce Job1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop jar /home/admin/hadoop/job.jar [jobMainClass] [jobArgs]杀死某个正在运行的Job假设Job_Id为:job_201005310937_00531. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop job -kill job_201005310937_0053更多Hadoop的命令上面介绍的这些Hadoop的操作命令是我们最常用的。
如果你希望了解更多,可以按照如下的方式获取命令的说明信息。
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop我们可以看到更多命令的说明信息:Usage: hadoop [--config confdir] COMMANDwhere COMMAND is one of:namenode -format format the DFS filesystemsecondarynamenode run the DFS secondary namenodenamenode run the DFS namenodedatanode run a DFS datanodedfsadmin run a DFS admin clientfsck run a DFS filesystem checking utilityfs run a generic filesystem user clientbalancer run a cluster balancing utilityjobtracker run the MapReduce job Tracker nodepipes run a Pipes jobtasktracker run a MapReduce task Tracker nodejob manipulate MapReduce jobsqueue get information regarding JobQueuesversion print the versionjar <jar> run a jar filedistcp <srcurl> <desturl> copy file or directories recursivelyarchive -archiveName NAME <src>* <dest> create a hadoop archive daemonlog get/set the log level for each daemonorCLASSNAME run the class named CLASSNAMEMost commands print help when invoked w/o parameters.Hadoop命令大全1、列出所有Hadoop Shell支持的命令$ bin/hadoop fs -help2、显示关于某个命令的详细信息$ bin/hadoop fs -help command-name3、用户可使用以下命令在指定路径下查看历史日志汇总$ bin/hadoop job -history output-dir这条命令会显示作业的细节信息,失败和终止的任务细节。
4、关于作业的更多细节,比如成功的任务,以及对每个任务的所做的尝试次数等可以用下面的命令查看$ bin/hadoop job -history all output-dir5、格式化一个新的分布式文件系统:$ bin/hadoop namenode -format6、在分配的NameNode上,运行下面的命令启动HDFS:$ bin/start-dfs.shbin/start-dfs.sh脚本会参照NameNode上${HADOOP_CONF_DIR}/slaves文件的内容,在所有列出的slave上启动DataNode守护进程。
7、在分配的JobTracker上,运行下面的命令启动Map/Reduce:$ bin/start-mapred.shbin/start-mapred.sh脚本会参照JobTracker上${HADOOP_CONF_DIR}/slaves文件的内容,在所有列出的slave上启动TaskTracker守护进程。
8、在分配的NameNode上,执行下面的命令停止HDFS:$ bin/stop-dfs.shbin/stop-dfs.sh脚本会参照NameNode上${HADOOP_CONF_DIR}/slaves文件的内容,在所有列出的slave上停止DataNode守护进程。
9、在分配的JobTracker上,运行下面的命令停止Map/Reduce:$ bin/stop-mapred.shbin/stop-mapred.sh脚本会参照JobTracker上${HADOOP_CONF_DIR}/slaves文件的内容,在所有列出的slave上停止TaskTracker守护进程。
DFSShell10、创建一个名为/foodir 的目录$ bin/hadoop dfs -mkdir /foodir11、创建一个名为/foodir 的目录$ bin/hadoop dfs -mkdir /foodir12、查看名为/foodir/myfile.txt 的文件内容$ bin/hadoop dfs -cat /foodir/myfile.txtDFSAdmin13、将集群置于安全模式$ bin/hadoop dfsadmin -safemode enter14、显示Datanode列表$ bin/hadoop dfsadmin -report15、使Datanode节点datanodename退役$ bin/hadoop dfsadmin -decommission datanodename16、bin/hadoop dfsadmin -help 命令能列出所有当前支持的命令。
比如:* -report:报告HDFS的基本统计信息。
有些信息也可以在NameNode Web 服务首页看到。
* -safemode:虽然通常并不需要,但是管理员的确可以手动让NameNode 进入或离开安全模式。
* -finalizeUpgrade:删除上一次升级时制作的集群备份。
17、显式地将HDFS置于安全模式$ bin/hadoop dfsadmin -safemode18、在升级之前,管理员需要用(升级终结操作)命令删除存在的备份文件$ bin/hadoop dfsadmin -finalizeUpgrade19、能够知道是否需要对一个集群执行升级终结操作。
$ dfsadmin -upgradeProgress status20、使用-upgrade选项运行新的版本$ bin/start-dfs.sh -upgrade21、如果需要退回到老版本,就必须停止集群并且部署老版本的Hadoop,用回滚选项启动集群$ bin/start-dfs.h -rollback22、下面的新命令或新选项是用于支持配额的。
前两个是管理员命令。
* dfsadmin -setquota <N> <directory>...<directory>把每个目录配额设为N。