Centos7 搭建Hadoop.docx

上传人:b****6 文档编号:13583669 上传时间:2023-06-15 格式:DOCX 页数:20 大小:438.53KB
下载 相关 举报
Centos7 搭建Hadoop.docx_第1页
第1页 / 共20页
Centos7 搭建Hadoop.docx_第2页
第2页 / 共20页
Centos7 搭建Hadoop.docx_第3页
第3页 / 共20页
Centos7 搭建Hadoop.docx_第4页
第4页 / 共20页
Centos7 搭建Hadoop.docx_第5页
第5页 / 共20页
Centos7 搭建Hadoop.docx_第6页
第6页 / 共20页
Centos7 搭建Hadoop.docx_第7页
第7页 / 共20页
Centos7 搭建Hadoop.docx_第8页
第8页 / 共20页
Centos7 搭建Hadoop.docx_第9页
第9页 / 共20页
Centos7 搭建Hadoop.docx_第10页
第10页 / 共20页
Centos7 搭建Hadoop.docx_第11页
第11页 / 共20页
Centos7 搭建Hadoop.docx_第12页
第12页 / 共20页
Centos7 搭建Hadoop.docx_第13页
第13页 / 共20页
Centos7 搭建Hadoop.docx_第14页
第14页 / 共20页
Centos7 搭建Hadoop.docx_第15页
第15页 / 共20页
Centos7 搭建Hadoop.docx_第16页
第16页 / 共20页
Centos7 搭建Hadoop.docx_第17页
第17页 / 共20页
Centos7 搭建Hadoop.docx_第18页
第18页 / 共20页
Centos7 搭建Hadoop.docx_第19页
第19页 / 共20页
Centos7 搭建Hadoop.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Centos7 搭建Hadoop.docx

《Centos7 搭建Hadoop.docx》由会员分享,可在线阅读,更多相关《Centos7 搭建Hadoop.docx(20页珍藏版)》请在冰点文库上搜索。

Centos7 搭建Hadoop.docx

Centos7搭建Hadoop

Centos7搭建Hadoop

1.jdk安装(

下载安装javajdk1.8.0_65

1)在/home下将jdk进行解压

#tar-xzvf jdk1.8.0_65.tar.gz jdk-8u111-linux-x64.tar.gz

当时rpm时,利用下面的命令

#chmod777jdk-8u11-linux-x64.rpm

#rpm-ijdk-8u11-linux-x64.rpm

如果将目录重新命名。

可利用下面命令

#mvjdk1.8.0_65jdk

2)环境变量配置

#vi/etc/profile

输入以下内容:

exportHBASE_HOME=/home/jdk

exportPATH=$HBASE_HOME/bin:

$PATH

当不知道放在那儿时利用命令

#find/-namejava

我的是利用rpm包安装的,所以配置环境变量如下

验证:

#source/etc/profile

#javac-verison

#java-version

2.ssh免密码验证

1)修改主机名称

Master节点

#vi/etc/hostname

master(主机名字)

#vi/etc/hosts

10.0.0.10master

10.0.0.30slave1

Slave1节点

#vi/etc/hostname

slave1(主机名字)

#vi/etc/hosts

10.0.0.10master

10.0.0.30slave1

互相ping一下

2)ssh免密码验证配置

Master节点:

#cd~/.ssh/

#ssh-keygen-trsa之后一直回车就可以了

最后生成2个文件:

id_rsaid_rsa.pub

生成authorized_keys文件

Slave1节点做相同的工作!

3)共有密钥的合并

将master节点上的id_rsa_pub拷贝到slave1上,并重命名为id_rsa.pub_s1

#scpid_rsa_pub10.0.0.30:

~/.ssh/id_rsa_pub_s1

同理:

将slave1上的文件也这样拷到master上。

命名为aa

将其合并到authorized_keys内

#cataa>>authorized_keys

Slave1也进行同样的操作!

4)修改权限

将文件夹ssh修改成700authorized_keys修改成600(截图的错了)

上面的操作在master和slave1上都操作一下!

5)验证

开始我的ssh不成功,还需要密码输入,进行了下面的

(1)和

(2)的修改后成功了!

问题描述:

(1)sshlocalhost:

publickey授权失败

sudovi/etc/ssh/sshd_config

 

RSAAuthenticationyes 

PubkeyAuthenticationyes 

AuthorizedKeysFile  .ssh/authorized_keys

 

servicesshdrestart

