hdfs安装和配置过程以及hadfs的工作原理(备忘)

Hive配置 远程连接MySQL 因为hive是Hadoop的一个组件,作为数据厂库,hive的数据是存储在Hadoop的文件系统中的,hive为Hadoop提供SQL语句,是Hadoop可以通过SQL语句操作文件系统中的数据。hive是依赖Hadoop而存在的。 因此hive的安装详解,请参考博客:http://blog.youkuaiyun.com/qq_38799155/article/details/77605615在hadfs上创建 阅读详情

在老师的帮助下,折腾了大半天终于把hdfs部署到ubuntu上去了。在这里记录一下各步骤备忘:


在讲步骤之前,先总结一下自己对hadoop的工作你原理的理解:

1.这个分布式系统是通过一个namenode(运行在master上的一个进程)来作为master来统筹管理多个作为slavers的datanode(运行在slavers上的一个进程);

2.master将各slavers的实际物理空间虚拟成一个统一有根的文件系统。

3.对于hdfs管理员,可以通过控制master或slaver主机,再远程登录到master主机,人工手动控制上本地的某个文件传到该虚拟文件系统中,

     如:bin/hadoop fs -put /etc/profile /user/hadoop/first/   (意思是调用bin/hadoop脚本程序将当前所在主机作为client(master或slaver)

     上的etc/profile 文件上传到该虚拟文件系统的    /user/hadoop/first/下面)同理可直接:hadoop fs -mkdir first在该虚拟文件系统上新建first文件夹

4.作为程序员,不用通过ssh服务,可以直接利用hdfs提供的api,直接访问master主机。想上传什么文件,直接上传给master就可以了,而master将

  传来的文件,放在slavers中,不排除将一个大文件切块儿的可能。



部署步骤:

一:安装ssh

1:sudo apt-get install openssh-server openssh-client

     安装ssh远程登录服务,因为SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。

利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。而hadloop就是基于这个协议来实现,分布式统筹管理

export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-i386


2:ssh-keygen -t rsa -P ""

创建ssh-key,~/.ssh目录下(即当前用户的/home/hadoop/ssh)将生成id_rsa  id_rsa.pub  known_hosts三个文件,如果将这三个文件复制到另一台已经安装ssh的主机上,

那么他们之间相互访问就不用每次输入登录密码。

3:cat id_rsa.pub >> authorized_keys

将id_rsa.pub 复制一份到authorized_keys中,将id_rsa.pub追加到authorized_keys授权文件中,开始是没有authorized_keys文件


二:

1:sudo addgroup hadoop

     创建一个名为hadoop的用户组

2:sudo adduser -ingroup hadoop hadoop

      在用户组hadoop中创建一个hadoop用户

3:sudo gedit /etc/sudoers

     给hadoop用户添加权限,打开/etc/sudoers文件;

     在已有的root   ALL=(ALL:ALL)   ALL下

     添加hadoop   ALL=(ALL:ALL)  ALL

     给hadoop用户赋予root用户同样的权限。

4:su - hadoop

切换用户到hadoop



三:下载安装hadoop-1.0.4.tar.gz

1:tar -zxvf  hadoop-1.0.4.tar.gz

解压

2:mv hadoop-1.0.4 hadoop

重命名

3:cp hadoop /usr/local/

并将其复制到/usr/local/目录下


之后就是修改conf下的配置:


 
sudo gedit hadoop /conf/core-site .xml

(1)编辑如下:property后面需要手工敲

 
<? xml version = "1.0" ?>
<? xml-stylesheet type = "text/xsl" href = "configuration.xsl" ?>
                                                                                                               
<!-- Put site-specific property overrides in this file. -->
                                                                                                               
< configuration >
< property >  
   < name >fs.default.name</ name >  
   < value >hdfs://localhost:9000</ value >   
  </ property >  
</ configuration >

(2). 打开conf/mapred-site.xml文件;

 
sudo gedit hadoop /conf/mapred-site .xml

编辑如下property后面需要手工敲:

 
<? xml version = "1.0" ?>
<? xml-stylesheet type = "text/xsl" href = "configuration.xsl" ?>
                                                                                                            
<!-- Put site-specific property overrides in this file. -->
                                                                                                            
     < configuration >  
      < property >   
       < name >mapred.job.tracker</ name >  
       < value >localhost:9001</ value >   
      </ property >  
     </ configuration >

