在 Ubuntu 上安装Hadoop-0.20.2 教程
Hadoop环境搭建及wordcount实例运行

环境概述
虚拟平台:VirtualBox4.2.0
Linux版本:Ubuntu10.04
Hadoop版本:hadoop-0.20.2
JDK版本:1.6.0
Hadoop环境规划:一台namenode主机master,两台datanode主机salve1、slave2,master主机IP为111.111.111.2,slave1主机IP为111.111.111.3,slave2主机IP为111.111.111.4。
ssh_5.3p1-3ubuntu3_all.deb
依次安装即可
dpkg -i openssh-client_5.3p1-3ubuntu3_i386.deb
dpkg -i openssh-server_5.3p1-3ubuntu3_i386.deb
dpkg -i ssh_5.3p1-3ubuntu3_all.deb
14/02/20 15:59:58 INFO mapred.JobClient: Running job: job_201402201551_0003
14/02/20 15:59:59 INFO mapred.JobClient: map 0% reduce 0%
14/02/20 16:00:07 INFO mapred.JobClient: map 100% reduce 0%
111.111.111.2 master
111.111.111.3 slave1
111.111.111.4 slave2
然后按以下步骤配置master到slave1之间的ssh信任关系
用户@主机:/执行目录
操作命令
说明
hadoop@master:/home/hadoop
Ubuntu下搭建hadoop服务器集群

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置Hadop是一种分布式系统基础架构,由Apache基金会开发。
用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力高速运算和存储。
AD:2013云计算架构师峰会课程资料下载一、引言Hadoop是一种分布式系统基础架构,由Apache基金会开发。
用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力高速运算和存储。
Hadoop 1.2.1版本下载地址:/hadoop/common/hadoop-1.2.1/二、准备安装环境我的本机是环境是windows8.1系统 +VMvare9虚拟机。
VMvare中虚拟了3个ubuntu 12.10的系统,JDK版本为1.7.0_17.集群环境为一个master,两个slave,节点代号分别/etc/hosts中进行配置三、安装环境1、首先修改机器名使用root权限,使用命令:1.sudo vi /etc/hosts其中node1、node2、node3的/etc/hosts配置为:/etc/hosts的配置很重要,如果配置的不合适会出各种问题,会影响到后面的SSH配置以及Hadoop的DataNode节点的启动。
2、安装JDKUbuntu下的JDK配置请参考:/art/200907/135215.htm3、添加用户在root权限下使用以下命令添加hadoop用户,在三个虚拟机上都添加这个用户1.sudo adduser hadoop将下载到的hadoop-1.2.1.tar文件放到/home/hadoop/目录下解压,然后修改解压后的文件夹的权限,命令如下:1.sudo tar -xvzf hadoop-1.2.1.tar #解压命令2.3.chown -R hadoop:hadoop hadoop-1.2.1(文件夹名)4、安装和配置SSH4.1)在三台实验机器上使用以下命令安装ssh:1.sudo apt-get install ssh安装以后执行测试:stat -nat #查看22端口是否开启2.3.ssh localhost #测试ssh是否成功连接输入当前用户名和密码按回车确认,说明安装成功,同时ssh登陆需要密码。
hadoop2.2安装

Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程历时一周多,终于搭建好最新版本Hadoop2.2集群,期间遇到各种问题,作为菜鸟真心被各种折磨,不过当wordcount给出结果的那一刻,兴奋的不得了~~(文当中若有错误之处或疑问欢迎指正,互相学习)另外:欢迎配置过程中遇到问题的朋友留言,相互讨论,并且能够把解决方法共享给大家。
下面评论中有几个朋友遇到的问题和解决方法,欢迎参考!第一部分Hadoop 2.2 下载Hadoop我们从Apache官方网站直接下载最新版本Hadoop2.2。
官方目前是提供了linux32位系统可执行文件,所以如果需要在64位系统上部署则需要单独下载src 源码自行编译(10楼评论中提供了一个解决方法链接)。
下载地址:/hadoop/common/hadoop-2.2.0/如下图所示,下载红色标记部分即可。
如果要自行编译则下载src.tar.gz.第二部分集群环境搭建1、这里我们搭建一个由三台机器组成的集群:192.168.0.1 hduser/passwd cloud001 nn/snn/rm CentOS6 64bit192.168.0.2 hduser/passwd cloud002 dn/nm Ubuntu13.04 32bit192.168.0.3 hduser/passwd cloud003 dn/nm Ubuntu13.0432bit1.1 上面各列分别为IP、user/passwd、hostname、在cluster中充当的角色(namenode, secondary namenode, datanode , resourcemanager, nodemanager)1.2 Hostname可以在/etc/hostname中修改(ubuntu是在这个路径下,RedHat稍有不同)1.3 这里我们为每台机器新建了一个账户hduser.这里需要给每个账户分配sudo的权限。
hadoop安装配置指南

