1、Hadoop运行模式
Hadoop有三种运行模式,分别如下:
单机(非分布式)模式
伪分布式(用不同进程模仿分布式运行中的各类节点)模式
完全分布式模式
注:前两种可以在单机运行,最后一种用于真实的集群环境,通常用在生产环境上。我们可以搭建本地的伪分布式模式来模拟分布式环境的执行。

2、Hadoop的安装及配置
环境:Ubuntu10.10,Hadoop 0.21.0
安装步骤如下:
1、准备工作:
1)、安装ssh server,如何安装ssh server请看http://www.tieguanyin168.com/index.php/ubuntu-ssh-1650.html
2)、安装sun jdk6,切忌一定要java6及其以上版本,如何安装jdk6请看http://www.tieguanyin168.com/index.php/ubuntu-jdk-1631.html

2、增加一个用户组用户,用于hadoop运行及访问。
root@ubuntu:~# sudo addgroup hadoop
root@ubuntu:~# sudo adduser –ingroup hadoop hadoop

3、生成SSH证书,配置SSH加密key
hadoop@ubuntu:~$ su – hadoop
Password:
hadoop@ubuntu:~$ ssh-keygen -t rsa -P ""
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hadoop/.ssh/id_rsa):
Your identification has been saved in /home/hadoop/.ssh/id_rsa.
Your public key has been saved in /home/hadoop/.ssh/id_rsa.pub.
The key fingerprint is:
a8:67:6f:bd:04:13:41:5f:a7:13:2d:84:e7:8a:8c:43 hadoop@ubuntu
The key's randomart image is:
+–[ RSA 2048]—-+
|       .o  o+..  |
|         o..o+.  |
|        . .oo.   |
|      E. .  ..   |
|     ..oS. .     |
|     .o oo.      |
|    . o. ..      |
|     o ….      |
|       .. ..     |
+—————–+
hadoop@ubuntu:~$

hadoop@ubuntu:~$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
hadoop@ubuntu:~$

4、配置完成,测试一下:
hadoop@ubuntu:~$ ssh localhost
The authenticity of host 'localhost (::1)' can't be established.
RSA key fingerprint is d7:87:25:47:ae:02:00:eb:1d:75:4f:bb:44:f9:36:26.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
Linux ubuntu 2.6.32-22-generic #33-Ubuntu SMP Wed Apr 28 13:27:30 UTC 2010 i686 GNU/Linux
Ubuntu 10.04 LTS
[...snipp...]
hadoop@ubuntu:~$

5、禁用ipV6配置:
打开sudo gedit /etc/sysctl.conf,此文件需要root权限。
再次打开文件中,追加如下:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

重启,测试是否配置成功:
$ cat /proc/sys/net/ipv6/conf/all/disable_ipv6
如果是1就ok了。

下面就是安装Hadoop(Hadoop保存在/home目录下)了。
首先是:下载,解压缩,分配权限。
下载就不说了。
下载后运行如下:
root@ubuntu:~# cd /home
root@ubuntu:/home# ls
apache-tomcat-6.0.18  jdk1.6.0_30              study
hadoop                jdk-6u30-linux-i586.bin  ubuntu
hadoop-0.21.0.tar.gz  ljq                      web.war
root@ubuntu:/home# sudo tar xzf hadoop-0.21.0.tar.gz
root@ubuntu:/home# ls
apache-tomcat-6.0.18  hadoop-0.21.0.tar.gz     ljq     web.war
hadoop                jdk1.6.0_30              study
hadoop-0.21.0         jdk-6u30-linux-i586.bin  ubuntu
root@ubuntu:/home# sudo mv hadoop-0.21.0 hadoop
root@ubuntu:/home# sudo chown -R hadoop:hadoop hadoop #chown [OPTION]  [OWNER][:[GROUP]]  FILE
root@ubuntu:/home#

到此就安装完毕。

