系统为CentOS 6.9,Hadoop版本2.8.3,虚拟机VMware Workstation

主要介绍Linux虚拟机安装、环境配置和Hadoop本地模式的安装。伪分布式和Windows下的安装将另作补充。

网络上关于Hadoop安装的教程非常多,这里主要是归纳出安装过程的简要步骤和可能碰到的问题。


Linux环境安装


NAT

  • 取消DHCP服务;
  • 设置子网网段,例如我自己用的是默认的192.168.126网段,之后各虚拟机IP就设为该网段;
  • 在NAT设置中修改DNS地址,指定为自己所处网络的DNS,网关地址默认为当前网段的.2地址。

Linux

在VMware上安装Linux并不困难,所以跳过虚拟机设置,直接列出安装过程中可能碰到的几个问题。

  • 我所安装的CentOS 6.9在安装开始时会出现media test界面。可能因为用的不是光盘,所以选择OK会出错;

  • 期间会碰到两次关于存储空间,可以直接选择全部忽略和全部占用;

  • 最后一步,Desktop


设置网络

由于之前关闭了DHCP自动分配IP的功能,所以需要自己进行网络参数的设置。

  • 右键网络,修改IPV4设置,地址只要是126就行;
  • 修改完成后,点击网络的eth0,就能成功连接了,这时可以ping它一ping。


HOST

  • 修改hostname以便识别,打开/etc/sysconfig/network,添加hostname(要先加NETWORKING=yes);
  • 打开/etc/hosts,添加IP地址和新设置的hostname。

其他环境设置

由于是为了学习,其实可以直接把Linux的防火墙和selinux关掉。

  • 防火墙:chkconfig iptables off
  • selinux:/etc/sysconfig/selinux,disabled一下

Java环境配置

  • CentOS一般自带OpenJDK,最好还是用Oracle的JDK,OpenJDK卸掉卸掉(这个或许我会多写一篇);

  • 安装:

    官网下载想要的版本(确认可与所用的Hadoop向配),然后选个目录解压(操作系统课自行学习)

  • 设置环境变量:

    很多教程会写到要添加classpath,但经我个人测试是不需要的,而且翻了Oracle的说明也没讲到Linux要配置这个。

    不过,有看到一些人说没添加会在一些情况下出错,所以。。等出错了就知道了。但windows下的确是不需要的。

    具体步骤为:修改配置文件/etc/profile,加上

export JAVA _ HOME="JDK地址"
export PATH=$JAVA_HOME/bin:$PATH

然后执行source /etc/profile


Hadoop本地模式安装

下载hadoop无需任何设置,默认就为本地模式。

  • 下载所需版本的hadoop,解压;
  • 确认JAVA_HOME环境变量配置正确:echo;
  • 可以试着运行一个测试文件:
#test.input
hadoop mapreduce hive
hbase spark storm
sqoop hadoop hive
spark hadoop

然后输入

bin中hadoop的目录 jar share/hadoop/mapreduce/hadoop-mapreduce-examples-x.x.x.jar wordcount 输入文件目录 输出文件名

在job ID中看到local字样即为本地模式

在输出文件中看到SUCCESS字样即为运行成功


以上只是本地模式的安装,因而相当简略,伪分布式、完全分布和HA安装要麻烦得多,许多细节会在之后再详细描述。

Linux下的Hadoop安装(本地模式)的更多相关文章

  1. Linux Hadoop2.7.3 安装(单机模式) 一

    Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 java环境安装 http://www.cnblogs.com/zeze/p/590 ...

  2. Linux Hadoop2.7.3 安装(单机模式) 二

    Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 YARN是Hadoop 2.0中的资源管理系统,它的基本设计思想是将MRv1中的Jo ...

  3. Linux下命令行安装weblogic10.3.6

    Linux下命令行安装weblogic10.3.6 一.安装前准备工作: 1.创建用户useradd weblogic;创建用户成功linux系统会自动创建一个和用户名相同的分组,并将该用户分到改组中 ...

  4. Linux下MongoDB服务安装

    Linux下MongoDB服务安装 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB是一个介于关系数据库和非关系数据 ...

  5. 细说Linux下软件包的安装与管理

    一 源码安装方式      由于linux操作系统开放源代码,因而在其上安装的软件大部分也都是开源软件,例如apache.tomcat.php等软件.开源软件基本都提供源码下载,源码安装的方式:源码安 ...

  6. Linux下Jdk的安装和jdk环境变量的设置

    我们在Linux下安装系统软件的时候,经常遇到一些系统环境变量配置的问题.什么是环境变量?如何定制环境变量?我将在下面做一些介绍.一.什么是环境变量?Linux是一个多用户的操作系统.多用户意味着每个 ...

  7. linux下chromedriver的安装

    很多时候,发现phantomjs被一些网站屏蔽导致我们无法达到想要的结果,一方面phantomjs也停止维护,这时候们可以使用chromedriver(谷歌)或者firefoxdriver(火狐)来代 ...

  8. Linux下zoopkeeper的安装和启动

    Linux下zoopkeeper的安装和启动 1.什么是zookeeper ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoo ...

  9. Linux下nginx编译安装教程和编译参数详解

    这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码代码如下: # y ...

随机推荐

  1. ionic3 打包报错[ERROR] An error occurred while running cordova prepare (exit code 1):

    解决办法:删除并重新添加平台以使用以下命令解决问题: cordova platform rm ios cordova platform add ios 如果执行 ionic cordova build ...

  2. 【kafka】confluent_kafka重置offset

    之前写过两篇关于重置offset的博文,后来使用过程中都有问题. 经过各种尝试,终于找到了解决方案. 直接上代码: # coding=utf8 from confluent_kafka import ...

  3. 表达式语言 Expression Language

    JSP 2.0最重要的特性之一就是表达式语言 (EL),JSP用户可以用它来访问应用程序数据.由于 受到ECMAScript和XPath表达式语言的启发,EL也设计 成可以轻松地编写免脚本的JSP页面 ...

  4. tail -f -n 0 /var/log/messages

    <pre><font color="#CC0000"><b>root@kali</b></font>:<font ...

  5. 两种lca的求法:树上倍增,tarjan

    第一种:树上倍增 f[x,k]表示x的2^k辈祖先,即x向根结点走2^k步达到的结点. 初始条件:f[x][0]=fa[x] 递推式:f[x][k]=f[ f[x][k-1] ][k-1] 一次bfs ...

  6. uva11426 欧拉函数应用,kuangbin的筛法模板

    /* 给定n,对于所有的对(i,j),i<j,求出sum{gcd(i,j)} 有递推式sum[n]=sum[n-1]+f[n] 其中f[n]=gcd(1,n)+gcd(2,n)+gcd(3,n) ...

  7. bzoj 2190

    题意:求 题解:这题...数据范围是真小... 研究一下这一表达式,发现gcd(i,j)=1表示i,j互质,那么互质肯定能想到欧拉函数,可是欧拉函数要求j<i,那么我们变化一下:显然原矩阵是对称 ...

  8. nodejs 如何获取页面get、post传递过来的参数

    如果是get传递参数,可以直接使用 request.query.name 如果是post 需要借助body-parser 首先引入bodyParser = require('body-parser') ...

  9. Android取得系统时间

    Time t = new Time();//实例化Time类 t.setToNow();//取得当前的系统时间 int month = t.month;//获取月 int year = t.year; ...

  10. svn_linux + apache 实现网页访问svn

    CentOS7:搭建SVN + Apache 服务器实现网页访问 1. 安装httpd 安装httpd服务: $ sudo yum install httpd 检查httpd是否安装成功: $ htt ...