Author Archive: 香蕉与打火机

About 香蕉与打火机

李小蕉!

使用TOP查看内存占用情况

可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:
$ top -u oracle

内容解释:

  PID:进程的ID
USER:进程所有者
PR:进程的优先级别,越小越优先被执行
NInice:值
VIRT:进程占用的虚拟内存
RES:进程占用的物理内存
SHR:进程使用的共享内存
S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
%CPU:进程占用CPU的使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
COMMAND:进程启动命令名称

原文:http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.html

 

 

rhel 绑定双网卡主备

百度知道:http://jingyan.baidu.com/album/25648fc1a2cbc99190fd007a.html?picindex=1

一、新建bond文件

/etc/sysconfig/network-scripts/ifcfg-bond0

配上网络,以后的网络出入都走这个。

mode=1指主备,0则为负载均衡。

miimon=100的意思就是,每100毫秒检测网卡和交换机之间是否连通,如不通则使用另外的链路

二、修改网卡文件

物理网卡配置到bond上。

/etc/sysconfig/network-scripts/ifcfg-eth0

同理另一块网卡

/etc/sysconfig/network-scripts/ifcfg-eth1

三、修改/etc/modprobe.d/dist.conf

添加以下行

 

运行

四、重启网络

 

 

vmware 使用powercli为数据中心添加主机

1.首先安装powercli程序

可以直接官网下载

2.获取命令行内帮助的方法

3.连接vCenter并添加主机

4.附add-vmhost的help

 

 

 

hdfs 基本操作命令

官网文档:http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-common/FileSystemShell.html

hadoop fs –ls / 列出当前目录有哪些子目录,有哪些文件。

hadoop fs –mkidr /test 在Hadoop文件系统当中,创建一个test目录

hadoop fs –get /filename 从Hadoop文件系统当中,获取一个文件到本地的文件系统。

hadoop fs –put srcfile /desfile 从本地的文件系统上传一个文件到Hadoop文件系统中。

【翻译】Apache Hadoop MapReduce

原文:http://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html

综述

Hadoop MapReduce是一个便于开发并行处理海量数据(TB级)的应用的软件框架,该框架在由普通pc机组成的大规模集群(上千台节点)上实现了可靠性及容错。

一个MapReduce任务(job)通常会将输入数据集分片,这一工作是由map任务完全并行的完成的。框架整理map的运行结果,作为reduce任务的输入。通常数据的输入输出都是在文件系统上完成的。MapReduce框架负责调度、监控及重做失败任务的工作。

通常来讲计算节点和存储节点是一样的,也就是说,MapReduce框架及HDFS运行在同一个节点集合。这种配置使得框架可以在数据已就绪的节点集群内高效的调度任务,这样在集群内获得了 非常大的带宽。

MapReduce框架包含一个资源管理器(ResourceManager ),每个节点上的NodeManager及每个应用上的MRAppMaster。

应用至少要指定输入输出位置,并通过适当的接口实现及抽象类来提供map及reduce的功能。

Hadoop的job-client提交前述任务(这个任务可以是jar,也可以是其他可执行的文件),并配置到资源管理器。资源管理器将软件及配置分发给从机,调度并监控任务,向job-client提供状态及诊断信息。

尽管Hadoop框架是用Java实现的,MapReduce应用不限定使用Java编写。

Hadoop  Streaming使得用户可以创造及运行任意的可执行程序作为mapper或者reducer。

Hadoop Pipes是兼容SWIG的C++ API,用于实现MapReduce应用。

输入输出

MapReduce框架运行在键值对(<key, value>)上,也就是说,MapReduce框架将任务的输入视为一个键值对的集合,产生新的键值对集合作为任务输出。key及value的类需要能够被框架序列化,因此必须实现Hadoop的writable接口(org.apache.hadoop.io )。此外,key类需要实现WritableComparable接口(org.apache.hadoop.io)来促进框架的排序。

一个MapReduce任务的输入输出类型示例:

(input) <k1, v1> -> map -> <k2, v2> -> combine -> <k2, v2> -> reduce -> <k3, v3> (output)

接下来玩例子:

MapReduce工作方式的小栗子:词频统计(wordcount)

 Java 源代码