配置环境变量(共有4处要配置)
1、在/home/hadoop/hadoop-0.21.0/conf/hadoop-env.sh文件中添加环境变量信息。
2、在/etc/profile文件中添加环境变量信息。
3、在/home/.bash_profile文件中添加环境变量信息。
4、在/home/hadoop/.bashrc文件中添加环境变量信息。

环境变量信息如下:

1
2
3
4
5
6
7
8
HADOOP_HOME=/home/hadoop/hadoop-0.21.0
JAVA_HOME=/home/jdk1.6.0_30
PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$HADOOP_HOME/lib:$CLASSPATH
export HADOOP_HOME
export JAVA_HOME
export PATH
export CLASSPATH

重启,接着验证环境变量是否配置成功,如下:
export、echo $HADOOP_HOME、java -version

下面说说如何配置和启动:
基本思路是配置core-site.xml、mapred-site.xml、hdfs-site.xml。
首先建立一个用来存放数据的目录:mkdir /home/hadoop/hadoop-datastore

打开/home/hadoop/hadoop-0.21.0/conf/core-site.xml,配置如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<configuration>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/hadoop/hadoop-datastore/</value>
    <description>A base for other temporary directories.</description>
  </property>
 
  <property>
   <!--fs.default.name指定NameNode的IP地址和端口号-->
    <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>

打开/home/hadoop/hadoop-0.21.0/conf/mapred-site.xml,配置如下

1
2
3
4
5
6
7
8
9
10
<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>

打开/home/hadoop/hadoop-0.21.0/conf/hdfs-site.xml,配置如下

1
2
3
4
5
6
7
8
9
10
<configuration>
<property>
<!--block的副本数,默认为3;你可以设置为1 这样每个block只会存在一份。-->
  <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>
</configuration>

ok,配置完毕

格式化HDFS:
hadoop@ubuntu:~$ /home/hadoop/hadoop-0.21.0/bin/hadoop namenode -format

启动HDFS和MapReduce
hadoop@ubuntu:~/hadoop-0.21.0/bin$ ./start-all.sh

停止服务的脚本是:
hadoop@ubuntu:~/hadoop-0.21.0/bin$ ./stop-all.sh

通过jps查看进程是否启动成功
hadoop@ubuntu:~/hadoop-0.21.0/bin$ jps
5695 DataNode
5503 NameNode
6181 TaskTracker
6222 Jps
5890 SecondaryNameNode
5991 JobTracker
hadoop@ubuntu:~/hadoop-0.21.0/bin$
出现如上信息,表示hadoop启动成功,缺一不可。

netstat -at|grep 50030
netstat -at|grep 50070
查看端口是否正常

注意:有时候有些启动不成功,可以在/home/hadoop/hadoop-0.21.0/logs/查看日志信息进行诊断。

访问http://localhost:50070可以看到NameNode以及整个分布式文件系统的状态,浏览分布式文件系统中的文件以及日志等。
访问http://localhost:50030可以查看JobTracker的运行状态。

50070是dfs的端口,50030是MR的端口。

参考资料
Ubuntu下安装及配置单点hadoop
http://www.hadoopor.com/thread-2674-1-1.html
hadoop常见异常总结:
http://www.tieguanyin168.com/index.php/hadoop-exception-1706.html