Hadoop安装、配置指南一、环境1、软件版本Hadoop:hadoop-0.20.2.Hive:hive-0.5.0JDK:jdk1.6以上版本2、配置的机器:主机[服务器master]:192.168.10.121 hadoop13从机[服务器slaves]:192.168.10.68 hadoop4在本文中,在命令或二、先决条件1、配置host:打开/etc/host文件,添加如下映射192.168.10.121 hadoop13 hadoop13192.168.10.68 hadoop4 hadoop42、配置SSH自动登陆1)以ROOT用户,登陆到[服务器master]上执行,如下操作:ssh-keygen -t rsa //一路回车cd ~/.sshcat id_rsa.pub >> authorized_keysscp -r ~/.ssh [服务器slaves]:~/2)以ROOT用户,登陆到[服务器slaves]上执行,如下操作:scp -r ~/.ssh [服务器master]:~/3)测试SSH是否配置成功在主服务器中执行如下命令:ssh [服务器master]ssh 192.168.10.68成功显示结果:Last login: Thu Aug 26 14:11:27 2010 from 在从服务器中执行如下命令:ssh [服务器slaves]ssh 192.168.10.121成功显示结果Last login: Thu Aug 26 18:23:58 2010 from 三、安装hadoop1、JDK安装,解压到/usr/local/jdk1.6.0_17,并配置/etc/profile环境export JAVA_HOME=/usr/local/jdk/jdk1.7.0export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre:$PATHexport CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jarJDK路径:/usr/local/jdk/jdk1.7.0export JAVA_HOME=/usr/local/jdk/jdk1.7.0export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre:$PATHexport CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar/usr/local/jdk/jdk1.7.02、下载Hadoop 并解压到[服务器master]的/root/zwmhadoop目录下tar zxvf hadoop-0.20.2.tar.gz四、配置hadoop1.配置主机[服务器master]到zwm hadoop/hadoop-0.20.2/ hadoop 目录下,修改以下文件:1)配置conf/hadoop-env.sh文件,在文件中添加环境变量,增加以下内容:export JAVA_HOME=/usr/local/jdk1.6.0_17export HADOOP_HOME=/root/zwmhadoop/hadoop-0.20.2/2)配置conf/core-site.xml文件,增加以下内容<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration><property><name></name><value>hdfs://192.168.10.121:9000</value>//你的namenode的配置,机器名加端口<description>The nam e of the default file system. Either the literal string "local" o r a host:port for DFS.</description></property></configuration>3)配置conf/hdfs-site.xml文件,增加以下内容<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration><property><name>hadoop.t m p.dir</name><value>/root/zwmhadoop/t m p</value>//Hadoop的默认临时路径,这个最好配置,然后在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删除此文件中的t mp目录即可。
Hadoop伪分布式安装步骤(hadoop0.20.2版本)

Hadoop伪分布式安装步骤(hadoop0.20.2版本)最近在学习hadoop,⾃⼰下了个视频教程,他的教学版本是hadoop0.20.2版本,现在的最新版本都到了3.0了,版本虽然有点⽼,但是还是学了⼀下,觉得有借鉴的价值。
不废话了,开始介绍:先说⼀下环境:ubuntu14.04,其中要装上ssh open-server服务,装上jdk环境。
伪分布式模式安装和配置步骤如下图:详细步骤1 ⾸先把⽂件导⼊linux系统(我⽤的ubuntu虚拟机,hadoop-0.20.2.tar.gz安装包放在了桌桌⾯)。
⾸先把这个安装包放在/opt⽬录下,并解压:2 配置相关⽂件hadoop-env.sh⽂件配置(版本不同,⽂件位置可能不⼀样,hadoop0.20.2在/conf下)core-site.xml (/conf下)修改hdfs-site.xmlhdfs-site.xml配置⽂件中还有其他⼀些配置,此次配置没有⽤到,如下图:mapred-site.xml配置下图是mapred-site.xml其他⼀些配置,此次没⽤到,列到这⾥:注意:由于我布置的是伪分布式,只有⼀个节点(即本机),所以core-site.xml和mapred-site.xml两个配置⽂件中的相关ip地址是localhost,如果完全分布式部署,是要写相应的IP的。
另外,9000和9001是hadoop缺省端⼝,⼀般没必要修改。
ssh设置⾸先进⼊/root然后按照下图输⼊(让每个节点之间互通免密码)这样就⼤功告成啦完全分布式安装⼤致步骤如下:1 配置host⽂件2 简历hadoop运⾏账号3 配置ssh免密码连接4 下载hadoop并解压5 配置namenode,修改site⽂件6 配置hadoop-env.sh7 配置master和slaves⽂件8 向各节点复制hadoop9 格式化namenode10 启动hadoop11 ⽤jps检查阁后台进程是否成功启动后续:以上都是基于hadoop0.20.2版本的,属于⽐较过时的东西,推荐⼀个⼤神总结的hadoop2.6.0的安装和配置,写的很详细,⽽且也是正确的。
hadoop安装流程