(#systemctlrestartsshd.servicecentos7)

 

注:

ssh可同时支持publickey和password两种授权方式,publickey默认不开启,需要配置为yes。

 

如果客户端不存在.ssh/id_rsa,则使用password授权;存在则使用publickey授权;

如果publickey授权失败,依然会继续使用password授权。

不要设置PasswordAuthenticationno,它的意思是禁止密码登录,这样就只能本机登录了!

(2)2、vi/etc/selinux/config 

SELINUX=disabled 

 

chmod700~/.ssh

chmod600~/.ssh/authorized_keys

 

最后重启你的linux执行sshlocalhost

(3)sship或hostname均提示:

connectionrefused

目标主机的sshserver端程序是否安装、服务是否启动,是否在侦听22端口;

是否允许该用户登录;

本机是否设置了iptables规则,禁止了ssh的连入/连出;

3.安装Hadoop

1)下载Hadoop-2.6.4.tar.gz

解压

#tar-xzvfHadoop-2.6.4.tar.gz

2)在/home目录下建立一个空目录tempData

#mkdirtempData

#vi/etc/profile里面添加环境变量

exportHADOOP_HOME=/home/hadoop-2.6.4

exportPATH=$HADOOP_HOME/bin:

$HADOOP_HOME/sbin:

$PATH

3)下面开始修改配置文件/home/hadoop-2.6.4/etc

(1)hadoop-env.sh添加java_home

ExportJAVA_HOME=/usr/java/jdk1.8.0_11

(2)yarn-env.sh添加java-home

(3)修改slaves(里面添加的是其他几点的主机名,没有master节点)

(4)配置 core-site.xml文件(hdfs文件端口是9000、

file:

/home/tempData/hadoop/tmp)

hadoop.tmp.dir

/home/tempData/hadoop/tmp

Abaseforothertemporarydirectories.

fs.defaultFS

hdfs:

//master:

9000

io.file.buffer.size

4096

注意上面的路径!

(5)配置  hdfs-site.xml 文件-->>增加hdfs配置信息(namenode、datanode端口和目录位置)

dfs.namenode.name.dir

file:

///home/tempData/hadoop/dfs/name

dfs.datanode.data.dir

file:

///home/tempData/hadoop/dfs/data

dfs.replication

2

dfs.nameservices

hadoop-cluster

dfs.namenode.secondary.http-address

master:

50090

dfs.webhdfs.enabled

true

(6)配置 mapred-site.xml 文件-->>增加mapreduce配置(使用yarn框架、jobhistory使用地址以及web地址)

mapreduce.framework.name

yarn

true

mapreduce.jobtracker.http.address

master:

50030

mapreduce.jobhistory.address

master:

10020

mapreduce.jobhistory.webapp.address

master:

19888

mapred.job.tracker

http:

//master:

9001

注:

当我打开时,发现没有 mapred-site.xml这个文件,只有 mapred-site.xml.template这个文件,所以我将它重命名了

(7)配置  yarn-site.xml  文件-->>增加yarn功能

 

  yarn.nodemanager.aux-services

  mapreduce_shuffle

 

 

  yarn.nodemanager.aux-services.mapreduce.shuffle.class

  org.apache.hadoop.mapred.ShuffleHandler

 

 

  yarn.resourcemanager.address

  master:

8032

 

 

  yarn.resourcemanager.scheduler.address

  master:

8030

 

 

  yarn.resourcemanager.resource-tracker.address

  master:

8035

 

 

  yarn.resourcemanager.admin.address

  master:

8033

 

 

  yarn.resourcemanager.webapp.address

  master:

8088

 

8)、将配置好的hadoop文件copy到另一台slave机器上

scp-rhadoop-2.6.0/master@10.0.0.30:

/home/

4.验证

1、格式化namenode:

[root@masteropt]$cdhadoop-2.6.0/

[root@masterhadoop-2.6.0]$ls

bin dfs etc include input lib libexec LICENSE.txt logs NOTICE.txt README.txt sbin share tmp

[root@masterhadoop-2.6.0]$./bin/hdfsnamenode-format

[root@slave1.ssh]$cd~/opt/hadoop-2.6.0

[root@slave1hadoop-2.6.0]$./bin/hdfs namenode-format

2、启动hdfs:

[root@masterhadoop-2.6.0]$./sbin/start-dfs.sh 

错误:

localhost:

Hostkeyverificationfailed

解决:

vihadoop/etc/hadoop/slaves将里面的localhost删除,只留下节点slave1信息