Ubuntu下伪分布式模式Hadoop的安装及配置的更多相关文章

  1. Hadoop(2)-CentOS下的jdk和hadoop的安装与配置

    准备工作 下载jdk8和hadoop2.7.2 使用sftp的方式传到hadoop100上的/opt/software目录中 配置环境 如果安装虚拟机时选择了open java,请先卸载 rpm -q ...

  2. Ubuntu下PHP+MySQL+Apache+PHPStorm的安装和配置

    粘贴自:https://www.jianshu.com/p/a6a0d2a29591 1.Apache的安装: $ sudo apt-get update $ sudo apt-get install ...

  3. 初学者值得拥有【Hadoop伪分布式模式安装部署】

    目录 1.了解单机模式与伪分布模式有何区别 2.安装好单机模式的Hadoop 3.修改Hadoop配置文件---五个核心配置文件 (1)hadoop-env.sh 1.到hadoop目录中 ​ 2.修 ...

  4. Hadoop伪分布式模式部署

    Hadoop的安装有三种执行模式: 单机模式(Local (Standalone) Mode):Hadoop的默认模式,0配置.Hadoop执行在一个Java进程中.使用本地文件系统.不使用HDFS, ...

  5. Hadoop Single Node Setup(hadoop本地模式和伪分布式模式安装-官方文档翻译 2.7.3)

    Purpose(目标) This document describes how to set up and configure a single-node Hadoop installation so ...

  6. 云计算课程实验之安装Hadoop及配置伪分布式模式的Hadoop

    一.实验目的 1. 掌握Linux虚拟机的安装方法. 2. 掌握Hadoop的伪分布式安装方法. 二.实验内容 (一)Linux基本操作命令 Linux常用基本命令包括: ls,cd,mkdir,rm ...

  7. hadoop的安装和配置(三)完全分布式模式

    博主会用三篇文章为大家详细说明hadoop的三种模式: 本地模式 伪分布模式 完全分布模式 完全分布式模式: 前面已经说了本地模式和伪分布模式,这两种在hadoop的应用中并不用于实际,因为几乎没人会 ...

  8. 网站用户行为分析——Hadoop的安装与配置(单机和伪分布式)

    Hadoop安装方式 Hadoop的安装方式有三种,分别是单机模式,伪分布式模式,伪分布式模式,分布式模式. 单机模式:Hadoop默认模式为非分布式模式(本地模式),无需进行其他配置即可运行.非分布 ...

  9. Hadoop伪分布式模式搭建

    title: Hadoop伪分布式模式搭建 Quitters never win and winners never quit. 运行环境: Ubuntu18.10-server版镜像:ubuntu- ...

随机推荐

  1. Mysql的备份,权限与日志

    1>Mysql的数据备份    mysqldump 工具 --single-transaction 该选项导出数据之前提交一个BEGIN SQL语句,不会阻塞任何应该程序而且能保证导出数据时的一 ...

  2. opencv——拟合圆

    #include "stdafx.h" #include "cv.h" #include "highgui.h" #include &quo ...

  3. win10登录不上sql2005

    因需求安装了一个SQL Server 2005. 登录的时候,用户Sa模式可以登录,Windows身份验证方式却无法登录. 经测试.解决方法如下: SQL Server Management Stud ...

  4. Djangorestframework编写post接口

    前提:已经有Django环境 一.安装 pip install djangorestframework 二.编写视图 import json from django.shortcuts import ...

  5. ManualResetEvent 线程通信

    using System; using System.Threading; namespace ConsoleApp1 { class MyThread { Thread t = null; Manu ...

  6. css3动画简单应用

    CSS3添加了几个动画效果的属性,通过设置这些属性,可以做出一些简单的动画效果而不需要再去借助JavaScript.CSS3动画的属性主要分为三类:transform.transition以及anim ...

  7. Python 标准库之 xml.etree.ElementTree

    Python 标准库之 xml.etree.ElementTree Python中有多种xml处理API,常用的有xml.dom.*模块.xml.sax.*模块.xml.parser.expat模块和 ...

  8. c++和java在桌面应用软件开发的区别

    之前一直用c/c++比较多.最近做的事情用java写了个小程序.发现java的工具包很多而且好找,c++的桌面应用工具包就不好找了. java在项目的buildpath里添加外部jar包即可,c++需 ...

  9. Corn表达式

    CronTrigger CronTriggers往往比SimpleTrigger更有用,如果您需要基于日历的概念,而非SimpleTrigger完全指定的时间间隔,复发的发射工作的时间表.CronTr ...

  10. 傻瓜式学Python3——列表

    前言: 好久不见,突然发觉好久没写博客了,最近迷上了 Python 无法自拔,了解了一下,Python 简单易学,尤其是接触过java的人,入门 Python 更是门槛极低,本着学习记录的原则,边学习 ...