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>mapreduce.framework.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功能类似。
13 hadoop fs -moveFromLocal localsrc dst         将本地文件上传到hdfs,同时删除本地文件。
14 hadoop fs -chown 用户名:用户组名 /文件名         修改所属的用户和用户组,权限修改
15 hadoop fs -chmod 777 /文件名               文件的权限可读可写可执行的的权限修改
16 hadoop fs -df -h /                    查看根目录下面的磁盘空间,可用和未用等等
17 hadoop fs -du -s -h /                   查看某文件的大小
18 hadoop fs -du -s -h hdfs://主机名:9000/*            查看根目录下面的所有文件的大小 

 未完待续.......

19:免密钥登陆的配置(配置公钥和私钥):如果是伪分布式集群的搭建,那么我这里为了测试克隆了一台ubuntu,如果是分布式集群搭建,那么是三个ubuntu操作系统。所以这里简单演示如何配置免密钥登陆;

(1):master请求登陆slaver1;

(2):查看授权列表;

(3):用master的公钥加密一个随机字符串发送给master;

(4):master用自己的私钥解密slaver1过来的密文;

(5):将解密结果发送给slaver1;

(6):slaver1验证解密结果;

(7):通过master验证;

首先使用vi /etc/hostname(centOs操作系统vim /etc/sysconfig/network)将克隆的主机名修改一下:

接着将vi /etc/hosts里面的域名和主机对应起来,这样就可以进行密码登陆:

两个ubuntu操作的hosts的配置都是如下图所示的:

 修改完之后开始配置密钥,使用命令生成密钥:在master上使用ssh-keygen -t rsa命令之后一直回车即可;注意第一个enter键看一下自己的密钥对保存的路径:我的是/root/.ssh/id_rsa

生成密钥之后找到密钥所在的路径,如下所示:

将密钥rsa.pub拷贝到slaver1的home目录下面的hadoop目录下面:(scp,ssh copy的缩写,远程拷贝文件或者目录)

或者ssh-copy-id 主机名称;这样操作直接将公钥拷贝到目的主机的authorized_keys中;

创建一个authorized_keys(touch authorized_keys创建这个文件)文件并且将权限修改为600之后将密钥添加到这个文件中:使用cat命令将密钥进行追加操作,由于我将master的密钥拷贝到/home/hadoop下面,所以注意路径:

按照上面的操作完成就可以完成master免密钥登陆slaver1主机了;

20:解决伪分布式集群不需要密码解决方法是将自己的公钥加到自己的授权列表里面就可以完成自己登陆自己的免密钥登陆:

上面的操作完成以后,伪分布式集群登陆自己主机就不需要输入密码了:

至此,伪分布式集群搭建彻底结束。

 一个良好的开始会鼓励你更加努力......

时间: 2024-10-29 09:22:31

hadoop伪分布式集群搭建与安装(ubuntu系统)的相关文章

hbase分布式集群搭建

hbase和hadoop一样也分为单机版.伪分布式版和完全分布式集群版本,这篇文件介绍如何搭建完全分布式集群环境搭建. hbase依赖于hadoop环境,搭建habase之前首先需要搭建好hadoop的完全集群环境,因此看这篇文章之前需要先看我的上一篇文章:hadoop分布式集群搭建.本文中没有按照独立的zookeeper,使用了hbase自带的zookeeper. 环境准备 hbase软件包: http://mirror.bit.edu.cn/apache/hbase/1.3.1/hbase-

Hadoop 三台主机 集群搭建 详解(测试)

Hadoop 三台主机 集群搭建 详解 学习更多,请访问系列文章: 1. VMware Redhat网络配置 2. Hadoop 三台主机 集群搭建 详解 3. Windows 下配置 Eclipse 连接 Hadoop 开发环境 部署环境: OS:Redhat 5.5 Enterprise JDK:jdk1.6.0_32 Hadoop:Hadoop-0.20.2 VMWare:7.0 节点安排及网络拓扑: 节点类型 节点IP 节点hostname master节点 192.168.40.5 m

【干货】Apache Hadoop 2.8 完全分布式集群搭建超详细过程,实现NameNode HA、ResourceManager HA高可靠性

