红旗Linux

关注公众号 jb51net

关闭
操作系统 > 红旗Linux >

Linux下的如何快速安装Hadoop

脚本之家

大家都对大数据感兴趣,但是大家都没有想去如何实践到地方,如何落实去学习Hadoop,我们学习任何一门技术的时候,都不用想,上来肯定是去安装,然后去实践,不得不说,现在你去网上搜索,如何安装Hadoop,那很多出来的都是从 Unbutu 系统下如何安装,很多也都讲解的不是很清楚,阿粉也比较想学习,所以就准备了如何安装 Hadoop 的 Linux 的教程,大家上手就能学习。阿粉就开始给大家写一个安装 Hadoop 的教程。

准备工作

1.我们首先可以去阿里云或者华为云去租用一台服务器,毕竟一个初级版本的服务器,也没有那么贵,阿粉还是用的之前租用的那台,我们选择安装 Linux8 的版本,如果是本机的话,你需要下载 CentOS8 的镜像,然后通过虚拟机安装到 VM 上就可以了,安装完成我们就可以开始安装 Hadoop 了

我们先说说 Hadoop 都能干啥,以及人们经常对 Hadoop 误解。

Hadoop主要是分布式计算和存储的框架,所以Hadoop工作过程主要依赖于HDFS(Hadoop Distributed File System)分布式存储系统和Mapreduce分布式计算框架。

但是很多人就会对 Hadoop 产生一个误解,有些非常捧 Hadoop 的人就会说,Hadoop 什么东西都可以做,实际上不是的,每一项技术的出现,都是对应着解决不同的问题的,比如我们接下来要学习的 Hadoop 。Hadoop适合来做数据分析,但是绝对不是 BI ,传统 BI 是属于数据展现层(Data Presentation),Hadoop就是专注在半结构化、非结构化数据的数据载体,跟BI是不同层次的概念。

还有人说 Hadoop 就是 ETL ,就相当于数据处理,但是,Hadoop 并不是一个绝对意义上的 ETL 。

安装 Hadoop 教程

1.安装SSH

yum install openssh-server 

OpenSSH是Secure Shell的一个开源实现,OpenSSH Server安装完成后在/etc/init.d目录下应该会增加一个名为sshd的服务,一会我们就要把生成的密钥放到指定位置,然后用来当作之后的身份验证。

2.安装 rsync

yum -y install rsync 

3.产生 SSH 密钥之后继续进行后续的身份验证

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 

4.把产生的密钥放入许可文件中

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

安装Hadoop

安装 Hadoop 之前我们要先把 JDK 安装好,配置好环境变量,出现下面这个样子,就说明 JDK 已经安装完成了。

1.解压Hadoop

我们先要把 Hadoop 放到我们的服务器上,就像阿粉这个样子,

然后解压 tar zxvf hadoop-3.3.1.tar.gz

2.修改bashrc文件

vim ~/.bashrc

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-DJava.library.path=$HADOOP_HOME/lib"
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH

复制到文件中保存退出

3.生效文件

source ~/.bashrc

4.修改配置文件 etc/hadoop/core-site.xml

 <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
 <!-- 缓存存储路径 -->
 <property>
        <name>hadoop.tmp.dir</name>
        <value>/app/hadooptemp</value>
    </property>

 5.修改 etc/hadoop/hdfs-site.xml

 <!-- 默认为3,由于是单机,所以配置1 -->
 <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
 <!-- 配置http访问地址 -->
 <property>
   <name>dfs.http.address</name>
   <value>0.0.0.0:9870</value>
 </property>

6.修改 etc/hadoop/hadoop-env.sh

 

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64 

 

7.修改etc/hadoop/yarn-env.sh文件

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64 

8.修改sbin/stop-dfs.sh文件,在顶部增加

HDFS_NAMENODE_USER=root

HDFS_DATANODE_USER=root

HDFS_SECONDARYNAMENODE_USER=root

YARN_RESOURCEMANAGER_USER=root

YARN_NODEMANAGER_USER=root

9-1.修改start-yarn.sh 文件

YARN_RESOURCEMANAGER_USER=root

HADOOP_SECURE_DN_USER=yarn

YARN_NODEMANAGER_USER=root

9-2.修改stop-yarn.sh文件

YARN_RESOURCEMANAGER_USER=root

HADOOP_SECURE_DN_USER=yarn

YARN_NODEMANAGER_USER=root

上面的这些命令主要是用于当你启动 Hadoop 的时候,会提示认证不通过。

10.格式化,进入hadoop的bin文件夹,执行下面的命令

./hdfs namenode -format

11.进入sbin文件夹,启动hadoop

./start-dfs.sh 

也可以直接全部启动 ./start-all.sh

然后直接访问8088端口即可

12.防火墙开启端口,如果用的云服务器,请将9870端口加入安全组出入口

//添加9870端口到防火墙 firewall-cmd --zone=public --add-port=9870/tcp --permanent //重启防火墙 firewall-cmd --reload 

13.输入 jps 如果是如果是4个或者5个就配置成功,再继续

通过web访问hadoop,访问地址:http://IP地址:9870

当我们看到这个的时候,说明我们已经安装成功了。注意,Hadoop3.x 版本的看 Hadoop Web端的端口没有变化,但是 HDFS 端 则由 50070 变成了 9870 这个需要注意一下呦,你学会了么?