复制上述代码到文件:

注意!文件夹及后面的jar需要让hdfs用户有7的权限!!!否则后面执行出错。

使用

假设环境变量设置如下(主要添加了后两条,不加会有classNotFound的错误)

编译前述WordCount.java文件并生成jar。

cdh hadoop默认lib目录:

/var/lib/

假设输入输出目录如下

/user/class_example/4_1/wordcount/input

/user/class_example/4_1/wordcount/output

 

在本地生成输入文件

导入到hdfs

(在jar的目录)跑一把前面生成的MapReduce程序的jar

参观一下输出:

 

 

 

 

 

 

 

 

 

 

 

【翻译】Apache Hadoop 下一代MapReduce ——YARN

官网链接:http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html

在学习YARN之前先了解一下MapReduce:http://bananalighter.com/apache-hadoop-mapreduce/

MapReduce经历了hadoop-0.23版本的大规模修改,目前是MapReduce2.0(MRv2)或者叫做YARN。

MRv2的核心思想是将JobTracker的资源管理及任务的调度监控分解为多个不同的后台程序。这个思路是建立一个全局的资源管理器(ResourceManager),为每一个应用建立一个应用控制器(ApplicationMaster)。应用要么是一个传统的MapReduce任务,要么是一系列任务的有向无环图(DAG)。

资源管理器(RM)及每个节点上的节点管理器(NodeManager)来自于数据计算框架。资源管理器(RM)是系统中所有应用及其资源的最高级别的仲裁。

每个应用的应用管理员(ApplicationMaster)是一个框架的特定库,用于从资源管理器(RM)协调资源,并和节点管理器(NM)一起执行和监控任务。

YARN arch

 

资源管理器(RM)包含两个主要组成部分:调度器及应用管理器(ApplicationManager)。

调度器负责为不同的应用分配容量资源、排队等等。调度器单纯进行调度,不进行监控及状态跟踪。

翻译了一半发现董西城的blog上已经早都有了。。。

链过去好了= =:http://dongxicheng.org/mapreduce-nextgen/nextgen-mapreduce-introduction/

删除cloudera manager 及 cdh

边翻译边干:http://www.cloudera.com/content/cloudera/en/documentation/cloudera-manager/v5-0-0/Cloudera-Manager-Installation-Guide/cm5ig_uninstall_cm.html

配置情况

一台cm server(使用mysql)

四台cdh主机

默认的用户目录

以下目录是默认安装时的各个工具的目录:

/var/lib/flume-ng /var/lib/hadoop* /var/lib/hue /var/lib/navigator /var/lib/oozie /var/lib/solr /var/lib/sqoop* /var/lib/zookeeper /dfs /mapred /yarn

假如在安装时自己改过,那就在重新安装的时候注意删除自定义的目录。

停止各种cdh及cm的服务

可以在界面上操作

删除cm server上的服务及安装

检查cm server状态

确认server及agent关闭后删除:

清除mysql数据库

 

 删除集群上的cm agent及各种cdh软件

关闭cm agent

删除agent

clean yum cache

 删除cdh中的组件

删除cloudera manager的数据

重启后试试 物理机重启那叫一个慢。。。。。。。。

重启以后删掉了。

删除cloudera manager的lock文件

竟然没有,可能是因为通过命令正常关闭的,本身没有产生lock。

再删除其他hadoop的组件

*我没有删除/dfs,因为最初物理分区直接给分了个/dfs出来。

done

windows 修改远程桌面端口

修改远程桌面端口需要两个步骤:
1、打开注册表 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp],修改右边PortNamber的值,其默认值是3389,修改成所希望的端口即可,例如3309
2、再打开注册表 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro1Set\Control\Tenninal Server\WinStations\RDP-Tcp],修改右边PortNamber的值,其默认值是3389,修改成所希望的端口即可,例如3309
修改完后需要重启生效,注意防火墙的问题!

参考:http://zhidao.baidu.com/link?url=sbMt1YylQyd6gHrTqaP0-Wj4LZ74SG_X_UhVLloFypdCZ96IUygLIWa-qpzLBC9dhNB1VAYx-oXjI4j0kBnhtK