hadoop安装流程Hadoop是一种开源的分布式数据处理框架,它的出现极大地简化了大数据处理的流程,成为了数据科学家们的有力工具。
在使用Hadoop之前,需要先完成其安装,在这里,我们将详细阐述Hadoop的安装流程。
第一步:下载Hadoop。
在Hadoop官网上,可以找到最新的Hadoop版本,选择合适的版本后进行下载。
下载完成后,需要进行解压操作,可以使用命令tar -zxvf xxxx.tar.gz 进行解压,其中xxxx 为Hadoop的安装包名称。
第二步:配置环境变量。
完成解压后,需要设置环境变量。
在bashrc文件中配置,export HADOOP_HOME=/usr/local/hadoopexport PATH=$HADOOP_HOME/bin:$PATHexport CLASSPATH=$HADOOP_HOME/lib/*:$CLASSPATH最后执行命令source ~/.bashrc,让环境变量立刻生效。
第三步:修改配置文件。
进入解压后文件夹中的/etc/hadoop文件夹,将其中的core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml配置文件进行修改。
以core-site.xml为例,需要加入以下内容:<property><name></name><value>hdfs://localhost:9000</value></property>以hdfs-site.xml为例,需要加入以下内容:<property><name>dfs.replication</name><value>1</value></property><property><name>.dir</name><value>file:/usr/local/hadoop/hadoop_data/hdfs/namenode</valu e></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/hadoop/hadoop_data/hdfs/datanode</valu e></property>以mapred-site.xml为例,需要加入以下内容:<property><name></name><value>yarn</value></property>以yarn-site.xml为例,需要加入以下内容:<property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>第四步:格式化NameNode。
ubuntu下的hadoop配置与运行

Hadoop 部署、配置与运行扉言:此文档为自己部署过程中的记录。
配置后演示了单节点、单机伪分布和两台机器之间的分布运行、并对伪分布和完全分布做了初步对比以增进理解,最后演示了在eclipse下运行hadoop自带例子wordcount 的步骤。
=====================================================系统配置===================================================== (一)资源需求➢ Linux Ubuntu 9.10//最新版本可上官方网站免费下载//也可以向Ubuntu 社区申请免费安装 ➢Hadoop 0.20.0 包//最新版本可在Apache 提供的镜像服务器下载→→镜像服务器→hadoop// download➢Sun-java6-jdk 包//在终端机里输入:apt-get install sun-java6-jdk//系统会自动下载包以及所有的依存包,同时进行包的安装➢SSH 包(为远程登录会话提供安全性协议)//在终端机里输入:apt-get install ssh➢Eclipse 包//官方下载最新版本:/downloads/(二)配置流程1. 安装ubuntu 9.042. 更新deb 软件包列表$ sudo apt-get update3. 安装系统更新$ sudo apt-get upgrade4. 安装JDK$ sudo apt-get install sun-java6-jdk//默认路径在/usr/lib/jvm,安装时需要TAB 键选择OK 5. 设置java-6-sun 为默认的java 程序$ sudo update-alternatives --config java //JDK 唯一,不需选择$ sudo update-java-alternatives -s java-6-sun6. 设置CLASSPATH 和JAVA_HOME 系统环境变量$ sudo gedit /etc/environment添加以下两行内容:CLASSPATH=".:/usr/lib/jvm/java-6-sun/lib"JAVA_HOME="/usr/lib/jvm/java-6-sun"7. 调整系统虚拟机的优先顺序$ sudo gedit /etc/jvm在文件顶部添加一行/usr/lib/jvm/java-6-sun如果文件/etc/jvm 不存在则自己新建8. 多节点分布式环境下的两个必要条件a、每个节点有相同的用户名,如shiep205b、hadoop 文件路径相同,如/home/shiep205/hadoop9. 下载hadoop-*.tar.gz 至/home/shiep205/$ cd ~ //选择默认路径$ sudo tar xzf hadoop-0.20.0.tar.gz //解压至当前路径$ mv hadoop-0.20.0 hadoop //重命名为hadoop$ sudo chown -R shiep205:shiep205 hadoop//赋予shiep205权限10. 更新hadoop 环境变量$ gedit hadoop/conf/hadoop-env.sh将#export JAVA_HOME=/usr/lib/jvm/java-6-sun改为export JAVA_HOME=/usr/lib/jvm/java-6-sun11. 配置SSH$ sudo apt-get install ssh$ sudo apt-get install rsync //远程同步,可能已经安装了最新版本$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys$ ssh localhost //验证配置成功与否=====================================================单节点配置===================================================== 在前面工作已经做好的基础上,单节点的运行,运行在非分布模式,hadoop 作为单个java 进程。
hadoop0.20.2集群配置

搭建一个hadoop集群包括:1个namenode2个datanonde1、修改主机名及IP地址192.168.10.184配置vi /etc/sysconfig/network添加内容:NETWORKING=yesHOSTNAME=master192.168.10.185配置vi /etc/sysconfig/network添加内容:NETWORKING=yesHOSTNAME=slaves1192.168.10.186配置vi /etc/sysconfig/network添加内容:NETWORKING=yesHOSTNAME=slaves2vi /etc/hosts要将文件的前两行注释掉(注释当前主机的信息)并在文件中添加所有hadoop集群的主机信息把hosts文件copy到其余2台服务器scp /etc/hosts root@192.168.10.185:/etc/然后分别执行/bin/hostsname hostsname例如:master上执行/bin/hostsname master,使之生效。
2、配置主机间无密码ssh各服务器在各个主机上执行操作:ssh-keygen -t rsa,然后一直回车在/root/.ssh/目录下生成了两个文件 id_rsa 和 id_rsa.pubcp id_rsa.pub authorized_keys修改authorized_keys的权限为600chmod 600 ~/.ssh/authorized_keys先将所有authorized_keys合并cat ~/.ssh/authorized_keys | ssh root@192.168.10.167 'cat >> ~/ .ssh/authorized_keys'合并结果如下图:然后复制分发到其他服务器(若没有.ssh文件夹需要自行创建)scp authorized_keys root@192.168.10.185:/root/.ssh/ 验证能否无密码ssh,在master服务器上执行操作:注意:第一次可能会提示输入yes or no,之后就可以直接ssh到其他主机上去了。
Hadoop分布式详细安装步骤

Hadoop分布式详细安装步骤版本:0.20.2准备工作:由于Hadoop要求所有主机上hadoop的部署目录结构要相同,并且都有一个相同的用户名的帐户。
二台机器上是这样的:都有一个coole的帐户,主目录是/home/coole两台机器(内存应在512以上,否则可能会出现计算极度缓慢的情况):一台机器名:master IP:211.87.239.181一台机器名:slave IP:211.87.239.182每台都建coole用户如果是ubuntu,为了便于用coole帐号修改系统设置和访问系统文件,推荐把coole也设为sudoers(有root 权限的用户),具体做法是用已有的sudoer登录系统,执行sudo visudo –f /etc/sudoers,并在此文件中添加以下一行:mapred ALL=(ALL) ALL一、更改主机名:1、修改/etc/sysconfig/networkNETWORKING=yesHOSTNAME=yourname (在这修改hostname,把yourname换成你想用的名字)NISDOMAIN=修改后机器211.87.239.181中/etc/sysconfig/network文件内容为:NETWORKING=yesHOSTNAME=master修改后机器211.87.239.182中/etc/sysconfig/network文件内容为:NETWORKING=yesHOSTNAME=slave2、最后在终端下执行:# hostname ***** (*****为修改后的hostname,即你想用的名字)例如#hostname master特别提示:各处修改的名字要保持一致,否则会出现问题。
3、修改每台机器的/etc/hosts,保证每台机器间都可以通过机器名解析配置etc/hosts文件,以root 身份打开/etc/hosts文件。
Master/slave做同样修改。
Hadoop和Hive的安装配置

Hadoop和Hive的安装配置hadoop安装指南/hive安装指南Hadoop集群需要一台机器作为主节点,其余都是从节点。
配置单元只需要在主节点中安装和配置。
配置hadoopHadoop的配置相对简单。
下面详细介绍安装和配置步骤。
要配置Hadoop 0,请以版本20.2为例。
(1)从hadoop官网上下载hadoop-0.20.2.tar.gz文件,并解压产生hadoop-0.20.2目录,将该目录到/opt/hadoop目录下(如果你解压缩到了其它目录中,注意后面要相应的修改配置项)。
输入命令以建立$ln-shadow-0.20.2hadoop的软连接(其优点是,如果使用其他版本的Hadoop,则无需重新配置)(2)hadoop和hive都需要机器名。
用hostname命令修改本机的机器名,例如修改10.10.10.1的机器名为hadoop139需要键入#hostnamehadoop1修改/etc/hosts文件,添加hadoop集群中所有的机器名和ip地址的对应关系。
master节点和所有slave节点一定都要添加,否则会出问题。
例如在我的所有hadoop机器的/etc/hosts文件都添加10.10.10.1 Hadoop 110。
10.10.2 Hadoop 210。
10.10.3 ADOP310。
10.10.4hadoop410。
10.10.5 Hadoop 510。
10.10.6 Hadoop 610。
10.10.7 Hadoop 7(3)由于主节点的机器需要在没有密码的情况下登录到所有从节点,因此所有机器都需要以下配置。
在本文中hadoop1是master节点。
打开/etc/SSH/sshd_uu-Config文件以确保SSH不使用SSH2协议,或者将所有协议2修改为协议1。
如果修改了该文件,用servicesshdrestart命令重启一下ssh服务。
键入以下命令#cd~/.ssh/#ssh-keygen-trsa1-c\#身份。
ubuntu下hadoop集群的配置

Ubuntu下Hadoop-0.20.2集群配置文档一、集群网络环境配置(1)集群包含三台机器,操作系统是ubuntu9.10,并且有一个相同的用户hadoop(具有管理员权限),节点之间局域网连接,可以相互ping 通,三台电脑的IP地址分别设为192.168.90.91、192.168.90.92、192.168.90.93。
(2)更改计算机名因为计算机名存放在/etc/hostname中,在每台ubuntu中,分别运行:sudo gedit /etc/hostname把三台电脑分别改名为ubuntu1,ubuntu2和ubuntu3。
ubuntu1将来要做namenode,ubuntu2和ubuntu3将来要做datanode。
(3)添加IP地址和主机名之间的映射映射关系保存在/etc/hosts中。
因此须在每台ubuntu的/etc/hosts中均添加如下内容:192.168.90.91 ubuntu1192.168.90.92 ubuntu2192.168.90.93 ubuntu3添加完成之后,以后凡是遇到ubuntu1、ubuntu2、ubuntu3等,就能解析出正确的IP地址二、安装Java JDK 1.6因为hadoop是用java开发的,因此需要jdk的支持才能运行,在每台ubuntu下均安装jdk,步骤如下:1),打开终端,执行以下命令:sudo apt-get install sun-java6-jdk(或者default-jdk,相应地,下面的两点需要稍微修改一下)2),配置JAVA 环境变量:sudo gedit /etc/environment在其中添加如下两行:CLASSPATH=.:/usr/lib/jvm/java-6-sun/libJAVA_HOME=/usr/lib/jvm/java-6-sun3),执行命令:sudo gedit /etc/jvm,在最前面加入:/usr/lib/jvm/java-6-sun4),保存完之后更新一下系统配置文件,使环境变量生效,运行命令:source /etc/environment三、S SH无密码验证配置Hadoop需要使用SSH协议,namenode使用SSH无密码登录并启动datanode进程。
Ubuntu11.04环境下Hadoop的配置详细步骤

Ubuntu11.04 下hadoop 的环境配置详细步骤1, 【datanode 和 namenode 的机器环境配置,包括 ip jdk ssh 】1.1【IP 设置】/etc/hostname 里面写入机器的 名称/etc/hosts 里面,分 namenode 和datanode ,【127.0.1.1 ub999 ub999】这个千万不要写,写了后,总是在start-all.sh 时报 Name or service not knownstname ub002。
就是因为ub002这个机器hosts 里面写了 127.0.1.1 ub002 ub002 ,导致的,后来去掉了,就好了。
Datanode 节点 里面 只要写入 namenode 和本机的ip 和名称就可以了.如下: 【注意,修改后要重启机器,才能生效的 reboot ,然后相互ping 一下。
】1.2 【SSH 安装设置】Sudo apt-get install openssh-server openssh-client以上命令安装 完 ssh 。
1.2.1 namenode 访问datanode 时无密码访问处理,就是把 namenode 产生的公钥保存到 每个datanode 的 机器上,在namenode 的机器上产生密钥对:ssh-keygen -t rsa 执行完上面的命令后在 /root/.ssh/产生了2个文件:id_rsa.pub然后 生成公钥文件:cp id_rsa.pub authorized_keyschmod 755 .ssh [.ssh 目录必须有被读写权限]chmod 644 authorized_keys这2步chmod非常关键,必须保证authorized_keys只对其所有者有读写权限,其他人不允许有写的权限,否则SSH是不会工作的。
然后把authorized_keys这个文件里面的内容拷贝到每个datanode的机器上,如果这个机器上没有这个文件,那么要建立这个文件,如果有这个文件,那么只要把这2个文件里面的内容合并成一个文件就好了。
在 Ubuntu 上安装Hadoop-0.20.2 教程

在Ubuntu 上安装Hadoop 教程实践环境:U buntu8.04+jdk1.6+hadoop-0.20.1 ( 三台实体机)机器名IP 作用Ubuntu01 192.168.0.4 NameNode 、master 、jobTrackerUbuntu02 192.168.0.3 DataNode 、slave 、taskTracker1 、安装ubuntu8.04更新源修改2 、安装jdk1.6sudo apt-get install sun-java6-jdk(物理机可能安装不上,直接下载jdk安装jdk-1_5_0_14-linux-i586.bin文件安装# chmod a+x jdk-1_5_0_14-linux-i586.bin ←使当前用户拥有执行权限# ./jdk-1_5_0_14-linux-i586.bin ←选择yes直到安装完毕)安装后,添加如下语句到/etc/profile 中:export JA VA_HOME=/usr/lib/jvm/java-6-sunexport JRE_HOME=/usr/lib/jvm/java-6-sun/jreexport CLASSPATH=.:$JA V A_HOME/lib:$JRE_HOME/lib:$CLASSPATHexport PA TH=$JA V A_HOME/bin:$JRE_HOME/bin:$PA TH注意:每台机器的java 环境最好一致。
安装过程中如有中断,切换为root 权限来安装。
(7 、安装hadoop下载hadoop-0.20.1.tar.gz :$ wget /apache-mirror/hadoop/core/hadoop-0.20.2/hadoop-0.20.2.tar.gz解压:$ tar -zvxf hadoop-0.20.2.tar.gz把Hadoop 的安装路径添加到/etc/profile 中:export HADOOP_HOME=/home/wl826214/hadoop-0.20.2export PA TH=$HADOOP_HOME/bin:$PA TH8 、配置hadoophadoop 的主要配置都在hadoop-0.20. 2 /conf 下。
Hadoop学习---Ubuntu中hadoop完全分布式安装教程

Hadoop学习---Ubuntu中hadoop完全分布式安装教程软件版本Hadoop版本号:hadoop-2.6.0-cdh5.7.0;VMWare版本号:VMware 9或10Linux系统:CentOS 6.4-6.5 或Ubuntu版本号:ubuntu-14.04.1-desktop-i386Jdk版本号:Jdk1.7.0._79后三项对版本要求不严格,如果使⽤Hbase1.0.0版本,需要JDK1.8以上版本安装教程VMWare虚拟机是个软件,安装后可⽤来创建虚拟机,在虚拟机上再安装系统,在这个虚拟系统上再安装应⽤软件,所有应⽤就像操作⼀台真正的电脑,以上链接如果因为官⽅⽹站变动发⽣变化,可以直接在搜索引擎中搜索VMWare来查找其下载地址,建议不要在⾮官⽅⽹站下载。
安装试⽤版后有30天的试⽤期。
打开VMWare点击创建新的虚拟机选择典型点击浏览选择ubuntu暂时只建两个虚拟机,注意分别给两个虚拟机起名为Ubuntu1和Ubuntu2;也可以按照⾃⼰的习惯取名,但是后续的许多配置⽂件要相应更改,会带来⼀些⿇烦。
密码也请记牢,后⾯会经常使⽤。
Ubuntu中会显⽰有光盘插⼊了光驱双击打开光盘将光盘中VMwareTools-9.6.1-1378637.tar.gz复制到桌⾯,复制⽅法类似windows系统操作。
点击Extract Here从菜单打开Ubuntu的控制终端cd Desktop/vmware-tools-distrib/sudo ./vmware-install.pl输⼊root密码,⼀路回车,重启系统注意1: ubuntu安装后, root ⽤户默认是被锁定了的,不允许登录,也不允许“ su” 到 root 。
允许 su 到 root⾮常简单,下⾯是设置的⽅法:注意2:ubuntu安装后要更新软件源:cd /etc/aptsudo apt-get update安装各种软件⽐较⽅便宿主机与虚拟机共享⽂件夹的创建1)点击虚拟机->设置,点击选项->共享⽂件夹,选择总是启⽤,点击添加按钮2)点击下⼀步3)选择共享⽂件夹路径(此路径为本地⽂件路径),点击下⼀步4)选择启⽤该共享,点击完成5)点击确定6)则可以在如图所⽰⽂件夹下寻找共享⽂件夹创建hadoop⽤户组: sudo addgroup hadoop创建hduser⽤户:sudo adduser -ingroup hadoop hduser注意这⾥为hduser⽤户设置同主⽤户相同的密码为hadoop⽤户添加权限:sudo gedit /etc/sudoers,在root ALL=(ALL) ALL下添加hduser ALL=(ALL) ALL。
Hadoop大数据平台构建与应用 第2章 Ubuntu的安装与使用

2、更换国内服务器源更新
在终端下,执行如下命令:
Байду номын сангаас
$ sudo apt-get clean
#清清除已有更新
$ sudo apt-get update
#更新
✎ 2.2 Ubuntu系统安装
2.2.6 安装vim编辑器并使用
vi编辑器是Linux自带的软件,vim编辑器是vi编辑器的加强版, 需要用户自己安装。安装vim的前提是,apt-get update执行成功。
执行如下命令安装vim编辑器: $ sudo apt-get install vim
vim有3种基本工作模式:命令行(Command)模式、文本输入(Insert)模 式和末行(Last line)模式。
✎
2.3 虚拟机联网问题及其他
1、网络无法连接问题 2、屏蔽“检查到系统程序出现问题”提示 3、屏蔽“初始化提示” 4、尽量不要做升级操作 需要说明的是,update更新与版本升级完全是两码事
1、下载VMware Workstation 2、安装VMware Workstation详细步骤
✎ 2.2 Ubuntu系统安装
2.2.2在虚拟机中安装Ubuntu系统
1、下载Ubuntu系统安装软件 2、设置CPU支持虚拟化(如果能在虚拟机中正常安装Linux系统,此 步骤可跳过) 3、在VMware上创建虚拟机 4、安装Ubuntu 安装之后,系统会有升级提示,如果没有更多要求,以不升级为宜。
2.2.1 下载虚拟机软件VMware并安装 2.2.2 在虚拟机中安装Ubuntu系统 2.2.3 中英文输入法切换 2.2.4 安装VMware Tools 2.2.5 apt更新与更新源 2.2.6 安装vim编辑器并使用 2.3 虚拟机联网问题及其他
hadoop伪分布式集群搭建与安装(ubuntu系统)

hadoop伪分布式集群搭建与安装(ubuntu系统)1:Vmware虚拟软件⾥⾯安装好Ubuntu操作系统之后使⽤ifconfig命令查看⼀下ip;2:使⽤Xsheel软件远程链接⾃⼰的虚拟机,⽅便操作。
输⼊⾃⼰ubuntu操作系统的账号密码之后就链接成功了;3:修改主机的名称vi /etc/hostname和域名和主机映射对应的关系 vi /etc/hosts,改过之后即⽣效,⾃⼰可以ping⼀下,我这⾥ip对应master,⽐如ping master之后发现可以ping通即可;(centos操作系统修改主机名命令:vi /etc/sysconfig/network,修改内容为HOSTNAME=master)4:修改过主机名称和主机名与ip对应的关系之后;开始上传jdk,使⽤filezilla这个⼯具将jdk⽂件以及其他⽂件上传到ubuntu操作系统中;⿏标左击选中想要上传的⽂件拖到右边即可,如下所⽰:上传成功之后可以检查⼀下,这⾥默认上传到root⽬录下⾯;显⽰已经上传成功即可;5:上传之后创建⼀个⽂件夹⽤于存放上传的⽂件或者压缩包;记住-C是⼤写,⼩写的-c会报错,见下⾯的测试结果;解压缩之后可以进到⾃⼰创建的hadoop⽬录下⾯看看效果,确定已经解压缩了;6:解压缩jdk之后开始将java添加到环境变量中(ubuntu操作系统中配置jdk的环境变量):进去之后按shift+g到最后⾯,到最前⾯双击g,点击a/s/i这三个任意⼀个字母进⼊命令⾏模式,可以对配置⽂件进⾏修改;配置的⽅式有很多种,这只是其中⼀种。
配置好jdk之后可以测试⼀下是否配置成功,如下图,如果没有使⽤source /etc/profile刷新配置是⽆法测试成功的;使⽤source /etc/profile刷新配置之后查看java的版本即可以查看出来;这⾥出了⼀点⼩插曲,我的linux版本的jdk第⼀次好像不能⽤,报了错,以为没配置好呢,后来才发现是jdk错了,所以这⾥都⼩⼼点;7:开始上传hadoop和解压缩hadoop;上传和上传jdk⼀样的做法,这⾥不做多叙述;查看hadoop的⽬录:hadoop-2.4.1/share/hadoop⾥⾯是核⼼jar包;8:解压缩之后开始配置hadoop,找到如下所⽰的路径;修改如下⼏个配置⽂件;详细修改见如下配置所⽰:修改的第⼀个配置⽂件,hadoop-env.sh;修改的内容如下所⽰:主要修改就是jdk的JAVA_HOME;如果忘记⾃⼰jdk的⽬录可以执⾏命令echo $JAVA_HOME复制⼀下结果即可;修改第⼆个配置⽂件:core-site.xml;修改的内容如下所⽰:因为是伪分布式,所以节点配置直接配置主机名了;<!-- 指定HADOOP所使⽤的⽂件系统schema(URI),HDFS的⽼⼤(NameNode)的地址 --><property><name>fs.defaultFS</name><value>hdfs://master:9000</value></property><!-- 指定hadoop运⾏时产⽣⽂件的存储⽬录 --><property><name>hadoop.tmp.dir</name><value>/home/hadoop/hadoop-2.4.1/tmp</value></property>修改第三个配置⽂件:hdfs-site.xml修改的内容如下所⽰:<!-- 指定HDFS副本的数量 --><property><name>dfs.replication</name><value>1</value></property>修改第四个配置⽂件:⾸先将mapred-site.xml.template修改为mapred.site.xml,然后就将开始修改配置⽂件;修改内容如下所⽰:1 <!-- 指定mr运⾏在yarn上 -->2 <property>3 <name></name>4 <value>yarn</value>5 </property>修改第五个配置⽂件:yarn-site.xml;修改的内容如下所⽰:⾄此配置基本结束;<!-- 指定YARN的⽼⼤(ResourceManager)的地址 --><property><name>yarn.resourcemanager.hostname</name><value>master</value></property><!-- reducer获取数据的⽅式 --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>修改第六个配置⽂件:vi slaves修改的内容即是⾃⼰的主机名称:9:查看⼀下ubuntu下⾯的防⽕墙的状态和关闭开启防⽕墙:下图所⽰分别是关闭防⽕墙,查看防⽕墙的状态,开始防⽕墙和查看防⽕墙的状态;10:为了执⾏hadoop命令⽅便,同样配置⼀下hadoop的环境变量;同样vi /etc/profile ,配置如下所⽰:配置保存之后记得source /etc/profile刷新配置;11:格式化namenode(是对namenode进⾏初始化)执⾏格式化命令后看到successfully表⽰格式化成功;12:启动hadoop,先启动HDFS,sbin/start-dfs.sh;再启动YARN,sbin/start-yarn.sh;启动过程中输出⼤概三次yes和密码;输⼊即可;13:验证是否启动成功,使⽤jps命令验证;查看有⼏个进程;分别是启动start-dfs.sh和start-yarn.sh的效果;14:搭建好伪分布式集群之后可以在window访问集群的web服务;注意:如果在window浏览器⽆法访问的时候(jps正常启动),这个时候估计是linux操作系统的防⽕墙的问题:service iptables stop : 关闭防⽕墙service iptables status : 查看防⽕墙的状态service iptables start : 开启防⽕墙15:简单测试⼀下,将⼀个⽂件上传到hdfs上⾯,如下所⽰:假如你这样书写hadoop fs -put jdk-7u65-linux-i586.tar.gz hdfs://master:9000这个9000后⾯没有这个/那么你在浏览器是看不到任何⽂件的;去web服务查看效果如下所⽰:就是刚刚上传的⽂件;16:将⽂件从hdfs分布式集群中下载下来:效果如下所⽰:17:使⽤hadoop⾃带的mapreduce程序来测试mapreduce的效果:计算圆周率的程序;简单使⽤⼀下mapreduce,以计算单词的个数为例;创建⼀个count.txt⽤于测试⾥⾯的单词重复的次数:因为数据是在集群上⾯跑的,所以⽂件要放到集群上⾯;⾸先需要创建⼀个⽂件夹,⽤于存放⽂件;创建好的⽂件夹可以在web服务器⾥⾯查看,如下所⽰:将新建的count.txt⽂件放到input⽂件夹⾥⾯,如下所⽰:开始使⽤mapreduce的⾃带案例进⾏单词重读测试:可以查询执⾏之后出现的结果:也可以直接去web服务器查看执⾏的结果;可以使⽤命令查看执⾏的结果,如下所⽰:HDFS的⼤体实现的思想:1:hdfs是通过分布式集群来存储⽂件,为客户端提供了⼀个便捷的访问⽅式,就是⼀个虚拟的⽬录结构2:⽂件存储到hdfs集群中去的时候是被切分成block块的3:⽂件的block存放在若⼲台datanode节点上的4:hdfs⽂件系统中的⽂件于真实的block之间有映射关系,由namenode管理5:每⼀个block在集群中会存储多个副本,好处是可以提⾼数据的可靠性,还可以提供访问的吞吐量;18:hdfs常使⽤的命令:1 hadoop fs 显⽰hadoop 的fs的功能 2 hadoop fs -ls / 列举某⽬录下⾯的⽂件夹3 hadoop fs -lsr 列举某⽬录下⾯的⽂件夹及其⽂件夹⾥⾯的⽂件4 hadoop fs -mkdir /user/hadoop 在user⽂件夹下⾯创建⼀个hadoop⽂件夹5 hadoop fs -put a.txt /user/hadoop/ 将a.txt⽂件上传到user⽂件夹下⾯的hadoop⽂件夹下⾯6 hadoop fs -get /user/hadoop/a.txt / 获取到user⽂件夹下⾯的hadoop⽂件夹下⾯的a.txt⽂件7 hadoop fs -cp /原路径 /⽬标路径 拷贝⽂件,从原路径拷贝到⽬标路径 8 hadoop fs -mv /原路径 /⽬标路径 从原路径移动到⽬标路径9 hadoop fs -cat /user/hadoop/a.txt 查看a.txt⽂件⾥⾯的内容10 hadoop fs -rm /user/hadoop/a.txt 删除user⽂件夹下⾯的hadoop⽂件夹下⾯的a.txt⽂件11 hadoop fs -rm -r /user/hadoop/a.txt 递归删除,⽂件夹和⽂件12 hadoop fs -copyFromLocal /本地路径 /⽬的路径 与hadoop fs -put功能类似。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在Ubuntu 上安装Hadoop 教程实践环境:U buntu8.04+jdk1.6+hadoop-0.20.1 ( 三台实体机)机器名IP 作用Ubuntu01 192.168.0.4 NameNode 、master 、jobTrackerUbuntu02 192.168.0.3 DataNode 、slave 、taskTracker1 、安装ubuntu8.04更新源修改2 、安装jdk1.6sudo apt-get install sun-java6-jdk(物理机可能安装不上,直接下载jdk安装jdk-1_5_0_14-linux-i586.bin文件安装# chmod a+x jdk-1_5_0_14-linux-i586.bin ←使当前用户拥有执行权限# ./jdk-1_5_0_14-linux-i586.bin ←选择yes直到安装完毕)安装后,添加如下语句到/etc/profile 中:export JA VA_HOME=/usr/lib/jvm/java-6-sunexport JRE_HOME=/usr/lib/jvm/java-6-sun/jreexport CLASSPATH=.:$JA V A_HOME/lib:$JRE_HOME/lib:$CLASSPATHexport PA TH=$JA V A_HOME/bin:$JRE_HOME/bin:$PA TH注意:每台机器的java 环境最好一致。
安装过程中如有中断,切换为root 权限来安装。
(7 、安装hadoop下载hadoop-0.20.1.tar.gz :$ wget /apache-mirror/hadoop/core/hadoop-0.20.2/hadoop-0.20.2.tar.gz解压:$ tar -zvxf hadoop-0.20.2.tar.gz把Hadoop 的安装路径添加到/etc/profile 中:export HADOOP_HOME=/home/wl826214/hadoop-0.20.2export PA TH=$HADOOP_HOME/bin:$PA TH8 、配置hadoophadoop 的主要配置都在hadoop-0.20. 2 /conf 下。
(1) 在conf/hadoop-env.sh 中配置Java 环境(namenode 与datanode 的配置相同) :$ gedit hadoop-env.sh$ export JA V A_HOME=/usr/lib/jvm/java-6-sun(3) 配置conf/core-site.xml, conf/hdfs-site.xml 及conf/mapred-site.xml( 简单配置,datanode 的配置相同)core-site.xml:<configuration><!--- global properties --><property><name>hadoop.tmp.dir</name><value>/home/wl826214/tmp</value><description>A base for other temporary directories.</description></property><!-- file system properties --><property><name></name><value>hdfs://192.168.0.61:9000</value></property></configuration>hdfs-site.xml :( replication 默认为3 ,如果不修改,datanode 少于三台就会报错) <configuration><property><name>dfs.replication</name><value>1</value></property></configuration>mapred-site.xml:<configuration><property><name>mapred.job.tracker</name><value>192.168.0.61:9001</value></property></configuration>)(4 、开启ssh 服务安装openssh-server :$ sudo apt-get install openssh-server)3 修改机器名:sudo vi /etc/hostname在/etc/hosts 中添加机器名和相应的IP :4 、开启ssh 服务安装openssh-server :$ sudo apt-get install openssh-server5 、建立ssh 无密码登录(1) 在NameNode 上实现无密码登录本机:$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa直接回车,完成后会在~/.ssh/ 生成两个文件:id_dsa 和id_dsa.pub 。
这两个是成对出现,类似钥匙和锁。
再把id_dsa.pub 追加到授权key 里面( 当前并没有authorized_key s文件) :$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 。
完成后可以实现无密码登录本机:$ ssh localhost 。
(2) 实现NameNode 无密码登录其他DataNode :把NameNode 上的id_dsa.pub 文件追加到dataNode 的authorized_keys 内( 以192.168.0.3 节点为例) :a. 拷贝NameNode 的id_dsa.pub 文件:$ scp id_dsa.pub wl826214@192.168.0.191:/home/wl826214/scp -r X user@B_IP:Y(拷整个文件夹)b. 登录192.168.0.3 ,执行$ cat id_dsa.pub >> .ssh/authorized_keys其他的dataNode 执行同样的操作。
注意:如果配置完毕,如果namenode 依然不能访问datanode ,可以修改datanode 的authorized_keys :$ chmod 777 authorized_keys 。
6 、关闭防火墙$ sudo ufw disable注意:这步非常重要。
如果不关闭,会出现找不到datanode 问题。
7 配置每个Datanode无密码登录Namenode(0)原理:Namenode连接datanode时namenode是客户端,需要将namenode上的公钥复制到datanode 上,那么,如果datanode主动连接namenode,datanode是客户端,此时需要将datanode上的公钥信息追加到namenode中的authorized_keys之中。
(此时,由于namenode中已经存在authorized_keys文件,所以这里是追加)。
如果进一步需要datanode之间实现公钥无密码验证,则同样需要相互之间追加公钥信息(1)将各个datanode上的id_rsa.pub追加到namenode的authorized_keys在所有datanode上依次执行如下命令:/.ssh$ scp id_rsa.pub namenode ip地址:/home/zkl/.ssh/datanode ip地址.id_rsa.pub这将datanode上之前产生的公钥id_rsa.pub复制到namenode上的.ssh目录中,并重命名为datanode ip地址.id_rsa.pub,这是为了区分从各个datanode上传过来的公钥。
复制完毕,在namenode上执行以下命令,将每个datanode的公钥信息追加:zkl@zkl-ubuntu:~/.ssh$ cat datanode ip地址.id_rsa.pub >> authorized_keys这样,namenode和datanode之间便可以相互ssh上并不需要密码......注意:整个过程中只涉及到创建密钥,复制公钥,添加公钥内容,没有更改配置文件,实际上配置文件/etc/ssh/sshd_config中开启了公钥验证{ RSAAuthentication yesPubkeyAuthentication yes}(2)SSH配置完毕至此,namenode能无密码验证登陆每个datanode。
每个datanode也能无密码验证SSH登陆到namenode。
8 、安装hadoop下载hadoop-0.20.1.tar.gz :$ wget /apache-mirror/hadoop/core/hadoop-0.20.2/hadoop-0.20.2.tar.gz解压:$ tar -zvxf hadoop-0.20.2.tar.gz把Hadoop 的安装路径添加到/etc/profile 中:export HADOOP_HOME=/home/wl826214/hadoop-0.20.2export PA TH=$HADOOP_HOME/bin:$PATH9 、配置hadoophadoop 的主要配置都在hadoop-0.20. 2 /conf 下。
(1) 在conf/hadoop-env.sh 中配置Java 环境(namenode 与datanode 的配置相同) :$ gedit hadoop-env.sh$ export JA V A_HOME=/usr/lib/jvm/java-6-sun(2) 配置conf/masters 和conf/slaves 文件:( 只在namenode 上配置)(conf/masters文件)192.168.0.77(conf/ slaves文件一行一个)192.168.0.191(3) 配置conf/core-site.xml, conf/hdfs-site.xml 及conf/mapred-site.xml( 简单配置,datanode 的配置相同)core-site.xml:<configuration><!--- global properties --><property><name> hadoop.tmp.dir </name><value> /home/wl826214/tmp </value><description>A base for other temporary directories.</description></property><!-- file system properties --><property><name> </name><value> hdfs://192.168.0.77:9000 </value></property></configuration>hdfs-site.xml :( replication 默认为3 ,如果不修改,datanode 少于三台就会报错) <configuration><property><name> dfs.replication </name><value> 1 </value></property></configuration>mapred-site.xml:<configuration><property><name>mapred.job.tracker</name><value> 192.168.0.77:9001 </value></property></configuration>10 、运行hadoop进入hadoop-0.20.2 ,首先格式化文件系统:$ bin/hadoop namenode -format启动Hadoop :$ start-all.sh用jps 命令查看进程,NameNode 上的结果如下:查看集群状态:$ hadoop dfsadmin -reportH adoop 的web 方式查看:http://192.168.0.4:5007011 、运行wordcount.java 程序(1) 先在本地磁盘建立两个输入文件file01 和file02:$ echo “ Hello World Bye World ” > file01$ echo “ Hello Hadoop Goodbye Hadoop” > file02(2) 在hdfs 中建立一个input 目录:$ hadoop fs -mkdir input(3) 将file01 和file02 拷贝到hdfs 中:$ hadoop fs -copyFromLocal /home/wl826214/file0* input(4) 执行wordcount :$ hadoop jar hadoop-0.20.2-examples.jar wordcount input output(5) 完成之后,查看结果:$ hadoop fs -cat output/part-r-00000进一步设置:1) 检查、/etc/hosts要求本机ip 对应服务器名要求要包含所有的服务器ip + 服务器名2) 检查.ssh/authorized_keys要求包含所有服务器(包括其自身)的public key2:Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-outAnswer:这是reduce预处理阶段shuffle时获取已完成的map的输出失败次数超过上限造成的,上限默认为5。