在Ubuntu上单机安装Hadoop

最近大数据比较火,所以也想学习一下,所以在虚拟机安装Ubuntu Server,然后安装Hadoop。

以下是安装步骤:

1. 安装Java

如果是新机器,默认没有安装java,运行java –version命名,看是否可以查看Java版本,如果未安装Java,这运行以下命名:

# Update the source list
$ sudo apt-get update

# The OpenJDK project is the default version of Java
# that is provided from a supported Ubuntu repository.
$ sudo apt-get install default-jdk

$ java -version

2.设置Hadoop用户和组

$sudo addgroup hadoop

$ sudo adduser --ingroup hadoop hduser

3.安装并配置SSH

$ sudo apt-get install ssh

$ su hduser

$ ssh-keygen -t rsa -P ""

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

接下来运行ssh命令,测试一下是否成功.

$ ssh localhost

4.安装Hadoop

首先需要下载并解压Hadoop文件,运行命令:

$wget http://apache.spinellicreations.com/hadoop/common/hadoop-2.6.0/hadoop-2.6.0.tar.gz

这里的URL是最新的Hadoop2.6.0版,安装的时候可以先到官方网站看看需要下载哪个版本,然后更换这个Url.

下载完毕后,就是解压缩:

$ tar xvzf hadoop-2.6.0.tar.gz

然后将Hadoop文件夹搬到新文件夹,并且给hduser这个用户权限:

$ sudo mv hadoop-2.6.0 /usr/local/hadoop

$ cd /usr/local

$ sudo chown -R hduser:hadoop hadoop

 

5.配置Hadoop

接下来我们可以使用putty通过ssh连接到Ubuntu了,将当前用户切换到hduser做如下的操作:

5.1修改~/.bashrc文件

首先运行命令查看Java的路径:

$ update-alternatives --config java
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
Nothing to configure.

这里我们需要的JavaHome就是:/usr/lib/jvm/java-7-openjdk-amd64,然后使用vi编辑~/.bashrc

#HADOOP VARIABLES START
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export HADOOP_INSTALL=/usr/local/hadoop
export PATH=$PATH:$HADOOP_INSTALL/bin
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"
#HADOOP VARIABLES END

5.2修改hadoop-env.sh文件

文件的路径为:/usr/local/hadoop/etc/hadoop/hadoop-env.sh,找到对应的行,将内容改为:

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

5.3修改core-site.xml文件

在修改这个文件之前,我们需要使用超级用户创建一个目录,并给予hduser该目录的权限:

$ sudo mkdir -p /app/hadoop/tmp
$ sudo chown hduser:hadoop /app/hadoop/tmp

接下来切换回hduser用户,修改配置文件,文件路径:/usr/local/hadoop/etc/hadoop/core-site.xml,使用VI,将配置改为:

<configuration>
<property>
  <name>hadoop.tmp.dir</name>
  <value>/app/hadoop/tmp</value>
  <description>A base for other temporary directories.</description>
</property>

<property>
  <name>fs.default.name</name>
  <value>hdfs://localhost:54310</value>
  <description>The name of the default file system.  A URI whose
  scheme and authority determine the FileSystem implementation.  The
  uri‘s scheme determines the config property (fs.SCHEME.impl) naming
  the FileSystem implementation class.  The uri‘s authority is used to
  determine the host, port, etc. for a filesystem.</description>
</property>
</configuration>

5.4修改mapred-site.xml

默认情况下,我们只有/usr/local/hadoop/etc/hadoop/mapred-site.xml.template,我们需要先基于这个文件,copy一个新的文件出来,然后再进行修改。

$ cp /usr/local/hadoop/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/etc/hadoop/mapred-site.xml

使用VI打开,修改配置如下:

<configuration>
<property>
  <name>mapred.job.tracker</name>
  <value>localhost:54311</value>
  <description>The host and port that the MapReduce job tracker runs
  at.  If "local", then jobs are run in-process as a single map
  and reduce task.
  </description>
</property>
</configuration>

5.5修改hdfs-site.xml文件

在修改之前,也是需要切换回超级管理员账户,创建需要用到的目录:

$ sudo mkdir -p /usr/local/hadoop_store/hdfs/namenode
$ sudo mkdir -p /usr/local/hadoop_store/hdfs/datanode
$ sudo chown -R hduser:hadoop /usr/local/hadoop_store

然后切换回来hduser用户,修改配置文件:/usr/local/hadoop/etc/hadoop/hdfs-site.xml,改为:

<configuration>
<property>
  <name>dfs.replication</name>
  <value>1</value>
  <description>Default block replication.
  The actual number of replications can be specified when the file is created.
  The default is used if replication is not specified in create time.
  </description>
</property>
<property>
   <name>dfs.namenode.name.dir</name>
   <value>file:/usr/local/hadoop_store/hdfs/namenode</value>
</property>
<property>
   <name>dfs.datanode.data.dir</name>
   <value>file:/usr/local/hadoop_store/hdfs/datanode</value>
</property>
</configuration>

6.格式化HDFS

$ hadoop namenode –format

如果发现hadoop这个命令不认识,那是因为环境变量没有载入,最简单办法就是登出,然后再登入hduser就可以了。这个命令会删掉所有已经存在的数据,所以如果已经有数据的情况下,慎用这个命令。

7.启动Hadoop

