前提: 最近在学习HBase,HBase 是在 Hadoop 这种分布式框架中提供持久化的数据存储与管理的工具。在使用 HBase 的分布式集群模式时,前提是必须有 Hadoop 系统,所以安装HBase前需要先安装hadoop,于是我拿了台旧笔记本改装成了CentOS系统,开始hadoop安装之旅。
首先介绍下Hadoop的核心组成部分: HDFS: Hadoop Distributed File System,分布式文件系统,hdfs还可以再细分为NameNode、SecondaryNameNode、DataNode。 YARN: Yet Another Resource Negotiator,资源管理调度系统 Mapreduce:分布式运算框架 下图是hadoop生态系统结构图(图片来源于C语言中文网:http://m.biancheng.net/view/6501.html) 具体安装步骤如下(我的机器安装的Linux版本是:CentOS Linux release 7.8.2003 (Core);安装hadoop前默认已安装好jdk,我机器的jdk版本为:java version “1.8.0_261”)
1、软件下载 在hadoop官网下载你需要的版本,我下载的版本是3.2.1: 官网地址:https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz
2、上传文件至linux服务器并解压安装包
scp /Users/xxx/downloads/hadoop-3.2.1.tar.gz username@192.168.3.112:/home/xxx/hadoop //将hadoop安装包上传至服务器进入hadoop安装包目录解压安装包
tar -zxvf hadoop-3.2.1.tar.gz //解压安装包3、配置hadoop (1)修改etc/hadoop/hadoop-env.sh
// 将hadoop-env.sh中的 #export JAVA_HOME= // 修改为 export JAVA_HOME=/home/xxx/java/jdk1.8.0_261 //你的jdk安装目录(2)在core-site.xml的configuration下增加配置
<configuration> #增加配置(fs.defaultFS:默认文件系统名称) <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>(3)在hdfs-site.xml的configuration下增加配置
<configuration> #增加配置(dfs.replication:文件副本数) <property> <name>dfs.replication</name> <value>1</value> </property> #增加配置(除本机外的其它ip也可访问namenode) <property> <name>dfs.namenode.http-address</name> <value>0.0.0.0:50070</value> </property> </configuration>4、设置主机允许无密码SSH链接
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa // 创建公钥私钥对 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys // chmod 0600 ~/.ssh/authorized_keys // 设置权限,owner有读写权限,group和other无权限5、进入bin目录下格式化文件系统
hdfs namenode -format6、启动NameNode和DataNode进程(启动hdfs)
./sbin/start-dfs.sh // 启动NameNode和DataNode进程 ./sbin/stop-dfs.sh // 关闭NameNode和DataNode进程7.防火墙开启50070端口
开端口命令:firewall-cmd --zone=public --add-port=50070/tcp --permanent 重启防火墙:systemctl restart firewalld.service 命令含义: --zone #作用域 --add-port=80/tcp #添加端口,格式为:端口/通讯协议 --permanent #永久生效,没有此参数重启后失效8、输入地址:http://192.168.3.112:50070,可查看HDFS
9、 启动YARN
./sbin/start-yarn.sh //启动yarn ./sbin/stop-yarn.sh //关闭yarn10、防火墙开启8088端口
开端口命令:firewall-cmd --zone=public --add-port=8088/tcp --permanent 重启防火墙:systemctl restart firewalld.service11、输入地址:http://192.168.3.112:8088/,可查看YARN