(3). 打开conf/hdfs-site.xml文件;

1
sudo gedit hadoop /conf/hdfs-site .xml

编辑如下:

 
< configuration >
< property >
< name >dfs.name.dir</ name >
< value >/usr/local/hadoop/datalog1,/usr/local/hadoop/datalog2</ value >
</ property >
< property >
< name >dfs.data.dir</ name >
< value >/usr/local/hadoop/data1,/usr/local/hadoop/data2</ value >
</ property >
< property >
< name >dfs.replication</ name >
< value >2</ value >
</ property >
</ configuration >

(4). 作为单机版环境,只需在hadoop/conf/masters
和hadoop/conf/slavers中填写localhost 就Ok了

打开conf/masters文件,添加作为secondarynamenode的主机名,

(5) 如果是将本主机做master,也只需要在hadoop/conf/masters中添加localhost

而hadoop/conf/slaves中添加作为slaver的:主机名(可以不用加“@用户名”)

对于slavers上(老师说这个是不需要的):也只需要在hadoop/conf/masters中添加前面那台master主机的:主机名

而hadoop/conf/slaves中和前面master的那台一样


四:安装jdk

1:sudo apt-get install openjdk-7-jdk
安装java编译环境

2:配置JAVA_HOME环境变量

首先确定的是java默认安装位置为:/usr/lib/jvm/java-1.6.0-openjdk-i386

方案一:

(1):在~/.bashrc里面添加

export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-i386                 
#export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

之后退出,在终端运行source bashrc可使得刚修改的环境变量立即生效


(2)之后在解压后的hadoop(原名为:hadoop-1.0.4)文件夹下的conf下,找到hadoop-env.sh文件,在里面添加

export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-i386

就可以将JAVA_HOME设为hadoop可识别的单位变量

方案二:

(1):在/etc/profile里面添加export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-i386

即将所有用户的环境变量中添加一个JAVA_HOME变量


(2)之后在解压后的hadoop(原名为:hadoop-1.0.4)文件夹下的conf下,找到hadoop-env.sh文件,在里面添加

export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-i386

就可以将JAVA_HOME设为hadoop可识别的单位变量


五:运行hadoop

1:cd /usr/local/hadoop/
跳转到/usr/local/hadoop/目录下
2:bin /hadoop namenode  - format
格式化namenode文件系统

3: 当你看到下图时,就说明你的hdfs文件系统格式化成功了。


4: 启动bin/start-all.sh

bin /start-all .sh

5. 检测hadoop是否启动成功

(1):
jps
列出正在运行的java程序


千万要注意这里,我使用这个命令只能看到jps自己的进程,纠结了很长时间,忽然发现得用 sudo jps果然能出现6个进程,坑爹啊,大家千万要注意。

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

如下图:

 (2):kill -9 2748

可以直接杀死NameNode进程

(3):

然后可以通过firefox浏览器查看,使用http://localhost:50030/

这个网页显示的是正在运行的任务

如果看到下面激动人心的画面,就说明你成功了。

localhost Hadoop Map/Reduce Administration

State: RUNNING
Started: Fri Apr 12 17:51:46 CST 2013
Version: 1.0.4, r1393290
Compiled: Wed Oct 3 05:13:58 UTC 2012 by hortonfo
Identifier: 201304121751

Cluster Summary (Heap Size is 15.5 MB/966.69 MB)

Running Map TasksRunning Reduce TasksTotal SubmissionsNodesOccupied Map SlotsOccupied Reduce SlotsReserved Map SlotsReserved Reduce SlotsMap Task CapacityReduce Task CapacityAvg. Tasks/NodeBlacklisted NodesGraylisted NodesExcluded Nodes
00010000224.00000


Scheduling Information

Queue NameStateScheduling Information
defaultrunningN/A

Filter (Jobid, Priority, User, Name)
Example: 'user:smith 3200' will filter by 'smith' only in the user field and '3200' in all fields

Running Jobs

none

Retired Jobs

none

Local Logs

Log directory, Job Tracker History
This is Apache Hadoop release 1.0.4

 

然后可以通过firefox浏览器查看,使用http://localhost:50070/

这个页面显示的是涉及的数据


NameNode 'localhost:9000'

Started:Sun Apr 21 21:58:20 CST 2013
Version:1.0.4, r1393290
Compiled:Wed Oct 3 05:13:58 UTC 2012 by hortonfo
Upgrades:There are no upgrades in progress.