最近在自己的笔记本电脑上搭建了Apache Hadoop分布式集群,采用了最新的稳定版本2.8,并配置了NameNode.ResourceManager的HA高可用,方便日常对Hadoop的研究与测试工作.详细的搭建过程如下: 1.安装docker,创建docker容器,用于搭建hadoop节点 docker真是个好东西啊,当要在自己的笔记本上搭建分布式集群时,由于CPU.内存.磁盘有限,无法在VMware上虚拟出太多节点,这时使用docker创建几个容器,就能轻松搭建一个分布式集群了. (1)

MySQL分布式集群搭建

1.准备集群搭建环境 使用6台虚拟机来搭建MySQL分布式集群,相应的实验环境与对应的MySQL节点之间的对应关系如下图所示: 管理节点(MGM):这类节点的作用是管理MySQLCluster内的其他节点,如提供配置数据,并停止节点,运行备份等.由于这类节点负责管理其他节点的配置,应该在启动其他节点之前启动这类节点.MGM节点是用命令"ndb_mgmd"启动的: 数据节点(NDB):这类节点用于保存Cluster的数据,数据节点的数目与副本的数目相关,是片段的倍数.例如,对于两个副本,

Elasticsearch与MongoDB 数据同步及分布式集群搭建

过River可以与多种数据源Wikipedia, MongoDB, CouchDB, RabbitMQ, RSS, Sofa, JDBC, FileSystem,Dropbox等同步,公司的业务是用 MongoDB,今天测试环境虚拟机上配置了一下Elasticsearch 与 MongoDB的同步,作个大概的过程记录,主要利用richardwilly98 / elasticsearch-river-mongodb.River通过读取mongodb的oplog来同步数据,oplog这个表来使集群中

hadoop分布式集群搭建

终于要开始玩大数据了,之前对haoop生态几乎没有太多的了解,现在赶鸭子上架,需要完全使用它来做数据中心,这是我的haoop第一篇文章,以后估计会写很多大数据相关的文章.另外有大数据实践经验的网友请联系我,有问题请教谢谢! Hadoop的搭建有三种方式,单机版适合开发调试:伪分布式版,适合模拟集群学习:完全分布式,生产使用的模式.这篇文件介绍如何搭建完全分布式的hadoop集群,一个主节点,三个数据节点为例来讲解. 基础环境 环境准备 1.软件版本 四台服务器配置,系统:centos6.5.内存

5节点Hadoop分布式集群搭建经验分享

本文章我们使用hadoop2.6.0版本配置Hadoop集群,同时配置NameNode+HA.ResourceManager+HA,并使用zookeeper来管理Hadoop集群. 1.1 写在前面的话 1.2 (一)HDFS概述 1.2.1 基础架构 1.NameNode(Master) 1)命名空间管理:命名空间支持对HDFS中的目录.文件和块做类似文件系统的创建.修改.删除.列表文件和目录等基本操作. 2)块存储管理. 1.2.2 HA架构 从上面的架构图可以看出,使用Active Nam

《Hadoop MapReduce实战手册》一第1章 搭建Hadoop并在集群中运行

第1章 搭建Hadoop并在集群中运行 Hadoop MapReduce实战手册本章将学习以下内容: 在你的机器上安装Hadoop 写WordCountMapReduce示例程序,打包并使用独立的Hadoop运行它 给WordCountMapReduce程序增加combiner步骤 安装HDFS 使用HDFS监控UI HDFS的基本命令行文件操作 在分布式集群环境中设置Hadoop 在分布式集群环境中运行WordCount程序 使用MapReduce监控UI

Spark修炼之道(进阶篇)——Spark入门到精通:第十五节 Kafka 0.8.2.1 集群搭建

作者:周志湖 微信号:zhouzhihubeyond 本节为下一节Kafka与Spark Streaming做铺垫 主要内容 1.kafka 集群搭建 1. kafka 集群搭建 kafka 安装与配置 到下面的地址下载:Scala 2.10 - kafka_2.10-0.8.2.1.tgz http://kafka.apache.org/downloads.html 下载完成后,使用命令 tar -zxvf kafka_2.10-0.8.2.1.tgz 解压,解压后的目录如下 进入config