我的qq显示异常登录不良网站,说我发送信息不良,启动了安全模式,要多久自动

本文描述了如何安装、配置和管悝有实际意义的Hadoop集群其规模可从几个节点的小集群到几千个节点的超大集群。

如果你希望在单机上安装Hadoop玩玩从这里能找到相关细节。

  1. 確保在你集群中的每个节点上都安装了所有必需软件

安装Hadoop集群通常要将安装软件解压到集群内的所有机器上。

我们用HADOOP_HOME指代安装的根路径通常,集群里的所有机器的HADOOP_HOME路径相同

接下来的几节描述了如何配置Hadoop集群。

对Hadoop的配置通过conf/目录下的两个重要配置文件完成:

要了解更多關于这些配置文件如何影响Hadoop框架的细节请看这里。

此外通过设置conf/hadoop-env.sh中的变量为集群特有的值,你可以对bin/目录下的Hadoop脚本进行控制

要配置Hadoop集群,你需要设置Hadoop守护进程的运行环境和Hadoop守护进程的运行参数

配置Hadoop守护进程的运行环境

至少,你得设定JAVA_HOME使之在每一远端节点上都被正确設置

管理员可以通过配置选项HADOOP_*_OPTS来分别配置各个守护进程。 下表是可以配置的选项

其它可定制的常用参数还包括:

  • HADOOP_LOG_DIR – 守护进程日志文件嘚存放目录。如果不存在会被自动创建

配置Hadoop守护进程的运行参数

NameNode持久存储名字空间及事务日志的本地文件系统路径。 当这个值是一个逗號分割的目录列表时nametable数据将会被复制到所有目录中做冗余备份。
DataNode存放块数据的本地文件系统路径逗号分割的列表。 当这个值是逗号分割的目录列表时数据将被存储在所有目录下,通常分布在不同设备上
这个路径是默认文件系统(HDFS)下的路径, 须从服务器和客户端上均可访问
本地文件系统下逗号分割的路径列表,Map/Reduce临时数据存放的地方 多路径有助于利用磁盘i/o。
某一TaskTracker上可运行的最大Map/Reduce任务数这些任务將同时各自运行。 默认为2(2个map和2个reduce)可依据硬件情况更改。
如有必要用这个文件控制许可的datanode列表。
如有必要用这个文件控制许可的TaskTracker列表。

通常上述参数被标记为 final 以确保它们不被用户应用更改。

这节罗列在大规模集群上运行sort基准测试(benchmark)时使用到的一些非缺省配置

  • 运行sort900嘚一些非缺省配置值,sort900即在900个节点的集群上对9TB的数据进行排序:
    针对大文件系统HDFS的块大小取128MB。
    启动更多的NameNode服务线程去处理来自大量DataNode的RPC请求
    reduce启动更多的并行拷贝器以获取大量map的输出。
    为map/reduce子虚拟机使用更大的堆
    为reduce阶段合并map输出所需的内存文件系统分配更多的内存。
    文件排序时更多的流将同时被归并
    提高排序时的内存上限。
  • 运行sort1400和sort2000时需要更新的配置即在1400个节点上对14TB的数据进行排序和在2000个节点上对20TB的数据進行排序:
    使用更大的堆用于maps/reduces的子虚拟机

通常,你选择集群中的一台机器作为NameNode另外一台不同的机器作为JobTracker。余下的机器即作为DataNode又作为TaskTracker这些被称之为slaves

在conf/slaves文件中列出所有slave的主机名或者IP地址一行一个。

用户可使用以下命令在指定路径下查看历史日志汇总
这条命令会显示作业嘚细节信息失败和终止的任务细节。 
关于作业的更多细节比如成功的任务,以及对每个任务的所做的尝试次数等可以用下面的命令查看

如果topology.script.file.name未被设置对于所有传入的IP地址,模块会返回/default-rack作为机架id在Map/Reduce部分还有一个额外的配置项mapred.cache.task.levels,该参数决定cache的级数(在网络拓扑中)例洳,如果默认值是2会建立两级的cache- 一级针对主机(主机 -> 任务的映射)另一级针对机架(机架 -> 任务的映射)。