[root@hadoop02hadoop-2.6.0]$jps

22230Master

30889Jps

22478Worker

30498NameNode

30733SecondaryNameNode

19781ResourceManager

注:

当没有这个命令时,可以先#find/-namejps查到目录存放的地方

然后再运行#/usr/java/jdk1.8.0_11/bin/jps

4、启动yarn:

[root@masterhadoop-2.6.0]$./sbin/start-yarn.sh 

31233ResourceManager

22230Master

22478Worker

30498NameNode

30733SecondaryNameNode

31503Jps

6、查看集群状态:

[root@masterhadoop-2.6.0]$./bin/hdfsdfsadmin-report

注意:

无法页面访问时,记得修改一下window下面C:

\Windows\System32\drivers\etc里面的hosts文件,将ip及节点写入!

若无法写入时,可以将文件复制到桌面,将信息添加后在替换原来的文件!

7.浏览器中查看

注意:

当无法访问时,记得关一下虚拟机里面的防火墙或是将Hadoop的所有端口加入防火墙中!

8.可以查看网上的hadoop2.6.0中自带的wordcount实例运行一下。

试试看hadoop2.6.0是否安装成功。

验证:

1.在本地创建文件夹input。

里面建立2个文本f1.txtf2.txt

2.在HDFS上创建输入文件夹

#bin/hadoopfs-mkdir/hdfsInput

3.上传本地file中文件到集群的hdfsInput目录下

注意:

如果要修改文件夹的权限,使用下面的命令

#$HADOOP_HOME/bin/hadoopfs-chmod-R 777/hdfsInput

注意:

自带wordcount在share/hadoop/mapreduce目录下

4.上传成功后查看结果

问题:

1.注意jdk的环境变量配置,当现实jdk问题时,一般是JAVA_HOME的错误,一般是版本号错误!

2.修改jdk的环境变量的地方有:

/etc/profile

/home/hadoop2.6-4/etc/hadoop/hadoop-env.sh

/home/hadoop2.6-4/etc/hadoop/yarn-env.sh

如果要换掉jdk的版本,接的所有节点都要一一修改!

3.ssh不成功,首先检查是否是权限的问题!

一个是700,一个是600!

4.修改配置文件的时候一定要注意!

不要写错了!

5.记得修改防火墙的状态!

6.hadoop“util.NativeCodeLoader:

Unabletoloadnative-hadooplibraryforyourplatform”

解决办法:

如果你是hadoop2.6的可以下载下面这个:

下载完以后,解压到hadoop的native目录下,覆盖原有文件即可。

操作如下:

tar-xhadoop-native-64-2.4.0.tar-C hadoop/lib/native/

7.运行测试程序:

wordcount时出现:

Containerexitedwithanon-zeroexitcode127

解决:

配置文件里面有无法识别的字符,所有的节点都检查一遍!

8.INFOmapreduce.Job:

Jobjob_1398669840354_0003failedwithstateFAILEDdueto:

Applicationapplication_1398669840354_0003failed2timesduetoAMContainerforappattempt_13

解决:

9.Cannotdelete/tmp/hadoop-yarn/staging/root/.staging/job_1462779765527_0001.Namenodeisinsafemode.

解决:

/hadoopdfsadmin-safemodeleave

 

10.Shell$ExitCodeException

Containerexitedwithanon-zeroexitcode1

现象:

运行hadoopjob时出现如下异常:

14/07/0914:

42:

50INFOmapreduce.Job:

TaskId:

attempt_1404886826875_0007_m_000000_1,Status:

FAILED

Exceptionfromcontainer-launch:

org.apache.hadoop.util.Shell$ExitCodeException:

 

org.apache.hadoop.util.Shell$ExitCodeException:

 

    atorg.apache.hadoop.util.Shell.runCommand(Shell.java:

505)

    atorg.apache.hadoop.util.Shell.run(Shell.java:

418)

    atorg.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:

650)

    atorg.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:

195)

    atorg.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:

300)

    atorg.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:

81)

    atjava.util.concurrent.FutureTask.run(FutureTask.java:

262)

    atjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:

1145)

    atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:

615)

    atjava.lang.Thread.run(Thread.java:

744)

Containerexitedwithanon-zeroexitcode1

原因及解决办法:

原因未知。

重启可恢复正常。

如果不能正常使用,使用下面的修改,下面的修改可能会对hbase的使用产生影响!

 

11.

 

.

、etc/hadoop/hadoop-env.sh

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2