超详细Hadoop安装教程(单机版、伪分布式)

打印 上一主题 下一主题

主题 919|帖子 919|积分 2757

1.Hadoop分布式系统底子架构先容

   Hadoop是一个由Apache基金会所开发的分布式系统底子架构。用户可以在不了解分布式底层细节的环境下,开发分布式程序。充实利用集群的威力进行高速运算和存储。
  1.1.Hadoop核心

   Hadoop的框架最核心的计划就是:HDFSMapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了盘算 。
  2.Hadoop安装教程

2.1.环境准备

此次我们选择的是通过在VMware虚拟机上面进行Hadoop的安装和配置,需要准备的东西如下:
系统环境:Ubtun20.04
JAVA jdk:jdk-8u11-linux-x64.tar
Hadoop:hadoop-2.7.1.tar
上面所需的环境准备,我已经打包整理好全部放在了网盘,有需要的同砚可以自行下载
下载链接: 环境准备.提取码:phmr
2.2.配置用户ssh 免密登录

   集群、单节点模式都需要用到 SSH 登岸(类似于长途登岸,你可以登录某台 Linux 主机,并且在上面运行命令)
  Ubuntu 默认已安装了 SSH client,我们还需要安装 SSH server,才可以实现ssh免密登录利用 ssh-keygen 生成密钥,并将密钥加入到授权中,让用户实现免密登录
  1. //Linux命令---安装SSH server
  2. sudo apt-get install openssh-server
复制代码
安装完成后,可以通过下面的命令来进行SSH登录
  1. //Linux命令---SSH登录
  2. ssh localhost
复制代码
输入后有如下提示,我们输入yes,在输入用户的密码,就可以实现登录了

但如许登岸是需要每次输入密码的,我们需要配置成SSH无密码登岸比力方便,所以我们需要实行以下代码,来实现SSH免密登录:
  1. //Linux命令---实现SSH免密登录
  2. exit                           # 退出前面的登录
  3. cd ~/.ssh/                     # 若没有该目录,请先执行一次ssh localhost
  4. ssh-keygen -t rsa              # 回车后,一直回车直到出现图形化界面
  5. cat ./id_rsa.pub >> ./authorized_keys  # 加入授权
复制代码

   出现上面的图形化界面则表示我们的SSH已经配置成功了
  做到这一步的小伙伴恭喜你,已经隔断终点又近了一步!
2.3.JAVA环境的安装和配置

在配置JAVA环境之前
首先我们通过FTP工具将下载后的软件传输到Linux虚拟机之中

FTP传输文件教程可以参考:链接
上传完成之后,实行以下命令
  1. cd /usr/lib
  2. sudo mkdir jvm #创建/usr/lib/jvm目录用来存放JDK文件
  3. cd ~ #进入hadoop用户的主目录
  4. cd Downloads  #注意区分大小写字母,刚才已经通过FTP软件把JDK安装包jdk-8u162-linux-x64.tar.gz上传到该目录下
  5. sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm  #把JDK文件解压到/usr/lib/jvm目录下
复制代码
通过cd命令进入到解压目次,通过ls命令进行查看解压效果是否成功
解压完成以后,再对jdk进行环境变量配置,方便以后利用调用jdk
  1. cd ~   #回到根目录
  2. vim ~/.bashrc        #编辑环境变量配置文件
复制代码
在环境变量中添加如下配置:
  1. export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
  2. export JRE_HOME=${JAVA_HOME}/jre
  3. export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
  4. export PATH=${JAVA_HOME}/bin:$PATH
复制代码
!!!注意:编辑保存后,肯定要通过source ~/.bashrc命令使配置生效
配置生效后,我们可以通过java -version来验证JAVA环境变量配置是否成功;成功则返回JAVA版本号,失败则报异常!
链接: link.
2.4.Hadoop安装

这里还是老规矩,配置Hadoop我们也需要通过前面的FTP工具把下载好的haodop传输到我们的Linux虚拟机中,这里我们上传选择的是根/Downolads目次下,详细上传操作请参照2.3的JDK配置
上传工作完成后,
   操作假想:首先我们先对Hadoop安装包进行解压,解压目次选择/usr/local,解压完毕后,进入前面解压到目次下,将文件更名为Hadoop,并将目次的全部权限赋予给用户:
  详细实行命令如下:
  1. sudo tar -zxf ~/下载/hadoop-2.6.0.tar.gz -C /usr/local    # 解压Hadoop到/usr/local中
  2. cd /usr/local/                                                                #进入刚刚解压的目录
  3. sudo mv ./hadoop-2.6.0/ ./hadoop            # 将文件夹名改为hadoop
  4. sudo chown -R xiaoming ./hadoop       # 将hadoop目录的权限赋予给用户xiangming