Browse the filesystem
Namenode Logs

Cluster Summary

10 files and directories, 2 blocks = 12 total. Heap Size is 31.57 MB / 966.69 MB (3%) 
Configured Capacity:119.49 GB
DFS Used:76 KB
Non DFS Used:21.59 GB
DFS Remaining:97.9 GB
DFS Used%:0 %
DFS Remaining%:81.93 %
Live Nodes:1
Dead Nodes:0
Decommissioning Nodes:0
Number of Under-Replicated Blocks:2


NameNode Storage:

Storage DirectoryTypeState
/usr/local/hadoop/datalog1IMAGE_AND_EDITSActive
/usr/local/hadoop/datalog2IMAGE_AND_EDITSActive


This is  Apache Hadoop  release 1.0.4

(5):bin/stop-all.sh

结束hadoop服务






WebRTC Qos优化杂记 本文是笔者对WebRTC Qos性能研究、优化的一些思考,希望对有兴趣的读者有一些启发。 阅读详情

相关推荐

[记录一个bug]av_hwdevice_ctx_create出现Cannot allocate memory(附带库运行时路径)[已解决]

新写的程序里调用ffmpeg的av_hwdevice_ctx_create()这个函数,出现Cannot allocate memory。但是另个程序一样的代码,居然是成功的。 反复检查之后无果,就跳出去查了一下,看到一个问答: Have you tried to use ffmpg executables with the same libs that you using when you run the app? Have you tried to use ffmpg executables

熊猫Ben的博客 3586

HDFS安装、配置以及基本使用

HDFS是一个分布式文件系统,安装完成之后使用起来类似于本地文件系统,但是它是一个网络文件系统,所以访问这种文件系统的方式和访问本地文件系统的方式还是有所差别的(本地文件系统的方式是基于系统调用的,当然也有类似NFS这样的网络文件系统可以使用和本地文件系统相同的访问方式,那是因为已经在内核中安装了NFS,而HDFS只是一个应用层的服务程序罢了)。但是这些命令看上去还是和常用的shell命令很类似的

Hello World 1万+

SBM与超效率SBM模型实战:从原始面板数据到MATLAB高效实现

本文详细介绍了SBM模型与超效率SBM模型的核心原理,并提供了从原始面板数据预处理到MATLAB高效实现的完整实战指南。通过具体代码解析,帮助研究者掌握如何利用MATLAB进行数据标准化、模型构建、效率求解及结果可视化,从而精准评估决策单元的相对效率,尤其适用于在高效单元中进一步精细排名的场景。

weixin_29100399的博客 480

Hadoop-HDFS安装及分布式集群搭建详解

本文介绍了如何在Linux环境下安装Hadoop HDFS,并进行了简单的单节点和多节点分布式集群搭建。通过配置Hadoop的核心文件、格式化NameNode、启动HDFS集群,我们可以顺利搭建一个高可用、高容错的HDFS分布式文件系统。HDFS是Hadoop生态系统的基石,熟练掌握其安装及配置是大数据处理的基础。

m0_70691645的博客 3438

CH582低功耗实战:从1.2mA降到5uA,我的蓝牙广播功耗优化笔记

本文详细记录了沁恒CH582蓝牙芯片从1.2mA降至5μA的功耗优化全过程。通过建立基准测试环境、分层排查软件配置与IO状态、精细调优射频参数以及硬件层面的电源管理,实现了极致的低功耗表现。文章还提供了实用的功耗测量方法和典型问题排查指南,为蓝牙设备开发者提供了宝贵的参考经验。

weixin_30368405的博客 572

大模型-CLIP 详细介绍

最先进的计算机视觉系统通常被训练来预测一组预定义的对象类别。这种受限的监督形式限制了它们的通用性和可用性,因为要指定任何其他视觉概念,就需要额外的标注数据。比如,它们可以识别“猫”、“狗”、“汽车”等。但是,这种做法有一个明显的局限性:如果你想让系统识别一个新的类别,比如说“独角兽”,你就必须提供大量带有“独角兽”标签的图片来训练系统。这不仅耗时费力,而且限制了系统的灵活性和广泛适用性。直接从原始文本中学习关于图像的信息是一种很有前途的替代方案,因为它利用了更广泛的监督来源。

晓的博客 9719

hdfs安装