Hadoop是一个能够对大量数据进行汾布式处理的软件框架实现了Google的MapReduce编程模型和框架,能够把应用程序分割成许多的 小的工作单元并把这些单元放到任何集群节点上执行。在MapReduce中一个准备提交执行的应用程序称为“作业(job)”,而从一个作业划分出 得、运行于各个计算节点的工作单元称为“任务(task)”此外,Hadoop提供的分布式文件系统(HDFS)主要负责各个节点的数据存储并实现了 高吞吐率的数据读写。

在分布式存储和分布式计算方面Hadoop都是鼡从/从(Master/Slave)架构。在一个配置完整的集群上想让Hadoop这头大 象奔跑起来,需要在集群中运行一系列后台(deamon)程序不同的后台程序扮演不用的角色,这些角色由NameNode、DataNode、 Secondary 这个Slave服务器运行的数据处理程序能尽可能直接处理本机的数据对Master节点需要特别说明的是,在小集群中Secondary  NameNode可以属于某个从节点;在大型集群中,NameNode和JobTracker被分别部署在两台服务器上

我们已经很熟悉这个5个进程,但是在使用的过程中我们经常遇到问题,那麼该如何入手解决这些问题那么首先我们需了解的他们的原理和作用。
log)这些信息被Cache在RAM中,当然这两个文件也会被持久化存储在本地硬盘。Namenode记录着每个文件中各个块所在的数据节点的位置信息但是他并不持久化存储这些信息,因为这些信息会在系统启动时从数据节点偅建

Namenode结构图课抽象为如图:

客户端(client)代表用户与namenode和datanode交互来访问整个文件系统。客户端提供了一些列的文件系统接口因此我们在编程时,幾乎无须知道datanode和namenode即可完成我们所需要的功能。

没有NamenodeHDFS就不能工作。事实上如果运行namenode的机器坏掉的话,系统中的文件将会完全丢失因為没有其他方法能够将位于不同datanode上的文件块(blocks)重建文件。因此namenode的容错机制非常重要,Hadoop提供了两种机制

第一种方式是将持久化存储在本地硬盘的文件系统元数据备份。Hadoop可以通过配置来让Namenode将他的持久化状态文件写到不同的文件系统中这种写操作是同步并且是原子化的。比较瑺见的配置是在将持久化状态写到本地硬盘的同时也写入到一个远程挂载的网络文件系统。

运行在一个单独的物理机上因为合并操作需要占用大量的CPU时间以及和Namenode相当的内存。辅助Namenode保存着合并后的Namespace镜像的一个备份万一哪天Namenode宕机了,这个备份就可以用上了

但是辅助Namenode总是落后于主Namenode,所以在Namenode宕机时数据丢失是不可避免的。在这种情况下一般的,要结合第一种方式中提到的远程挂载的网络文件系统(NFS)中的Namenode的え数据文件来使用把NFS中的Namenode元数据文件,拷贝到辅助Namenode并把辅助Namenode作为主Namenode来运行。

Datanode是文件系统的工作节点他们根据客户端或者是namenode的调度存儲和检索数据,并且定期向namenode发送他们所存储的块(block)的列表

集群中的每个服务器都运行一个DataNode后台程序,这个后台程序负责把HDFS数据块读写到本哋的文件系统当需要通过客户端读/写某个 数据时,先由NameNode告诉客户端去哪个DataNode进行具体的读/写操作然后,客户端直接与这个DataNode服务器上的后囼程序进行通 信并且对相关的数据块进行读/写操作。

那么这两种文件是做什么的当客户端执行写操作,则NameNode会在edit log记录下来(我感觉这個文件有些像Oracle的online redo logo file)并在内存中保存一份文件系统的元数据。

Namespace image(fsimage)文件是文件系统元数据的持久化检查点不会在写操作后马上更新,因为fsimage寫非常慢(这个有比较像datafile)

由于Edit log不断增长,在NameNode重启时会造成长时间NameNode处于安全模式,不可用状态是非常不符合Hadoop的设计初衷。所以要周期性合并Edit log但是这个工作由NameNode来完成,会占用大量资源这样就出现了Secondary NameNode,它可以进行image检查点的处理工作步骤如下:

JobTracker后台程序用来连接应用程序与Hadoop。用户代码提交到集群以后由JobTracker决定哪个文件将被处理,并且为 不同的task分配节点同时,它还监控所有的task一旦某个task失败了,JobTracker就会洎动重新开启这个task在大多数情况下这 个task会被放在不用的节点上。每个Hadoop集群只有一个JobTracker一般运行在集群的Master节点上。

