欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Ubuntu下hadoop的安装与配置

程序员文章站 2022-05-22 18:06:20
...

Ubuntuhadoop的安装与配置

 

版本:Ubuntu13.10 -64bit, hadoop1.0.4

 

       由于数据库课程作业的需要,最近在Ubuntu下配置了hadoop环境,在此作一下记录。

       首先要了解一下,hadoopApache基金会开发的一个分布式系统基础架构,通过它可以方便高效地对大数据进行处理。hadoop有两种运行模式:

       1. 单机模式

              hadoop只运行在一台电脑上,不与集群中的其它节点交互,优势在于方便调试代码。

       2. 集群分布模式

              这种模式下hadoop同时运行在多个节点上,处理能力相当强大,这也正是我们所需要的。不过,hadoop环境部署与维护相对复杂性更高。

 

假定我们现在要搭建一个只有三台主机的小集群,三台主机ip地址与分工如下:

       masterNamenode  192.168.1.170

       slave1:   Datanode    192.168.1.177

       slave2:   Datanode    192.168.1.179

 

 

hadoop单机模式

       配置集群分布模式,此阶段单机模式的配置在每一台电脑上必须基本保持一致。

 

1. 添加hadoop用户

       在三台电脑上添加相同的hadoop用户(这是hadoop集群的要求,否则各节点不能互相访问),创建用户的步骤如下:

       1.1 添加组

sudo addgroup hadoop

 

 

       1.2 添加用户

sudo adduser --ingroup hadoop hadoop

 

 

       1.3 编辑/etc/sudoers编辑文件,在root ALL=(ALL)ALL行下添加hadoop ALL=(ALL)ALL。如果不添加这行,haduser将不能执行sudo操作。

       添加用户成功之后,在终端中敲入”su - hadoop”切换到hadoop用户进行以下操作。

2. 安装jdk

       2.1 下载jdk-8uversion-linux-x64.rpmhttp://www.oracle.com/technetwork/java/javase/downloads/index.html

       2.2 更改文件所有者,给文件jdk-8uversion-linux-x64.rpm添加可执行权限

chown hadoop:hadoop jdk-8uversion-linux-x64.rpm
chmod +x jdk-8uversion-linux-x64.rpm

 

 

       2.3 执行安装

rpm -ivh jdk-8uversion-linux-x64.rpm

 

 

       2.4 增加JAVA_HOME环境变量

hadoop@slave02:~$ sudo vi /etc/profile

 

 

在最后面增加:

#set java environment
export JAVA_HOME=/usr/java/jdk1.8.0
export CLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME

 

 

保存退出

最后使刚才的修改生效:

hadoop@slave02:~$ source /etc/profile

 

 

JAVA_HOME指明JDK安装路径,就是刚才安装jdk的路径,在/usr目录下找找就看到了。

       2.5 在命令行输入

hadoop@slave02:~$ java -version

 

 

出现如下版本信息即为jdk配置成功:

Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 

 

3. 安装ssh

       3.1 一般系统是默认安装了ssh命令的。如果没有,或者版本比较老,则可以重新安装:

hadoop@slave02:~$ sudo apt-get install openssh-server

 

 

       3.2 设置local无密码登录

ssh生成密钥有rsadsa两种生成方式,默认情况下采用rsa方式。

       (1) 创建ssh-key,这里采用rsa方式:

 hadoop@slave02:~$ ssh-keygen -t rsa -P ""

 

 

(注:回车后会在~/.ssh/下生成两个文件:id_rsaid_rsa.pub这两个文件是成对出现的)

       (2) 进入~/.ssh/目录下,将id_rsa.pub追加到authorized_keys授权文件中,开始是没有authorized_keys文件的:

hadoop@slave02:~$ cd ~/.ssh
hadoop@slave02:~$ cat id_rsa.pub >> authorized_keys

 

 

(完成后就可以无密码登录本机了。)

       (3) 登录localhost

hadoop@slave02:~$ ssh localhost

 

 

( 注:当ssh远程登录到其它机器后,现在你控制的是远程的机器,需要执行退出命令才能重新控制本地主机。)

       (4) 执行退出命令:

hadoop@slave02:~$  exit

 

 

    Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
 

4. 安装hadoop

       4.1 假设hadoop-1.0.4.tar.gz在当前目录,将它复制到安装目录 /usr下:

hadoop@slave02:~$  sudo cp hadoop-1.0.4.tar.gz /usr

 

 

       4.2 解压hadoop-1.0.4.tar.gz