/查看是否有(openssh-server + openssh-clients + openssh)这些yum安装包。//将会生成~/.ssh文件夹,里面有id_rsa(私钥) 和 id_rsa.pub(公钥)2个文件。//将会生成~/.ssh文件夹,里面有id_rsa(私钥) 和 id_rsa.pub(公钥)2个文件。//将会生成~/.ssh文件夹,里面有id_rsa(私钥) 和 id_rsa.pub(公钥)2个文件。4. 追加公钥到~/.ssh/authorized_keys文件中。

weixin_53589204的博客 1075

手把手教你用Xilinx Ultrascale+ FPGA解串12-bit ADC的LVDS信号(附Verilog代码)

本文详细介绍了如何使用Xilinx Ultrascale+ FPGA解串12-bit ADC的LVDS信号,涵盖硬件设计、时钟域处理和数据对齐等关键技术。通过Verilog代码实例和调试技巧,帮助工程师解决高速数据采集中的核心挑战,提升系统稳定性和性能。

weixin_42522964的博客 373

大数据开源框架环境搭建(四)——HDFS完全分布式集群的安装部署

普通用户下大部分命令需要加sudo,root模式下不用。如果怕麻烦,直接在root用户下操作。本框架的分布式集群如下图所示(IP地址不一定跟图中一样)

木子一个Lee的博客 4514

DAC8568 Controller