复制代码
Hadoop 解压后即可利用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:
  1. cd /usr/local/hadoop                        #进入hadoop安装目录
  2. ./bin/hadoop version                        #用于查看hadoop的版本号
复制代码
操作截图如下:

   如果出现Hadoop的版本号,则我们的安装工作已经完成,下面将进行配置工作
  2.5.单机版Hadoop配置

Hadoop 默认模式为非分布式模式(单机版),不需要修改任何配置文件即可以运行。
为了让各位同砚能进一步了解hadoop,这里我们可以通过运行一个实例来直观感受一下Hadoop的魅力
  1. cd /usr/local/hadoop                        #进入到haodop的目录下
  2. mkdir ./input                                        #创建一个文件,作为后面的输入文件
  3. cp ./etc/hadoop/.xml ./input   # 将配置文件作为输入文件
  4. ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep ./input ./output 'dfs[a-z.]+'        #正则表达式
  5. cat ./output/*          # 查看运行结果
复制代码
以上的功能是通过正则表达式来实现hadoop的配置文件词频统计:

如果你查看的效果和上面的截图一样,那么恭喜你,你的hadoop没有任何毛病!
2.6.伪分布式Hadoop配置

在伪分布式中,我们主要是修改Hadoop的两个配置文件:
要修改的配置文件名core-site.xmlhdfs-site.xml 以上两个文件的位置都处于Hadoop的安装目次/etc/hadoop/目次下
我们首先实行
  1. cd /usr/local/hadoop                 #进入到hadoop目录下
复制代码
我们通过实行以下两个命令来实现对配置文件进行修改:
命令1:vim ./etc/hadoop/core-site.xml
进入目次后,在<configuration>-</configuration>标签中加入以下配置
  1.     <property>
  2.         <name>hadoop.tmp.dir</name>
  3.         <value>file:/usr/local/hadoop/tmp</value>
  4.         <description>Abase for other temporary directories.</description>
  5.     </property>
  6.     <property>
  7.         <name>fs.defaultFS</name>
  8.         <value>hdfs://localhost:9000</value>
  9.     </property>
复制代码
命令2:vim ./etc/hadoop/hdfs-site.xml
同理在两个标记中加入如下配置
  1.     <property>
  2.         <name>dfs.replication</name>
  3.         <value>1</value>
  4.     </property>
  5.     <property>
  6.         <name>dfs.namenode.name.dir</name>
  7.         <value>file:/usr/local/hadoop/tmp/dfs/name</value>
  8.     </property>
  9.     <property>
  10.         <name>dfs.datanode.data.dir</name>
  11.         <value>file:/usr/local/hadoop/tmp/dfs/data</value>
  12.     </property>
复制代码
部门配置截图如下:

完成以上两个配置文件配置后,我们的配置工作也就完成了
2.7Hadoop初始化

初始化工作比力简单,只需要实行以下命令即可:
  1. cd /usr/local/hadoop                        #进入hadoop目录
  2. ./bin/hdfs namenode -format                #初始化hadoop
复制代码
成功的话,会看到 “successfully formatted” 的提示,详细返复书息类似如下:

初始工作完成之后,我们就可以开启Hadoop了,详细命令如下:
  1. cd /usr/local/hadoop
  2. ./sbin/start-dfs.sh  #start-dfs.sh是个完整的可执行文件,中间没有空格
复制代码
启动完成后,我们可以通过输入jps命令来进行验证Hadoop伪分布式是否配置成功:

如果第一次利用jps命令,大概会提示报错,我们只需要按照他的提示安装即可:sudo apt install jps***
若成功启动则会列出如下历程: “NameNode”、“DataNode” 和 “SecondaryNameNode”(如果 SecondaryNameNode 没有启动,请运行 sbin/stop-dfs.sh 关闭历程,然后再次实验启动实验)。如果没有 NameNode 或 DataNode ,那就是配置不成功,请过细检查之前步调,或通过查看启动日志排查原因。
到此,我们Hadoop安装和配置就到了尾声,Hadoop第一次安装配置的过程中大概会碰到各种困难,但是各位同砚肯定要对峙下去!!!
勇敢牛牛,不怕困难!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

我可以不吃啊

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表