Hadoop学习笔记[2]-HDFS安装部署流程
1、必备软件
1-1 java(最好是1.8及其以上,but1.8以上只有open jdk了)
1-2 ssh软件,免密登录需要具体怎么配置网络上搜吧
直接在官网上搜就行了【https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html 这里就有】,主要就是生成公钥和私钥,并将公钥分发给要免密登录的服务器,登录时,会拿着自己的私钥和对方的公钥进行匹配,匹配上就可以登录,等于是说对方有一把指纹锁,你把公钥给对方等于是在指纹锁中录入了自身的信息,等你拿着私钥登录对方时,等于在锁上录入指纹信息,如果匹配上,则表示可以开锁【即可以登录对方服务器】
2、hadoop.env文件配置JAVA_HOME变量
为啥?一般情况下我们在不是Java时都会在/etc/profile中配置JAVA_HOME,为什么还要再配置一次?主要是因为启动hdfs的时候,
使用的是ssh远程登录到别的服务器运行命令,但是ssh远程后无法取到/etc/profile中的环境变量,所以才需要在hadoop.env中进行配置,表示要同时告诉操作系统和hadoop本机的JAVA_HOME在哪
3、解压hadoop安装包到某个文件夹
4、单机版部署(伪分布式)
4-1 角色分类(伪分布式的所有角色都在同一台服务器)
- 1)、NameNode 主要是存储元数据
- 2)、DataNode 存储文件的block块
- 3)、secondaryNameNode周期合并fsimage(元数据全量快照)和edit_log(增量操作日志)生成新的fsimage返回给NameNode【减轻NameNode的压力
4-2 配置/etc/hadoop下的core-site.xml
<property>
<name>fs.defaultFS</name> <!--nameNode的位置信息-->
<value>hdfs://hdp001:9000</value>
</property>
4-3 配置hdfs-site.xml
<property> <!-- hdfs文件的副本 -->
<name>dfs.replication</name>
<value>1</value>
</property>
<property> <!-- nameNode元数据存储路径 -->
<name>dfs.namenode.name.dir</name>
<value>/var/hadoop/hdfs/local/dfs/name</value>
</property>
<property> <!-- DataNode数据存储路径-->
<name>dfs.datanode.data.dir</name>
<value>/var/hadoop/hdfs/local/dfs/data</value>
</property>
<property> <!-- secondaryNameNode服务器地址 -->