第一节:环境变量配置
sudo vim /etc/profile
# Java Env
export JAVA_HOME=/usr/local/java/jdk1.8.0_121
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# Hadoop Env
export HADOOP_HOME=/home/hadoop/hadoop-2.7.3
export HADOOP_PREFIX=${HADOOP_HOME}
export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin
export HADOOP_COMMON_HOME=${HADOOP_PREFIX}
export HADOOP_HDFS_HOME=${HADOOP_PREFIX}
export HADOOP_MAPRED_HOME=${HADOOP_PREFIX}
export HADOOP_YARN_HOME=${HADOOP_PREFIX}
第二节:hdfs相关操作
所有操作都在hadoop-2.7.3目录下(或已经部署了所有环境变量)
查看名称nn1节点的状态: hdfs haadmin -getServiceState nn1 (standby或者是active)
单独启动操作:
启动namenode: hadoop-daemon.sh start namenode
启动datanode: hadoop-daemon.sh start datanode
启动journalnode: hadoop-daemon.sh start journalnode
单独停止操作:
停止namenode: hadoop-daemon.sh stop namenode
停止datanode: hadoop-daemon.sh stop datanode
停止journalnode: hadoop-daemon.sh stop journalnode
其他操作:
namenode节点格式化:hdfs namenode -format
nn2节点格式化并同步nn1元数据:hdfs namenode -bootstrapStandby
nn1由standby状态切换成Active状态:hdfs haadmin -transitionToActive nn1
第三节:HDFS系统中创建目录(非linux系统目录)
参考网址:http://www.cnblogs.com/archimedes/p/hdfs-operations.html
HDFS工作空间中创建目录
递归创建HDFS目录:hdfs dfs -mkdir -p /user/hadoop
linux中hadoop用户的工作HDFS空间为:/user/hadoop 所以hadoop用户使用HDFS时创建hadoop用户的工作空间。
如果执行:hdfs dfs -mkdir /home 在根目录下创建home目录
如果执行:hdfs dfs -mkdir home 是在工作空间内创建home目录(/user/hadoop在这里创建home目录即/user/hadoop/home)
HDFS工作空间中删除目录
如果执行:hdfs dfs -rmr outt 是直接删除工作空间中的outt目录货文件
如果执行:hdfs dfs -rmr /outt 是删除根目录下的目录outt
上传文件到HDFS空间
如果执行:hdfs dfs -put /home/hadoop/work.sh a.txt #将会把linux文件系统中的work.sh文件传输到用户hadoop对应的HDFS工作空间下,即目录/user/hadoop/下。
如果执行:hdfs dfs -put /home/hadoop/work.sh /a.txt #将会把Linux文件系统中的work.sh文件传输到HDFS整个工作空间中,即目录/下。
从HDFS中下载文件到Linux相应目录中
执行:hdfs dfs -get work.txt /home/hadoop/work.txt #将会下载hadoop对应的工作空间中的work.txt文件到Linux本地目录中。
删除HDFS工作空间中的相应文件或目录
执行:hdfs dfs -rmr work.txt #将会删除对应的文件
查看HDFS文件系统
查看hdfs系统中目录下的内容:hdfs dfs -ls /
查看hdfs文件大小单位为G:hdfs dfs -du -h /home (不加-h) 是以kb为单位
查看HDFS工作环境中某文件的文件内容:hdfs dfs -cat work.txt
分析HDFS系统中文件完整程度:hdfs fsck /user/hadoop/value.txt -files -blocks -locations