使用$ start-all.sh就可以启动Hadoop了,判断是否启动成功,我们可以运行jps命令,我们可以看到如下的结果,说明已经启动成功了:

$ jps
2149 SecondaryNameNode
1805 NameNode
2283 ResourceManager
1930 DataNode
2410 NodeManager
2707 Jps
另外,我们可以访问Hadoop的Web,地址是:

http://serverIP:50070/

8.关闭Hadoop

运行命令:

$ stop-all.sh

好了,终于在虚拟机中将Hadoop搭建成功。整个操作过程参考了另一篇博客:

http://www.bogotobogo.com/Hadoop/BigData_hadoop_Install_on_ubuntu_single_node_cluster.php

我只是把其中需要注意的几个地方重新说明了一下,借花献佛。

时间: 2024-11-10 14:47:44

在Ubuntu上单机安装Hadoop的相关文章

【Hadoop】在Ubuntu系统下安装Hadoop单机/伪分布式安装

Ubuntu 14.10 前方有坑: 由于之前的分布式系统电脑带不动,所以想换一个伪分布式试一试.用的是Virtualbox + Ubuntu 14.10 .结果遇到了 apt-get 源无法更新的情况,以及安装包安装不全的情况.只好咬一咬牙,又重新把系统给更新一边. apt-get 源无法更新解决方案:传送门 首先先备份源列表: sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup 用编辑器打开: sudo gedit /etc/

Ubuntu14.0上编译安装Hadoop

Ubuntu14.0上编译安装Hadoop 环境: hadoop-2.5.0.tar hadoop-2.5.0-src.tar jdk-7u71-linux-x64 protobuf-2.5.0.tar Maven3.0 安装步骤: 1 安装jdk ,配置环境变量 2 安装依赖包 3 安装maven 4安装protobuf-2.5.0.tar 5 编译Hadoop 6 安装hadoop 6.1 单机模式 6.2 伪分布模式 6.3 集群模式 1 安装jdk ,配置环境变量 下载jdk版本:jdk

ubuntu 上已经安装libxml2还提示需要reinstall的解决方法

最近在ubuntu上配置环境,遇到一些奇怪的问题,已经安装了libxml2了,运行 apt-get install libxml2提示已经是最新版本了,可以在安装软件的时候还是提示没有libxml2,经过多方查询是缺少libxml2-dev包,其他的遇到了几个也类似这样解决了. 比如提示python.h不存在的情况下,也是 sudo apt-get install python-dev libz 的问题的时候, sudo apt-get install libz-dev bzip2 的问题稍有不

hadoop在ubuntu上的安装流程

第一部分 安装ssh服务 更新源列表 打开"终端窗口",输入"sudo apt-get update"-->回车-->"输入当前登录用户的管理员密码"-->回车,就可以了. 安装openssh-server 在终端中输入: sudo apt-get install openssh-server 查看查看ssh服务是否启动 打开"终端窗口",输入"sudo ps -e |grep ssh"-

Ubuntu 18.04 安装Hadoop 2.10

安装步骤: 1.新建虚拟机(网络选桥接模式.内存尽量大) 2.安装Ubuntu 18.04 3.安装JDK JRE 4.创建hadoop用户 # 1.创建用户 sudo useradd -m hadoop -s /bin/bash # 2.设置密码(按提示输入两次密码) sudo passwd hadoop # 3.设置权限 sudo adduser hadoop sudo # 4.用hadoop登录后更新一下 apt sudo apt-get update 5.配置SSH无密码登录 ssh l

Ubuntu上snmp安装、配置、启动及远程测试完整过程

0.说明 关于一个完整的教程,还是那句话,国内的要么不完整,要么就太旧了,而且思路也不清晰,所以这里写一篇完整的给大家分享一下. 虽然对于Linux主机的监控可以通过执行特定的命令来完成,但是相比之后,通过snmp的方式来获取Linux主机的信息则会更轻松简单些,只不过在使用前的配置可能需要花多一点时间,不过这绝对值得!而且如果需要开发Linux主机的监控软件,那使用snmp肯定是首选,毕竟它可以获得的信息太多太多! 后面的内容就来分享一下在Ubuntu上安装.配置.启动snmp以及进行远程测试

ubuntu上的安装.netcore2.1

.net core 在ubuntu上安装比较容易,依次执行正面语句即可 sudo apt-get install curl curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg sudo sh -c 'echo "deb [arch=amd64] http

Ubuntu 上如何安装Docker

Docker 是一个开源项目,为开发者和系统管理员提供了一个开放的平台,在任何地方通过打包和运行应用程序作为一个轻量级的容器.Docker 在软件容器内自动部署应用程序.Docker 最开始由 Solomon Hykes 作为 dotCloud 一个内部开发项目,一个企业级的 PaaS (platform as a service 服务平台),该软件现在由 Docker 社区和 Docker 公司维护,更多 Docker 信息你可以访问:https://docs.docker.com/. 我们可

单机安装Hadoop环境

目的 这篇文档的目的是帮助你快速完成单机上的Hadoop安装与使用以便你对Hadoop分布式文件系统(HDFS)和Map-Reduce框架有所体会,比如在HDFS上运行示例程序或简单作业等. 先决条件 支持平台 GNU/Linux是产品开发和运行的平台. Hadoop已在有2000个节点的GNU/Linux主机组成的集群系统上得到验证.            Ubuntu Linux 下载地址:http://mirrors.aliyun.com/ubuntu-releases/14.10/  W