Ubuntu12 部署 Hadoop 全流程总结

2024-05-26 14:08

本文主要是介绍Ubuntu12 部署 Hadoop 全流程总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境:
VMware® Workstation 8.0.4 build-744019
ubuntu-12.04-desktop-i386.iso
jdk-7u7-linux-i586.gz
hadoop-0.20.203.0rc1.tar.gz

第一步:搭建虚拟机基础环境
至少需要3台虚拟机才能模拟hadoop的真实运行场景:一台作为master节点,跑namenode和jobtracker进程;两台作为slave节点,跑datanode和tasktracker。
具体过程:
1.安装 VMware®  Workstation  8.0.4 build-744019
2.使用 ubuntu-12.04-desktop-i386.iso装一台虚拟机
3.安装 jdk-7u7-linux-i586.gz,具体步骤参见: http://user.qzone.qq.com/26896185/blog/1346764350
4.设置虚拟机的网络连接为bridged模式,这样的话虚拟机就可以和宿主机器在同一个网段;
5.复制两台虚拟机,在 VMware 中修改机器名以方便识别,具体步骤参见: http://user.qzone.qq.com/26896185/blog/1346553654
6.用 VMware加载复制出来的虚拟机,分别修改hostname文件(我将三台机器修改为masternode、slavenode1、slavenode2): 当使用VMware加载复制的虚拟机文件时,会提示“是否拷贝过”,选择“拷贝过”,vmware会自动帮修改mac地址等基本信息,但是hostname不会改动,所以复制后的虚拟机hostname和原来的虚拟机一致,千万别忘记手工修改  /etc/hostname 文件,主机名最好与 /etc/hosts 中的地址映射主机名保持一致!!!
7. 为三台虚拟机配置固定IP ;
8. 为三台虚拟机  /etc/hosts 
9.为每台虚拟机创建专门用来管理Hadoop的用户账号(可以三台都相同,或者在复制之前就创建好,我建的用户是grid);
10.配置SSH免登陆,具体步骤参见  http://user.qzone.qq.com/26896185/blog/1346862626

第二步:安装Hadoop
具体过程:
1.在目标目录解压hadoop安装包(我解压到/home/grid/hadoop);
2.修改hadoop/conf/下的配置文件: hadoop-env.sh   ,   core-site.xml  ,hdfs-site.xml  ,mapred-site.xml  ,  masters  , slaves
hadoop-env.sh 文件主要修改如下语句, 用于指明JDK位置
# The java implementation to use.  Required.
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_07

core-site.xml 文件主要编辑如下语句, 用于指明namenode的域名/ip和端口
 <property>
  <name>fs.default.name</name>
  <value>hdfs://masternode:9000</value>
 </property>
 <property>
  <name>hadoop.tmp.dir</name>
  <value>/home/grid/hadoop_tmp</value>
  <description>A base for other temporary directories.</description>
 </property>

hdfs-site.xml 文件主要编辑如下语句, 用于指明namenode、datanode的数据存放位置,及数据副本的个数
<property>
<name>dfs.name.dir</name>
<value>/home/grid/hadoop/namedata</value>
</property>

<property>
<name>dfs.data.dir</name>
<value>/home/grid/hadoop/data</value>
</property>

<property>
<name>dfs.replication</name>
<value>2</value>
</property>

mapred-site.xml 主要编辑如下语句, 用于指明jobtracker进程所在节点的域名/ip和端口
<property>
<name>mapred.job.tracker</name>
<value>masternode:9001</value>
</property>

masters文件添加master节点的域名或ip地址,我添加的是
masternode

slaves文件添加slave节点的域名或ip地址,我添加的是
slavenode1
slavenode2


3.向各节点复制hadoop文件夹;

4.在master节点上执行命令格式化namenode: hadoop/bin/hadoop namenode -format

5.启动hadoop: hadoop/bin/ start-all.sh    (相反的关闭hadoop:hadoop/bin/stop-all.sh)

6.用jps检验各后台进程是否成功启动:进入到jdk安装目录,执行 bin/jps,在master节点应该能看到namenode、jobtracker、secondarynamenode 三个进程,在slave节点应该能看到datanode、tasktracker两个进程。
各种报错的解决办法请参见:
http://blog.csdn.net/u010967382/article/details/9069625  
和  
http://blog.csdn.net/u010967382/article/details/9069623

这篇关于Ubuntu12 部署 Hadoop 全流程总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1004681

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Python版本与package版本兼容性检查方法总结

《Python版本与package版本兼容性检查方法总结》:本文主要介绍Python版本与package版本兼容性检查方法的相关资料,文中提供四种检查方法,分别是pip查询、conda管理、PyP... 目录引言为什么会出现兼容性问题方法一:用 pip 官方命令查询可用版本方法二:conda 管理包环境方法

pycharm跑python项目易出错的问题总结

《pycharm跑python项目易出错的问题总结》:本文主要介绍pycharm跑python项目易出错问题的相关资料,当你在PyCharm中运行Python程序时遇到报错,可以按照以下步骤进行排... 1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

nodejs打包作为公共包使用的完整流程

《nodejs打包作为公共包使用的完整流程》在Node.js项目中,打包和部署是发布应用的关键步骤,:本文主要介绍nodejs打包作为公共包使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言一、前置准备二、创建与编码三、一键构建四、本地“白嫖”测试(可选)五、发布公共包六、常见踩坑提醒

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

一个Java的main方法在JVM中的执行流程示例详解

《一个Java的main方法在JVM中的执行流程示例详解》main方法是Java程序的入口点,程序从这里开始执行,:本文主要介绍一个Java的main方法在JVM中执行流程的相关资料,文中通过代码... 目录第一阶段:加载 (Loading)第二阶段:链接 (Linking)第三阶段:初始化 (Initia

linux部署NFS和autofs自动挂载实现过程

《linux部署NFS和autofs自动挂载实现过程》文章介绍了NFS(网络文件系统)和Autofs的原理与配置,NFS通过RPC实现跨系统文件共享,需配置/etc/exports和nfs.conf,... 目录(一)NFS1. 什么是NFS2.NFS守护进程3.RPC服务4. 原理5. 部署5.1安装NF

Git打标签从本地创建到远端推送的详细流程

《Git打标签从本地创建到远端推送的详细流程》在软件开发中,Git标签(Tag)是为发布版本、标记里程碑量身定制的“快照锚点”,它能永久记录项目历史中的关键节点,然而,仅创建本地标签往往不够,如何将其... 目录一、标签的两种“形态”二、本地创建与查看1. 打附注标http://www.chinasem.cn

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践