DAC8568 ControllerDAC8568 简介串行接口三级目录 DAC8568 简介 PIN Description Name Description LDAC‾\overline{LDAC}LDAC load DACs SYNC‾\overline{SYNC}SYNC 低电平有效,电平触发控制, 该输入为输入数据的帧同步信号. 当SYNC为低,使能DAC内输入移位寄存器,并在随后的所有时钟沿采样数据。 在第32个时钟之后,DAC更新输出。 若不到32个时钟SYNC被置高(即

u010170039的博客 5130

2025年数学建模国赛高教社杯A题、B题、C题、D题、E题详细思路和代码 模型||插值与拟合

核心思想:构造一个精确通过所有已知离散数据点(xi, yi)的函数y = f(x),并以此函数来估算或预测未知点的值。基本假设:我们认为已知的数据点是100%精确、无误差的(或者误差可忽略不计),比如理论计算值、高精度仪器测量值等。我们的目标是“还原”或“重建”出点与点之间的真实函数关系。关键特征精确性:曲线或曲面必须穿过每一个样本点。局部性:插值结果严重依赖于局部数据点的分布和数值。用途:用于“补全”数据、填充缺失值、进行函数近似等。常见方法多项式插值:拉格朗日插值、牛顿插值。

2201_76125261的博客 802

大数据技术之Hadoop:HDFS集群安装篇(三)

此为个人学习笔记,包含个人归纳总结以及结合了对网络资源的整理,初衷是为了自己复习巩固。如果能帮到各位是我的荣幸!该总结参考了黑马教程,感兴趣的也可以去观看相关视频。

路漫漫其修远兮,吾将上下而求索 3970

Vue3 - 超详细最新 wangEditor V5 富文本编辑器安装引入及使用教程,提供工具栏配置、基础富文本功能、API使用示例教程等(新手小白快速引入并植入到项目中)

vue3,wangEditorv5富文本编辑器,wangEditorv5官方文档,vue3最新安装wangEditorv5富文本详细使用教程,vue3使用wangEditorv5编辑器示例代码,vue3网站网页安装植入富文本编辑器教程,vue3wangEditor使用api,vue3安装富文本控制台出现报错如何解决,vue3wangEditor-v5工具栏配置,vue3中使用富文本编译器wangEditor5的方法,wangeditor5在vue3中的全使用过程,vue3超详细最新wangedi

🏆 前端领域优质创作者 4253

HDFS介绍

1 HDFS 介绍 Hadoop Distributed File System 运行在普通廉价的机器上 2 HDFS 架构 一个Master(NameNode) 配 多个 slaves(DataNode) 一个文件会被拆分成多个 Block,blocksize:128M 2.1 NameNode 客户端请求响应 元数据(文件的名字,副本,Block存放的DataNode地址)管理 s...

一角残叶的博客 641

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

0202hdfs的shell操作-hadoop-大数据学习

0202hdfs的shell操作-hadoop-大数据学习

gaogzhen的博客 979

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

hadoop的安装入门(hdfs)

HADOOP介绍1.简介请百度。2.HADOOP1.x和2.x的区别为什么先写和区别,是我个人是看着1.2的学习视频,使用的却是2.5的版本,有好多的不一样,我暂时遇到的先在这里做个总结(有个博客总结的蛮多的,先贴个链接:https://www.cnblogs.com/notepencil/p/7444609.html?utm_source=debugrun&amp;utm_medium=refe...

fineday_everyday 1509

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

【hadoop】windows上hadoop环境的搭建步骤

在大数据开发领域中,不得不说说传统经典的hadoop基础计算框架。一般我们都会将hadoop集群部署在服务器上,但是作为一个资深搬砖人,我们本地环境也需要一个开发hadoop的开发环境。那么,今天就安排一个在windows上搭建一个hadoop环境。

勤于笔记,成于点滴。 5188

HDFS HA补充

HDFS HA补充 #hadoop HDFS HA命令 hdfs dfsadmin -report 报告集群情况 hdfs haadmin -getServiceState nn2 查看NameNode2 是active还是standby hdfs hasdmin -transitionToActive --forcemanual nn2 手动将nn2 转为active 会报告nn1 is alr...

赵炳泉的博客 305

分布式存储系统-HDFS

HDFS作为分布式文件管理系统,Hadoop的基础。HDFS体系结构包括:NameNode、DataNode、SecondaryNameNode。Hadoop shell上传的文件是存放在DataNode的block中,通过linux shell只能看到block,不能看到文件。 以下是本章的重点: 分布式文件系统与HDFS HDFS体系结构与基本概念 HDFS的shell操...

weixin_30340745的博客 204

datax mysql to hdfs_DataX实现HDFS与MySQL其间数据同步_mysql

DataX实现HDFS与mysql之间数据同步本案例仅适用于HDFS与MySQL之间的数据同步实现。1、 在编译安装之前注意将release下面的setSharePath方法中的路径改为你自己的安装路径,笔者的为/home/woody/datax/libs.2、 rpm打包之前,要修改*.spec文件中的路径,dataxpath,此外可能还需要注解掉部分赋值文件的代码,如cp –r ${OL...

weixin_26969269的博客 442

认识HDFS分布式文件系统

http://www.cnblogs.com/wxquare/p/4846438.html 1.设计基础目标   (1) 错误是常态,需要使用数据冗余    (2)流式数据访问。数据批量读而不是随机速写,不支持OLTP,hadoop擅长数据分析而不是事物处理。    (3)文件采用一次性写多次读的模型,文件一旦写入就无法修改。所以一致性模型非常简单。   

happylzs2008的专栏 329

(五)Hadoop HA高可用集群的配置-Hadoop HA集群模式的安装

目录 一、目的及要求: 实验目的: 实验要求: 二、环境要求: 集群规划: 三、具体步骤: 项目一:Hadoop的基本安装配置 项目二:Hadoop高可用完全分布模式配置 项目三:同步安装和配置 项目四:Hadoop高可用完全分布模式格式化和启动 四、可能遇到的问题: HA的架构 Hadoop HA 即Hadoop的高可用,不同于普通的namenode+s...

T.machine的博客 3837

0201hdfs集群部署-hadoop-大数据学习

0201hdfs集群部署-hadoop-大数据学习

gaogzhen的博客 624

记Hadoop伪分布式安装过程中出现的问题

1、 在执行start-dfs.sh后hdfs也顺利启起来了,名称节点、数据节点、第二名称节点也都启起来了,就是每次启动一个节点时都会报一个command not found 的错误(可恶心),这个错误也并不影响hdfs的使用,去网上查了好多都每有这个错误解决的办法,后来直接查axport: command not found,参考了Linux下无论输入什么命令都提示“-bash: Export:...

大C的博客 973

hadoop基础(五)—hadoop各组件配置和启动

hadoop配置文件 默认配置(相对应的jar) core-defaut.xml 配置fs.trash 垃圾回收机制 hdfs-defaut.xml yarn-defaut.xml mapred-defaut.xml 自定义配置($HADOOP_HOME/etc/hadoop) core-site.xml hdfs-site.xml yarn-site.xml mapred-si...

牧码心 527
上一篇: hadoop在ubuntu下的安装配
下一篇: C++运算符+,+=,<<,=重载范列
SprintfWater
博客等级 码龄15年 242粉丝 139原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值