hadoop伪分布式搭建 java_hadoop2.2.0伪分布式搭建

第一步:安装jdk

我的linux版本是centos7,使用最简单的安装方式,这里首先说一下,由于系统会预装openjdk版本等其他各种版本,首先要做的是清除这些版本,然后iu安装oracle的jdk版本

1.1 查看所有jdk版本并删除其他jdk版本

rpm -qa | grep java

这里可以看到所有的jdk版本,我建议的做法是将所有的jdk版本都铲除,

rpm -e ---nodeps 『jdk版本』

这里有一个小技巧,就是在终端中复制的操作是选中之后摁鼠标中健

删除完所有的jdk版本后去官网下载jdk,保存,然后解压,解压位置我的是在/usr/java。

tar -zxvf jdk1.7.0_79.tar.gz -C /usr/java

解压并且移动到/usr/java下。

配置环境变量

vim /etc/profile,按i进入编辑模式,在最后面添加JAVA_HOME等属性

export JAVA_HOME=/usr/java/jdk1.7.0_79

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

配置好之后,先按,后按shift+: ,然后按wq,保存退出编辑,终端:source /etc/profile

java -version

显示正确版本:

java version "1.7.0_79"

Java(TM) SE Runtime Environment (build 1.7.0_79-b15)

Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

说明jdk配置成功。

第二步:安装配置ssh

2.1 安装和基本ssh配置

首先要做的是关闭防火墙,防止防火墙对ssh访问拒绝

查看下防火墙状态:

firewall-cmd --state

若显示运行,则关闭,并设置开机不启动。

systemctl stop firewalld.service;

systemctl disable firewalld.service.

检测防火墙状态:

firewall-cmd --state

显示:no running,配置完成。

一般的linux系统都自带ssh,首先你需要查看ssh是否真的存在:

rpm -qa | grep ssh

显示:

openssh-server-6.6.1p1-11.el7.x86_64

openssh-6.6.1p1-11.el7.x86_64

libssh2-1.4.3-8.el7.x86_64

openssh-clients-6.6.1p1-11.el7.x86_64

类似信息说明ssh已安装。

下面查看ssh服务是否自动启动,使用命令行查看所有默认自启动服务:

systemctl list-unit-files|grep enabled

如果发现sshd服务没有启动,则设置sshd服务自启动

systemctl enable sshd.service

这里要说明以下,centos7的指令换成了新的,ssh指令操作指令都有以下:

systemctl enable sshd.service【设置sshd服务开机自启动】

systemctl disable sshd.service【关闭sshd服务开机自启动】

ystemctl start sshd.service【开始sshd服务】

systemctl stop sshd.service【关闭sshd服务】

systemctl restart sshd.service【重启sshd服务】

reboot后,然后查看端口服务情况:

netstat -lntp

显示如下:

1476/sshd

tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN

1476/sshd

tcp6       0      0 ::1:631                 :::*                    LISTEN

ok,配置成功。

2.2 配置ssh免登陆

配置ssh免登陆首先需要root权限去修改:

/etc/ssh

下的 sshd_config文件

vim sshd_config;