hadoop@slave02:~$  cd /usr
hadoop@slave02:~$  sudo tar -zxvf hadoop-1.0.4.tar.gz

 

 

       4.3 将解压出的文件夹改名为hadoop

hadoop@slave02:~$  sudo mv hadoop-1.0.4 hadoop

 

 

       4.4 将该hadoop文件夹的属主用户设为hadoop

hadoop@slave02:~$  sudo chown -R hadoop:hadoop hadoop

 

 

    注:为了避免出错,不妨更改一下hadoop目录以及目录下文件子目录的权限:

hadoop@slave02:~$  sudo chmod -R 764 hadoop

 

 

5. 配置hadoop环境

进入usr/hadoop目录:

       5.1 配置conf/hadoop-env.sh

编辑conf目录下hadoop-env.sh,添加以下信息:

export JAVA_HOME=/usr/java/jdk1.8.0 #视你机器的java安装路径而定)
export HADOOP_HOME=/usr/hadoop
export PATH=$PATH:/usr/hadoop/bin

 

 

并且,让环境变量配置生效source:

hadoop@slave02:~$  source /usr/hadoop/conf/hadoop-env.sh

 

 

       5.2 配置conf/core-site.xml

编辑如下:
Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
 

       5.3 配置conf/mapred-site.xml

编辑如下:
Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
 

       5.4 配置conf/hdfs-site.xml

编辑如下:
Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
 

       5.5 打开conf/masters文件,添加作为secondarynamenode的主机名,对于单机模式,这里只需填写 localhost 就好了。

       5.6 打开conf/slaves文件,添加作为slave的主机名,一行一个。对于单机模式,这里也只需填写 localhost就好了。

 

6. 启动测试

       6.1 格式化HDFS,执行如下命令:

hadoop@slave02:~$  hadoop namenode -fomat

 

 

Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
 

       6.2  启动start-all.sh

hadoop@slave02:~$ start-all.sh

 

 

Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
 

       6.3 检测hadoop是否启动成功:

hadoop@slave02:~$ jps

 

 

    Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
 

如果有NamenodeSecondaryNameNodeTaskTrackerDataNodeJobTracker五个进程,就说明你的hadoop单机版环境配置好了!

       6.4 检查运行状态

所有的设置已完成,Hadoop也启动了,现在可以通过下面的操作来查看服务是否正常,在Hadoop中用于监控集群状态的Web界面:

http://localhost:50030/     - Hadoop 管理介面

http://localhost:50060/     - Hadoop Task Tracker 状态

http://localhost:50070/     - Hadoop DFS 状态

Hadoop结束时,可以通过stop-all.sh脚本来关闭Hadoop的守护进程

 

 

 

hadoop集群分布模式

 

1. 修改主机名和host文件

       1.1 三台电脑分别修改主机名为master, slave1, slave2

sudo vi /etc/hostname

 

 (注:要重启生效)

       1.2 打开本机host文件(三台电脑操作一致):

sudo vi /etc/hosts

 

 

在后面添加内容:

192.168.1.170 master
192.168.1.177 slave1
192.168.1.179 slave2

 

 

2. 配置master ssh无密码登录其它节点

       2.1 master公钥复制(这里都要复制到slave1slave2,slave1为例)

hadoop@master:~$ scp ~/.ssh/id_rsa.pub hadoop@slave1:~/.ssh/

 

 

然后输入密码回车。

       2.2 在每个节点电脑上添加master公钥

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

 

 

       2.3 master测试无密码登录其它节点

hadoop@master:~$ ssh slave1

 

 

如果不输入密码,直接提示登录成功则配置完成。

3. 配置hadoop集群环境(只在master上操作)

进入/usr/hadoop目录:

       3.1 修改conf/masters
Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 

       3.2 修改conf/slaves
Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
 

4. 启动集群

       4.1 master上面执行:

hadoop@master:~$ start-all.sh

 

       4.2 在各节点上通过jps命令查看相关进程是否启动。

jps

 

 

至此,hadoop环境配置已经完成,接下来尽情感受hadoop强大的运算能力吧!

  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 14 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 7.1 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 20.5 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 12.3 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 21.4 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 28.6 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 11.8 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 5 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 9.6 KB
  • Ubuntu下hadoop的安装与配置
            
    
    博客分类: *技术 hadoop大数据并行计算 
  • 大小: 81.8 KB