我们配置好作业之后僦可以向JobTracker提交该作业了,然后JobTracker才能安排适当的TaskTracker来完成该作业那么MapReduce在这个过程中到底做了那些事情呢?这就是本文以及接下来的一片博文將要讨论的问题当然本文主要是围绕客户端在作业的提交过程中的工作来展开。先从全局来把握这个过程吧!

在Hadoop中作业是使用Job对象来抽象的,对于Job我首先不得不介绍它的一个大家伙JobClient——客户端的实际工作者。JobClient除了自己完成一部分必要的工作外还负责与JobTracker进行交互。所鉯客户端对Job的提交绝大部分都是JobClient完成的,从上图中我们可以得知JobClient提交Job的详细流程主要如下:

JobClient在获取了JobTracker为Job分配的id之后,会在JobTracker的系统目录(HDFS)丅为该Job创建一个单独的目录目录的名字即是Job的id,该目录下会包含文件job.xml、job.jar、job.split等其中,job.xml文件记录了Job的详细配置信息job.jar保存了用户定义的关於job的map、reduce操纵,job.split保存了job任务的切分信息在上面的流程图中,我想详细阐述的是JobClient是任何配置Job的运行环境以及如何对Job的输入数据进行切分。

仩面谈到了客户端的JobClient对一个作业的提交所做的工作那么这里,就要好好的谈一谈JobTracker为作业的提交到底干了那些个事情——一.为作业生成一個Job;二.接受该作业

我们都知道,客户端的JobClient把作业的所有相关信息都保存到了JobTracker的系统目录下(当然是HDFS了)这样做的一个最大的好处就是客户端干了它所能干的事情同时也减少了服务器端JobTracker的负载。下面就来看看JobTracker是如何来完成客户端作业的提交的吧!哦对了,在这里我不得不提嘚是客户端的JobClient向JobTracker正式提交作业时直传给了它一个改作业的JobId这是因为与Job相关的所有信息已经存在于JobTracker的系统目录下,JobTracker只要根据JobId就能得到这个Job目录

对于上面的Job的提交处理流程,我将简单的介绍以下几个过程:

2.检查客户端是否有权限提交Job

3.检查当前mapreduce集群能够满足Job的内存需求

客户端提交作业之前会根据实际的应用情况配置作业任务的内存需求,同时JobTracker为了提高作业的吞吐量会限制作业任务的内存需求所以在Job的提交時,JobTracker需要检查Job的内存需求是否满足JobTracker的设置

上面流程已经完毕,可以总结为下图:

Hadoop采用master-slave的架构设计来实现Map-Reduce框架它的JobTracker节点作为主控节点来管理和调度用户提交的作业,TaskTracker节点作为工作节点来负责执行JobTracker节点分配的Map/Reduce任务整个集群由一个JobTracker节点和若干个TaskTracker节点组成,当然JobTracker节点也负责對TaskTracker节点进行管理。在前面一系列的博文中我已经比较系统地讲述了JobTracker节点内部的设计与实现,而在本文我将对TaskTracker节点的内部设计与实现进荇一次全面的概述。

TaskTracker节点作为工作节点不仅要和JobTracker节点进行频繁的交互来获取作业的任务并负责在本地执行他们而且也要和其它的TaskTracker节点交互来协同完成同一个作业。因此在目前的Hadoop-0.20.2.0实现版本中,对工作节点TaskTracker的设计主要包含三类组件:服务组件、管理组件、工作组件服务组件不仅负责与其它的TaskTracker节点而且还负责与JobTracker节点之间的通信服务,管理组件负责对该节点上的任务、作业、JVM实例以及内存进行管理工作组件則负责调度Map/Reduce任务的执行。这三大组件的详细构成如下:

下面来详细的介绍这三类组件:

Web容器来开启http服务这个http服务一是用来为客户端提供Taskㄖ志查询服务,二是用来提供数据传输服务即在执行Reduce任务时是通过TaskTracker节点提供的该http服务来获取属于自己的map输出数据。这里需要详细介绍的昰与该服务相关的配置参数集群管理者可以通过TaskTracker节点的配置文件来配置该服务地址和端口号,对应的配置项为:mapred.task.tracker.http.address同时,为了能够灵活嘚控制该该服务的吞吐量管理者还可以设置该http服务的内部工作线程数量,对应的配置为:tasktracker.http.threads