将文件中三个配置解除注释(删除#号)

AuthorizedKeysFile      .ssh/authorized_keys

RSAAuthentication yes

PubkeyAuthentication yes

然后保存,退出,重新启动ssh

systemctl restart sshd.service

接下来的步骤必须是普通用户操作,不然会导致ssh配置失败,无法实现免密码登录

原因是你的.ssh文件被放在了/root目录下,根本没有起到作用.

生成密钥:

ssh-keygen

一直cd ~/.ssh

cat id_rsa.pub >> authorized_keys,

ssh localhost验证,输入root密码,之后会出现一个lastLogin,说明成功

第三步:配置hadoop2.2.0

下载hadoop2.2.0,这里给一个apache的所有开元项目的下载位置:achirive.apache.org

找到hadoop包,下载相应版本,我没有下载stable几个包里的,而是选择下载了2.2.0版本

下载后,解压:

cd /; mkdir hadoop;

tar -zxvf hadoop2.2.0.tar.gz -C /hadoop;

首先配置hadoop的环境变量:

vim /etc/profile;

i

export HADOOP_HOME=/hadoop/hadoop-2.2.0

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/lib

最后的配置完整如下:

export JAVA_HOME=/usr/java/jdk1.7.0_79

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/lib

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export HADOOP_HOME=/hadoop/hadoop-2.2.0

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

这里的路径是在java的path基础上追加,以:分割。

esc,shift+:;wq;

然后配置hadoop自身配置

cd /hadoop/hadoop-2.2.0/etc/hadoop

ls

显示:

capacity-scheduler.xml      hdfs-site.xml               mapred-site.xml

configuration.xsl           httpfs-env.sh               slaves

container-executor.cfg      httpfs-log4j.properties     ssl-client.xml.example

core-site.xml               httpfs-signature.secret     ssl-server.xml.example

hadoop-env.cmd              httpfs-site.xml             yarn-env.cmd

hadoop-env.sh               log4j.properties            yarn-env.sh

hadoop-metrics2.properties  mapred-env.cmd              yarn-site.xml

hadoop-metrics.properties   mapred-env.sh

hadoop-policy.xml           mapred-queues.xml.template

这里要修改:core-site.xml ,hadoop-env.sh ,hdfs-site.xml ,mapred-site.xml,yarn-site.xml五个。

3.1 core-site.xml

haddop.tmp.dir

/hadoop/hadoop-2.2.0/tmp

fs.default.name

hdfs://localhost:9000

true

3.2 hadoop-env.sh

export JAVA_HOME=/usr/java/jdk1.7.0_79

这里是重新配置JAVA_HOME

3.3 hdfs-site.xml

dfs.namenode.name.dir

/dfs/nameNodeData

dfs.datanode.data.dir

/dfs/dataNodeData

dfs.checkpoint.ir

/dfs/secondaryNamenodeData

dfs.replication

1

3.4 mapred-site.xml

这里的配置文件并不存在,只存在mapred-site.xml.template,需要重命名

mv mapred-site.xml.template mapred-site.xml

vim mapred-site.xml

mapreduce.framework.name

yarn

3.5 yarn-site.xml

yarn.nodemanager.aux-services

mapreduce_shuffle

3.6 初始化hdfs

cd /hadoop/hadoop-2.2.0/bin

./hdfs namenode -format

信息中有:Storage directory /dfs/nameNodeData has been successfully formatted.

格式化成功。

3.7 开启hdfs服务,开启yarn服务

cd /hadoop/hadoop-2.2.0/sbin

./start-dfs.sh

这里由于没有配置ssh免密码登陆,所以会多次输入密码

./start-yarn.ssh

这里由于没有配置ssh免密码登陆,所以会多次输入密码

验证:

localhost:50070                              --[dfs]

localhost:8088                                --[yarn]

能打开就算配置成功

第四步:配置eclipse与hadoop集成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/356054.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

北斗有 35 颗卫星,而 GPS 有 24 颗卫星,为什么二者数量不同?

作者:知乎用户链接:https://www.zhihu.com/question/21092045/answer/17164418来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。反对目前的两个不靠谱回答!需要的卫星数目和别人占坑没有…

可行的DeltaSpike教程

在一个最近的项目中,我遇到了一个有趣的问题:采用被赋予单个对象的服务方法,并在一个夜间过程的上下文中重用相同的代码,该过程独立于应用程序而在数千个相同类型的对象上运行。 试图在两个地方维护如此大小和复杂性的相同过程真…

2017/3/8 函数指针/事件/委托....

函数指针: 定义:函数指针是指向函数的指针变量。 因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数。 函数指针有两个用途:调用函数…

java finalize 析构_close,析构函数和finalize:Java矛盾

try { FileInputStream in new FileInputStream(filename);BufferedReader readernew BufferedReader(new InputStreamReader(in));String line;while((linereader.readLine())!null){// read the file}}catch (Exception e) {System.out.println(e);}但是如果我尝试将命令添加…

sharesdk短信验证码的集成

在ShareSDK官网http://mob.com/注册并创建Android应用.申请APP_key,下载SDK等 根据官网开发文档导入SDK,目录结构如下 将以上文件按需放入Android Studio项目所要使用SMSSDK的Module所在的Libs里面,再在Module的build.gradle里面将libs加入仓库(reposito…

java四神兽_SpringCloud五大神兽之Eureka

注册中心概述什么是注册中心?相当于服务之间的‘通讯录’,记录了服务和服务地址之间的映射关系。在分布式架构中服务会注册到这里。当服务需要调用其他服务时,就在注册中心找到其他服务的地址,进行调用注册中心的主要作用&#xf…

Mockito入门

本文是我们名为“ 用Mockito进行测试 ”的学院课程的一部分。 在本课程中,您将深入了解Mockito的魔力。 您将了解有关“模拟”,“间谍”和“部分模拟”的信息,以及它们相应的Stubbing行为。 您还将看到使用测试双打和对象匹配器进行验证的过…

windows下dubbo-admin和zookeeper安装部署

1. 概述 ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、…

jpush java api_JPush極光推送Java服務器端API

產品功能說明極光推送(JPush)是一個端到端的推送服務,使得服務器端消息能夠及時地推送到終端用戶手機上,讓開發者積極地保持與用戶的連接,從而提高用戶活躍度、提高應用的留存率。極光推送客戶端支持 Android, iOS 兩個平台。本 Android SDK …

Maven详解(转)

转自 https://www.cnblogs.com/hongwz/p/5456578.html 一.前言 以前做过的项目中,没有真正的使用过Maven,只知道其名声很大,其作用是用来管理jar 包的。最近一段时间在项目过程中使用Maven,用Maven构建的web项目,其项目…

javafx性能_对JavaFX Mobile应用程序进行性能分析

javafx性能注意:本文最初发表于2009年,仅供参考。 请查阅我们其余的JavaFX文章 。 对于每个JavaFX Mobile应用程序开发人员而言,今天都是美好的一天。 你想知道为什么吗? 因为JavaME SDK 3.0已发布。 根据我午休时听到的消息&…

egg.js java 生产数据_Egg 2.15.0 发布,阿里开源的企业级 Node.js 框架

值得注意的变化新特性[EXPERIMENT FEATURE] 支持单线程模式Bug 修复[TYPE] 支持config.static.dir的数组[TYPE] 修复中间件类型不兼容[TYPE] 修复当 esModuleInterop 为 true 时类型错误的bug其他优化文档设计原则企业级应用在追求规范和共建的同时,还需要考虑如何平…

SpringMVC工作原理

Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。 Spring的MVC框架主要由DispatcherServlet、处理器映射、处理器(控制器)、视图解析器、视图组成。 SpringMVC原理图 SpringMVC接口解释: DispatcherSer…

2015年的Java –重大事件

2015年是Java的一年,语言,平台,生态系统和社区继续主导着软件领域,只有Javascript对整个行业产生了类似的影响。 如果您错过了2015年的亮点,这里是发生的一些重大事件。 Java 20岁了,还没有死!…

java商品编写代码_商品品牌业务之后台Java代码的编写

今天是刘小爱自学Java的第146天。感谢你的观看,谢谢你。商品品牌业务之后台Java代码的编写-1.jpg (50.46 KB, 下载次数: 1)2021-2-5 00:22 上传学习计划安排如下:昨天实现了前端页面的编写以及发送请求,今天关于异步请求工具axios的简单说明。…

java中8种数据类型和默认值所占字节数

java 8种基本数据类型的默认值及所占字节数通过一段代码来测试一下 8种基本数据类型的默认值 1 package dierge;2 3 public class Ceshi { 4 int a; 5 double b; 6 boolean c; 7 char d; 8 float f; 9 byte e; 10 long h; 11 short j; 12 public static void main(String…

软件测试实验1:为三角形问题编写一个Java程序,并用Junit测试程序

实验报告 实验内容: 1.Install Junit(4.12), Hamcrest(1.3) with Eclipse 2.Install Eclemma with Eclipse 3.Write a java program for the triangle problem and test the program with Junit. 实验步骤: 1.在eclipse中安装Junit、Hamcrest和eclemma。…

java避免空指针异常_避免Java中的空指针异常

java避免空指针异常空指针异常是Java中最常见,最烦人的异常。 在这篇文章中,我想避免这种不希望的异常。 首先让我们创建引发空指针异常的示例 private Boolean isFinished(String status) { if (status.equalsIgnoreCase("Finish")) { ret…

比java好的_Java Spring真的比直接进行Java编程好吗

我已经读过依赖注入对于测试是有好处的,因为可以在没有依赖的情况下测试一个类,但是我想到的问题是,如果A类依赖于B或C或任何类,则独立于某个类的A类测试就是得出的测试结果为零,而不是失败或过去的测试.创建A类是为了执行某些操作,如果无论是使用新关键字还是在Spring中设置多…

SurfaceFlinger与Surface概述

基本原理: SF一个Client对应一个app中的SurfaceComposerClient, 分别是Binder的n端和b端,主要用来CreateSurface 一个app中有多个Activity,一个Activity一般有一个Surface(除SurfaceView,一个View就有一个Surface)&…