重要路径说明:
app:所有软件的安装目录
software:安装包目录
data:测试数据目录
source:软件源码目录
app/hadoop-2.6.0-cdh5.7.0/bin:包含客户端相关的脚本
app/hadoop-2.6.0-cdh5.7.0/sbin/:包含服务端相关的脚本,例如start-yarn.sh start-dfs.sh
查看虚拟机ip
命令:ifconfig
修改主机名到ip地址的映射
命令:sudo vim /etc/hosts
HDFS环境配置
修改app/hadoop-2.6.0-cdh5.7.0/etc/hadoop
的三个文件:
1.hadoop-env.sh
根据命令echo $JAVA_HOME
可知:
[hadoop@hadoop001 hadoop]$ echo $JAVA_HOME
/home/hadoop/app/jdk1.7.0_51
因此,将JAVA_HOME修改为/home/hadoop/app/jdk1.7.0_51
:
2.core-site.xml
原来是
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop001:8020</value>
</property>
</configuration>
现修改为:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop001:8020</value>
</property>
</configuration>
3.hdfs-site.xml
复制个数设置为1,不用改,这个镜像里面已经默认配置好了。
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
格式化HDFS
格式化后,HDFS上的数据会被清空,因此只在第一次的时候格式化。
执行命令:./bin/hdfs namenode -format
使用这个教程的linux镜像直接格式化的话,会有个坑:jps
后发现DataNode不能正常运行,解决方法在此。
如果格式化成功,则会有这么一句提示:
19/04/12 02:10:34 INFO common.Storage: Storage directory /home/hadoop/tmp/dfs/name has been successfully formatted.
启动和停止HDFS
启动:./start-dfs.sh
停止:./stop-dfs.sh
使用jps
查看NameNode、DataNode、SecondaryNameNode是否都正常运行:
此外,也可以在浏览器中输入:http://192.168.89.130:50070,结果如下:
查看HDFS文件
hadoop fs -ls /
启动yarn
./sbin/start-yarn.sh
,jps
可见增加了ResourceManager和NodeManager:
启动hive
./app/hive-1.1.0-cdh5.7.0/bin/hive
启动spark
使用local模式,最后要加上mysql驱动:
./app/spark-2.1.0-bin-2.6.0-cdh5.7.0/bin/spark-shell --master local[2] --jars ~/software/mysql-connector-java-5.1.27-bin.jar
HDFS shell常用命令
-
查看文件列表:
hadoop fs -ls /
-
新建文件夹
hadoop fs -mkdir
例如:hadoop fs -mkdir /test
-
放文件进hdfs:
hadoop fs -put
例如:hadoop fs -put hdfs.cmd /test/
-
查看文件内容:
hadoop fs -text
或者hadoop fs -cat
例如:hadoop fs -text /test/hdfs.cmd
-
从hdfs取出文件到本地:
hadoop fs -get
hadoop fs -get /test/hdfs.cmd a_tmp -
删除文件
hadoop fs -rm
例如:hadoop fs -rm /test/hdfs.cmd