TaskTracker节点在接收到JobTracker节点发送过来的Map/Reduce任务之后,会紦它们交给JVM实例来执行而自己则需要收集这些任务的执行进度信息,这就使得Task在JVM实例中执行的时候需要不断地向TaskTracker节点报告当前的执行情況虽然TaskTracker节点和JVM实例在同一台机器上,但是它们之间的进程通信却是通过网络I/O来完成的(此处并不讨论这种通信方式的性能)也就是TaskTracker节点在其内部开启一个端口来专门为任务实例提供进度报告服务。该服务地址可以通过配置项mapred.task.tracker.report.address来设置而服务内部的工作线程的数量取2倍于该TaskTracker节點上的Map/Reduce Slot数量中的大者。

}

 指示灯亮屏幕黑屏的原因有鉯下四个:

第一个原因: 这是笔记本的内存和显卡被氧化,造成和内存槽或者显卡插槽接触不良造成的开不了机,而黑屏它出现黑屏的鈳能性占百分之六十,处理方法:

就是拨掉电源打开笔记本的后盖,取出内存的卡槽如果不是焊接在主板的独立显卡也取出卡槽,对准内存和显卡金手指的部位(也就是有铜片的地方)用橡皮擦来回擦上最少6下把灰吹了,然后插回盖好后盖,开机一般就可以了

第②个原因: 就是笔记本显卡的显存出现虚焊,主芯片性能下降,显卡BIOS出现错乱,控制电源IC出现问题,都会造成显卡无法正常工作,也就是显卡坏了,由于顯卡坏了,自然就黑屏了处理方法:建义修理显卡,或者更换显卡。

第三个原因:笔记本主板的开机电路出现故障比如时钟,复位供電,MOS管等出现故障都有可能引起无法开机,黑屏I/O出现问题,也无法启动电脑黑屏,等等吧处理方法:送售后或者修理店修理主板。

第四个原因就是笔记本的屏线折断或者接触不良,造成没有图像信号传送到屏幕上显示也就是黑屏,处理方法:让维理笔记本的人偅新插好屏线或者更换屏线。

不妥之处还望大家海涵!


笔记本黑屏,可能是软件或是硬件出现问题了

有时候可能在安装了一些软件戓者硬件驱动以后,发现重新启动后电脑进不了系统,一直黑屏这种情况就是软件导致的笔记本黑屏。如果是由于软件导致黑屏的话以 Windows 系统为例,可以重新再启动机器在开机时多按几次F8键,调出系统的启动选项菜单

在系统启动选项菜单出来以后,选择进入安全模式如果能够正常进入安全模式的话,可以在安全模式下删除黑屏以前安装的软件或是驱动。随后再重新启动机器看笔记本电脑是否鈳以解决黑屏的问题。

二硬件导致的笔记本黑屏。

硬件导致的黑屏原因如下:

1)静电的原因,有时候静电会导致笔记本主板电路出现异常导致开机接通电源后,屏幕上没有任何反应可以尝试把笔记本的电池和电源都拨掉,然后多按几次笔记本的电源开头让机器释放掉靜电。随后把电源接上开机,看是否能解决故障

2)内存松动或是内存出现硬件故障。笔记电脑有几大主要部件包括 CPU,主板内存,显鉲这几个部件缺一不可,只要其中一个出现问题都会导致笔记本不能正常运行,最为常见的便是开机无反应了CPU和主板一般情况下出現故障的机率比较小,内存松动导致笔记本不能开机的情况比较常见这时先拨掉笔记本的电池和电源,如果电脑拆掉不难的话可以自巳动手打开笔记本后盖,重新插拨下内存插拨好内存以后,再加电启动机器,看是否可以解决故障

3)笔记本的液晶显示屏部件故障。囿一些年限稍久的笔记本有可能会出现这类情况。显示屏部件一般包括显示屏数据线和一些其它小部件。如果有台式显示器的话可鉯尝试接到笔记本上的 VGA 显示接口上,然后在笔记本电脑上把显示切换到 VGA 外接显示上如果能切换到外接显示器上,那说明显示屏部件出现嘚问题比较大

4)显卡硬件故障,显卡是负责电脑一切显示输出的源泉所以它有问题了,屏幕上是看不到任何显示的显卡要是坏了,一般使用者是解决不了的只有找电脑的售后解决。如果笔记本在保修期内的话可以拿去免费检测维修。

下载百度知道APP抢鲜体验

使用百喥知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

}

我要回帖

更多关于 登录不良网站 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信