献给天下的父亲

15 Jun 2008 In: 其他, 平凡生活

2008年6月15日是父亲节。在父亲节来临之际,祝福所有的父亲:节日快乐!也祝愿天下所有的父母亲福寿安康!

父亲节由来

父亲节由来第一个说法
世界上的第一个父亲节,1910 年诞生在美国。
1909 年,住在美国华盛顿州士波肯市(Spokane)的杜德夫人(Mrs. Dodd, Sonora Louise Smart Dodd),当她参加完教会举办的母亲节主日崇拜之后,杜德夫人的心里有了很深的感触,她心里想着:“为什么这个世界没有一个纪念父亲的节日呢?”
杜德夫人的母亲在她十三岁那一年时去世,遗留下六名子女;杜德夫人的父亲威廉斯马特先生(Mr. William Smart),在美国华盛顿州东部的一个乡下农场中,独自一人、父兼母职抚养六名子女长大成人。斯马特先生参与过美国南北战争,功勋标榜,他在妻子过世后 立志不再续弦,全心带大六名儿女。
杜德夫人排行老二,是家里唯一的女孩,女性的细心特质,让她更能体会父亲的辛劳;斯马特先生白天辛劳地工作,晚上回家还要照料家务与每 一个孩子的生活。经过几十年的辛苦,儿女们终于长大成人,当子女们盼望能让斯马特先生好好安享晚年之际,斯马特先生却因为经年累月的过度劳累而病倒辞世。
1909 年那年,正好是斯马先生辞世之年,当杜德夫人参加完教会的母亲节感恩礼拜后,她特别地想念父亲;直到那时,杜德夫人才明白,她的父亲在养育儿女过程中所付出的爱心与努力,并不亚于任何一个母亲的辛苦。
杜德夫人将她的感受告诉教会的瑞马士牧师(Rev. Rasmus),她希望能有一个特别的日子,向伟大的斯马特先生致敬,并能以此纪念全天下伟大的父亲。
瑞马士牧师听了斯马特先生的故事后,深深地为斯马特先生的精神与爱心所感动,他赞许且支持杜德夫人想推动「父亲节」的努力。于是杜德夫 人在 1910 年春天开始推动成立父亲节的运动,不久得到各教会组织的支持;她随即写信向市长与州政府表达自己的想法与提议,在杜德夫人的奔走努力下,士波肯市市长与华 盛顿州州长公开表示赞成,于是美国华盛顿州便在 1910 年 6 月 19 日举行了全世界的第一次父亲节聚会。
1924 年,美国总统科立芝(Calvin Coolidge)支持父亲节成为全美国的节日;1966 年,美国总统詹森(Lyndon Johnson)宣布当年 6 月第 3 个星期日,也就是斯马特先生的生日月份为美国父亲节;1972 年,美国总统尼克森(Richard Nixon)签署正式文件,将每年的六月第三个主日,订为全美国的父亲节,并成为美国永久性的国定纪念日。
父亲节由来第二个说法
专门用一天向母亲表示敬意的想法是1907年在美国首先提出来的。2年以后华盛顿州的一位妇女约翰·布鲁斯·多德夫人提出应有类似母亲节的一天来向一家之长的父亲表示敬意。多德夫人年幼丧母,由父亲把她带大。她非常爱自己的父亲。
在多德夫人提出她的想法的同一年--1909年,华盛顿州州长作出反应,宣布六月的第三个星期日为父亲节。这个想法在1996年被伍德·威尔逊总统正式批 准。1924年,卡尔文·柯立芝总统建议把父亲节作为一个全国性的节日以便“在父亲和子女建立更亲密的关系,并且使父亲铭记自己应尽的全部责任”。红色或 白色玫瑰是公认的父亲节的节花。
父亲节在全美国作为节日确定下来,比母亲节经过的时间要长一些。因为建立父亲节的想法很得人心,所以商人和制造商开始看到商机。他们不仅鼓励做儿女的给父亲寄贺卡,而且鼓动他们买领带、袜子之类的小礼品送给父亲,以表达对父亲的敬重。
第二次世界大战期间,驻扎在英国的美国军人要求得到父亲节的贺卡寄回国内。美国军人的要求得到英国贺卡出版商的回应,因而印制了贺卡。虽然英国公众对这个人为节日接受缓慢一些,但今天英国在六月里第三个星期日也热烈庆祝父亲节,和美国的庆祝方式差不多。
父亲节似乎远不如母亲节那么重要,没有孩子给父亲送礼物。但是,美国的父亲仍然认为他们的命运比许多其它国家的父亲强得多,因为那些国家的父亲们连个名义上的节日都没有。

父亲节习俗

在父亲节这天,人们选择特定的鲜花来表示对父亲的敬意。人们采纳了多德夫人伯建议,佩戴红玫瑰向健在的父亲们表示爱戴,佩戴白玫瑰对故去的父亲表示悼念。 后来在温哥华,人们选择了佩戴白丁香,宾夕法尼亚人用蒲公英向父亲表示致意。红色或白色玫瑰是公认的父亲节的节花。父亲节在全美国作为节日确定下来,比母 亲节经过的时间要长一些。因为建立父亲节的想法很得人心,所以商人和制造商开始看到商机。他们不仅鼓励做儿女的给父亲寄贺卡,而且鼓动他们买领带、袜子之 类的小礼品送给父亲,以表达对父亲的敬重。
另外,在父亲节的那一顿早餐是由子女们做的,父母早上不必早起,可以继续睡,子女们做好早餐很拿到床前给父母亲用。
祝福语

·父亲给了我一片蓝天,给了我一方沃土,父亲我生命里永远太阳,祝父亲节快乐!
·您眼光中虽有严厉,但更多温暖,爱护谢谢您,爸爸祝您父亲节快乐!
·如果,您一颗沧桑老树,那么,我愿那会唱歌百灵,日夜栖您枝头鸣叫,换回您年轻,让您永远青翠爸爸,我爱您!
·也许别人眼中,您只一个平平凡凡人,但您正直不阿,清正廉洁,使我认为:您伟大、不平凡!
·爸爸爱就像秋天太阳,温暖踏实而又不刺眼 ·父亲给了我一片蓝天,给了我一方沃土,父亲我生命里永远太阳,祝父亲快乐!
·咬定青山不放松,父亲,坚定若您,勇敢若您,我深深地爱您!
·一首从小就开始唱而且百听不厌歌曲:草鞋船,爸爸帆,伴我去启航。
·爸,您最近身体还好吗?年纪大了,就别太操劳了,儿女们事会自己处理,您要多保重身体今天父亲节,祝您节日快乐!
·千里之外,每当我步履沉重时,我总能想起您目光力量,而前行爸爸,父亲节快乐!
·爸爸,坦白讲你有时非常狡猾,有时又非常滑稽可笑,但我更想说:最令我引以为荣正你幽默风趣!!祝父亲节快乐!
·爸爸,您总用最平淡最朴素方式去表达您爱,但您爱却足够我受用一辈子祝您父亲节快乐!
·岁月流逝能使皮肤逐日布满道道皱纹,我心目中您,永远年轻父亲!
·吸烟有害健康,为了身体,您就少吸两支吧!爸爸,祝您父亲节快乐!

·每当想起你我就无比得自豪,你时刻激励我不断奋进这个特殊节日里我祝福你!
·老爸!今天父亲节,你不知道吧?祝老爸身体健康,生意兴隆,股票“变红”,要不要什么礼物啊?不过,得要你报销啊!
·一个父亲胜于一百个教师。
·我脉搏里流淌着您血液,我性格上深烙着您印记,我思想里继承着您智慧,这一切一切,我永远不会忘记,我亲爱父亲,节日快乐!
·爸爸不论何时你都我拐杖,给我支持,给我方向,给我力量,让我可以走好今后每一段路即使您不我身边,那份浓浓父爱仍然会帮助我直到永远!
·爸爸教诲像一盏灯,为我照亮前程;爸爸关怀像一把伞,为我遮蔽风雨。

Tor: 匿名在线

17 Mar 2008 In: 网址收藏

Tor 是一个软件项目,帮助你抵御流量分析, 流量分析是一种对网络的监视行为,威胁到个人的自由与隐私、 商业活动与业务关系的保密和国家的安全。Tor 将你的通信通过一个 由遍及全球的志愿者运行的中继(relay)所组成的分布式网络转发, 以此来保护你的安全:它令监视你的 Internet 连接的那些人无法知道你所访问的站点, 它还令你所访问的站点无法知道你的物理位置。Tor 能与现有的许多应用程序配合工作, 包括 Web 浏览器、即时通讯客户端、远程登录和基于 TCP 协议的其他应用程序。

世界各地有几十万用户出于多种不同的原因在使用 Tor:记者和博客、人权工作者、 执法人员、军人、公司、暴政之下的公民以及像你我一样的普通公民。谁使用 Tor?页面有典型的 Tor 用户的例子。概述页面对 Tor 的作用、 这一用户多样性为什么重要以及 Tor 如何工作有更详细的解释。

这里有三点容易忽略的细节需要你注意。

  1. 如果使用不当,Tor 便无法保护你的安全。 请阅读我们列出的警告并请仔细遵照你所在平台的指导
  2. 即使你正确地配置和使用 Tor,依然存在潜在的攻击, 会损害 Tor 对你的保护
  3. 目前没有匿名系统是完美的,Tor 也不例外: 如果你确实需要强健的匿名,仅仅依靠现有的 Tor 网络或许并不适合。

* dhcp server
install dhcpd
sudo apt-get install dhcp3-server

On the DHCP server (in /etc/dhcpd.conf) you will need network booting options enabled:

allow bootp;
allow booting;

You will need to define a subnet, and teach the diskless box where all the other systems are on the network:

# No service will be given on this subnet, but declaring it helps the
# DHCP server to understand the network topology.
subnet 192.168.64.0 netmask 255.255.255.0 {
range 192.168.64.64 192.168.64.250;
option domain-name “yuvad.com”;
option routers 192.168.64.254;
option domain-name-servers 211.94.65.97, 192.168.0.11, 192.168.0.12;
}

Next define a name host that boots using the file pxelinux.0 named on NFS server 192.168.64.116.
host node1 {
fixed-address 192.168.64.210; # client ip
option host-name “node1″; # client name
hardware ethernet 00:30:48:2b:1c:34; # client mac
next-server 192.168.64.116; #TFTP server
filename “pxelinux.0″;  # file on TFTP server
}

host node2 {
fixed-address 192.168.64.211; # client ip
option host-name “node2″; # client name
hardware ethernet 00:40:05:46:e5:30; # client mac
next-server 192.168.64.116; #TFTP server
filename “pxelinux.0″;  # file on TFTP server
}

Restart dhcpd, if it fails to start up check the logs.

$sudo /etc/init.d/dhcp restart

At this point you should have your disk-less client getting an IP address.

* tftp
install tftp
sudo apt-get install tftpd-hpa

then:
sudo vi /etc/default/tftp-hpa
Change
RUN_DAEMON=”no”
to
RUN_DAEMON=”yes”

* PXE
So far the TFTP server is useless. Let’s install the initial boot image (pxelinux.0).

$ sudo apt-get install syslinux
$ sudo cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot/

At this point you can have the disk-less client boot the pxelinux.0 image. It still needs a configuration. It looks for it in /pxelinux.cfg/ on the TFTP server.

$ mkdir /var/lib/tftpboot/pxelinux.cfg/

If uses the MAC address of the client to key on. Failing that it uses the IP address (in hex). We will use the MAC. Note that the actual MAC address is preceeded by 01- and the colons are replaced by dashes. MAC letters must be in lower case!.
Don’t forget to write 01- before MAC address.

The configuration will look something like this:
$ sudo cat pxelinux.txt
Boot Menu
———

YUVAD    to start diskless YUVAD client
local    to boot from local harddisk

$ sudo cat pxelinux.cfg/01-00-30-48-2b-1c-34
DISPLAY pxelinux.txt

PROMPT 1             # show boot: prompt
TIMEOUT 10           # boot default after 1 second
DEFAULT linux

LABEL linux
KERNEL vmlinuz-2.6.25-rc4
APPEND root=/dev/nfs nfsroot=192.168.64.116:/nfsroot/node1 ip=node1:eth0:dhcp rw

LABEL local
localboot 0

Note that the config file can support multiple images. The default is linux. The kernel image is vmlinuz-2.6.25-rc4, once we build it it will reside in /var/lib/tftpboot/vmlinuz-2.6.25-rc4.

* ROOTFS
I keep my network booting root filesystems organized under /nfsroot/${hostname}/, and I install them using debootstrap.

$ mkdir /nfsroot/node1
$ apt-get install debootstrap
$ debootstrap –include=nfsbooted,dhcp3-client,procps,passwd,vim,less,configure-debian  etch  /nfsroot/node1
This will take a while.

nfsbooted is a boot script that changes permissions of ramfs partitions so they can be accessed by everyone. For it to work you will need to create a directory in the rootfs image.

$ mkdir /nfsroot/node1/.nfsroot

Once it’s done, you have to modify a few files. You might as well do it from the chroot, if you don’t make sure you’re not chaning files in / but in /nfsroot/node1.

$ chroot /nfsroot/node1 su -

*
/etc/hosts needs to contain the following

127.0.0.1       localhost

*
/etc/hostname should be set to your hostname

node1

*
/etc/resolv.conf should contain something sane, copy it from the NFS server.
*
/etc/nfsbooted/mountfix.conf needs to point to the right directory:

NFSROOTDIR=/.nfsroot

*
/etc/fstab will contain a few tmpfs partitions so that temp files don’t have to go over NFS. Here is what mine looks like:
/               /.nfsroot       none    bind,ro         0 0
proc            /proc           proc    defaults        0 0

# copied from /etc/nfsbooted/fstab
/dev/ram        /tmp            ramfs   defaults,rw,auto,dev            0 0
/dev/ram1       /var/run        ramfs   defaults,rw,auto,dev            0 0
/dev/ram2       /var/state      ramfs   defaults,rw,auto,dev            0 0
/dev/ram3       /var/lock       ramfs   defaults,rw,auto,dev            0 0
/dev/ram4       /var/account    ramfs   defaults,rw,auto,dev            0 0
/dev/ram5       /var/log        ramfs   defaults,rw,auto,dev            0 0
/dev/ram6       /var/lib/gdm    ramfs   defaults,rw,auto,dev            0 0
/dev/ram7       /var/tmp        ramfs   defaults,rw,auto,dev            0 0

finally, you should finish off the debian installation

$ configure-debian –all
Then exit the chroot.
$ exit

KERNEL

Let’s build a kernel. There are so many ways to build one. Here is just one.

$ apt-get install git-core build-essential
$ git clone git://git2.kernel.org/pub/scm/linux/kernel/git/stable/linux-2.6.20.y.git linux
$ cd linux
$ make menuconfig

This will create a configuration with everything enabled as a module. But some things are required to be built into the kernel. So, edit and/or add the following:

* Networking -> Networking options
enable kernel level autoconfiguration(or you can’t see CONFIG_ROOT_NFS config below)
-> IP: kernel level autoconfiguration
-> IP: DHCP support
-> IP: BOOTP support
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y

* File systems -> Network File Systems
NFS client support

CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_NFS_V4=y
CONFIG_NFS_DIRECTIO=y

* File systems -> Network File Systems
-> Root file system on NFS
NFS root support

CONFIG_ROOT_NFS=y

* Device Drivers -> Network device support ->
your network interface

CONFIG_E1000=y                          # if you have Intel E1000

If you don’t know what NIC you have, enable a bunch. It costs little.

Next we build…

$ make -j4

Then install…

$ make INSTALL_MOD_PATH=/nfsroot/node1 modules_install
$ make INSTALL_PATH=/nfsroot/node1/boot install

And lastly copy the vmlinuz file to the TFTP server.

$ cp /nfsroot/node1/boot/vmlinuz* /var/lib/tftpboot

At this point the disk-less client will be able to boot the kernel and will die when it tries to mount the nfsroot.

NFS

Last step is to configure the NFS server to export our new nfsroot.

$ apt-get install nfs-kernel-server

This is done through /etc/exports

/nfsroot/node1 10.0.0.100(rw,no_root_squash,no_subtree_check,async)

And export it

$ exportfs -a

And now, it should all work.

集群技术综述

17 Mar 2008 In: Cluster

在本文,把在freshmeat.net网站上已有的Clustering/Distributed Networks工具做一个综述。为了更清楚地描述,将按以下分类来说明:

构建和使用集群的软件:
高性能科学计算集群软件(Beowulf/Scyld, OSCAR, OpenMosix…),    包括象SSI(Single System Image systems)这样的特殊集群系统
高可用性集群软件(Kimberlite, Heartbeat…)
负载均衡型集群软件(Linux Virtual Server, Ultra Monkey…)
常用的管理集群软件:
文件系统(Intermezzo, ClusterNFS, DRBD…)
安装和配置(FAI, System Installation Suite…)
监视和管理(Ganglia, MOSIXVIEW, Performance Co-Pilot…)
编程开发与集群计算环境(MPI, PVM, spread…)
辅助小程序

构建和使用集群的软件
在本节中,将介绍一些完全的集群解决方案(从安装、管理、监视到编程开发环境)。要注意的是这些解决是针对不同类型集群的,比如是专门为高性能科学计算集群,它并不适合高可用性集群。

高性能科学计算集群
高性能科学计算集群是当前的热点。其目的是对任何类型的任务提供一个可任意分配多结点机器的系统资源环境,以充分利用机器的能力。比如环境模拟和动画渲染等应用。
下面是一些较成功的项目:
首先是众所周知的Beowulf项目,在Scyld网站保留着很多相关的内核和工具来构建一个“单一映像系统”。目的是在一台主控机器上控制集群内部众多的结点,达到集群对外表现为单一的主机形式(从系统资源管理到应用程序运行)。
对单一映像系统最重要的一点是它们通常要在内核空间运行,因此要注意应用中需要特殊的内核。内核版本和补丁是这些应用常见的安装方法。应用单一映像系统来 构建集群的项目有Compaq的NonStop Clusters for Unixware软件,现在它成为Single System Image Clusters的一部分。而OpenMosix是对标准内核做了相应的扩展开发,并提供了相当多的用户程序以提高集群的使用效率。还有SCE (Scalable Cluster Environment),也提供了相当多的构建和管理集群的工具。
Bproc是Beowulf项目的核心功能,现在以Clubmask形式出现。其它有用的项目有Kickstart, cfengine, the Maui scheduler, LAM/MPI, 等等。
另外也有不需要改变内核的解决方案。它们通常是对用户任务直接进行调度、分发,比如Cplant, the Ka Clustering Toolkit, and OSCAR都可以让你用这种方式构建、使用集群系统。
现在也有一些针对高性能科学计算的集群系统分行版本出现,主要是对一些常用的程序进行收集、整理后发布。比如Warewulf是一种发行版本,配置并生成一张安装光盘后,在各结点机上直接安装后,就直接得到了一个可用的集群系统。
ClumpOS是针对MOSIX的一个发行版本,它提供一张光盘,用户可以迅速地将任一机器自动变成集群的结点机。最好的是它不用安装,其集群系统全部是 基于光盘的,即从光盘启动该机就是集群的一个结点,而不从光盘启动,该机依然可以使用它原有的系统。MSC.Linux则提供了从内核功能扩展、引擎工 具、Beowulf工具、桌面环境等适合集群计算的一个发行版本。

高可用性集群
现在维持系统的可用性对每个人都是非常重要的。没有人希望重要的服务有停顿的时候,如mail、web、database或其它的服务。过去,有很多项目为解决这个目标而努力,最终有些项目成功并成为成熟的系统,如AIX和Solaris。
高可用性的实现思想很简单,一台机器正常工作,另一台机器在待机。当主工作机出现故障时,待机者接管相应的服务。通常采用的办法是共享文件系统、硬件/IP地址抢夺,自动侦测对方系统状态,等等。几乎每个项目都采用类似的办法。

Kimberlite利用共享的存储设备和数据一致性保证实现。Piranha (a.k.a. the Red Hat High Availability Server Project),实现了两种解决方案——双机热备和多机负载均衡。最有名的项目是High Availability Linux Project,即Linux-HA。其核心组件是Heartbeat,提供了心跳机制、监视功能和IP抢夺程序。
它可用串口设备、UDP广播/组播实现心跳检测,并可在一个结点机宕机时重新分配IP地址和其它资源给集群内部的各结点,而宕机结点恢复时又将集群系统恢 复到原来的样子。一个引起广泛关注的项目是peerd,它提供简单的监视和灾难恢复。它并不提供秒级的监视,但提供了在服务器失效几分钟后完全恢复服务功 能(包括硬件上的恢复,如同样配置的服务器)的解决方案。另一个值得关注的项目是Poor Man’s High Availability项目,其使用动dnsart.com网站提供的态DNS分配服务来实现网站服务的高可用性。

下面要介绍另一类型的高可用性:
负载均衡集群系统
负载均衡是一种特殊的高可用性功能,它既提供了高可用性项目的结点监测、恢复功能,还能将服务请求均衡分布到各结点,这可提高服务的响应和减轻服务器的负载。
负载均衡技术一般有一个前端分配机和两个以上的服务机,前端机把用户请求分发给服务机,如果服务机的服务是可用的,就由它们处理用户请求并返回结果。
最有名的负载均衡项目是Linux Virtual Server Project。它可以将用户请求均衡地分发给各服务器,任何基于TCP或UDP协议的服务都适用,如HTTP(S), DNS, ssh, POP, IMAP, SMTP, and FTP。很多负载均衡项目都是基于LVS的。Ultra Monkey扩展了LVS项目,提供心跳检测、结点监视功能,为负载均衡型集群提供了高可用性。而原来的Piranha是完全基于LVS的。    Keepalived为LVS增加了健壮、自动的灾难恢复功能。它监测各结点,当结点宕机时,它通知内核把宕机服务器删除,保证用户请求不会被错误分发。     Zeus Load Balancer不基于LVS,但提供了相似的功能。它包括了保证网站服务的流量控制、站点状态监视、灾难恢复功能。另一个不基于LVS的项目是Pen, 一个简单的适用于象HTTP/SMTP这样的TCP协议应用的解决方案。        Turbolinux Cluster Server要介绍的最后一个负载均衡项目。它提供了从应用服务到硬件安全的灾难恢复解决方案。

常用的管理集群软件
本节将介绍常用的集群软件,包括执行环境、编程接口、监视/管理软件、文件系统等等。

文件系统
首先介绍文件系统和集群文件系统项目。现在有很多文件系统,其中很多都包括了日志功能,还有一些是专门为集群系统设计的分布式文件系统。因为有太多的文件系统,这里只介绍比较常用的集群文件系统。
OpenAFS (an open version of the Andrew Filesystem originally developed at Carnegie Mellon University), GFS (the Global Filesystem), Coda, and InterMezzo是常见的集群文件系统。
另外要介绍一些对文件系统的扩展项目。ClusterNFS项目,提供了对Universal NFS Daemon的一些补丁,使得不同的结点机可以共享主控机上提供的一个根分区。它对不同的结点机提供了相应的“标志”信息。这对于构建NFS挂接根分区或 是无盘集群是非常有用的。
另一个项目是ENBD,the Enhanced Network Block Device,通过DRBD项目可以允许远程磁盘变成本地的硬件块设备。这对建立一个镜像RAID很有帮助,不同机器上的数据可以实时地更新,提高了可用性。

安装配置
如果要安装数百台服务器,并一一配置,这将是个很难的过程。现在有一些项目可以帮助我们解决这样问题。
FAI(Fully Automatic Installation)自动安装项目。这是一个不需要交互的
Debian GNU/Linux系统安装软件。多结点的安装是自动进行的,当安装完成时,系
统已经正确配置并可正常运行,过程不需要与用户交互。要注意的是FAI只适用于
Debian GNU/Linux系统。
要安装机器,请使用System Installation Suite,这就是答案。
System Installation Suite项目是基于磁盘映像技术的工具。对已经配置好的结点生成磁盘映像,映像文件存放在映像服务器上,结点机从安装盘启动后会自动根据映像的内容生成 与旧结点机一样的系统。现在它适用于Red Hat, Mandrake, SuSE, Conectiva, and Turbolinux。SIS不久也可以适用于Debian系统。SIS由三个项目组成:SystemImager, System Installer, and System Configurator。

监视管理
当管理上百台结点的集群服务器时,能够在单一的机器上管理这么多的结点是个有用的功能。在这方面有很多项目在进行,它们分别解决了不同的这方面的常见问 题。ClusterIt仅用于维护和管理过大数目的系统。Ganglia是一个可扩展、有名的、大量测试过的、实时监视和远程执行环境。它在各地的大学、 政府实验室、集群主机使用者中广泛使用,并得到一致好评。Performance Co-Pilot由SGI公司发布的一个监视和管理软件。原来是为IRIX系统编写的,SGI公司将它改为在Linux上运行并改为开源版本。经过多年的 开发,SGI应该能够将它的技术和经验转为项目稳定、可用的保证。
以上项目可运行在任何系统上。除此之外,有些项目是为另一些专门的项目开发的,如MOSIXVIEW是MOSIX集群系统管理的一个GUI界面。它支持 MOSIX和OpenMosix,做为一个可执行命令的前端界面。LVSmon是为LVS项目开发的维护LVS连接表的监视管理工具。
在这么多的项目中,很多项目是相似的。下面只介绍一些常用的:Syncopt是解决   在多结点上保持软件一致性的问题。利用Syncopt,软件自动从一个中心服务器安装,保持各结点上的软件版本一致。
Fsync与rsync和CVS类似。它使得在不同的机器间的文件保持一致,有消除文件差异的功能和保持目录树结构的程序。它只是个Perl脚本,设计在 以Modem网络连接速度上运行。Ghosts(global hosts)是个可对机器分组定义,生成宏定义的系统,利用这些宏,gsh,一个并行执行环境可以对不同的组执行相应的命令。最后,有一个项目是 pconsole,它和Ghosts类似。但它是个运行界面,实际提供的是一个管理shell环境。用户可以通过它同时连接到多台结点机上,用户执行的命 令将同时送到这些结点上运行。

编程开发与执行环境
当你建立起一个集群系统后,你怎么使用它?你如何编写程序以利用集群的优点?什么开发库和编程工具可以利用?有什么软件帮助你在集群上运行程序或对程序的运行进行调度?这些问题在本小节将得到回答。
PVM意指Parallel Virtual Machine。它利用消息传递功能将多台机器形成集群形式。可以使用它的应用程序可用C,C++或Fortran编写,也可以编译为单独分开的进程。 PVM++试图提供为PVM在C++开发时一个好用的开发库。pvmpov 或 PVM Gmake工具都使用了PVM接口。Pvmpov是为POV-Ray编写的一个补丁,它允许该渲染程序在基于PVM编程的程序可以在集群上运行。PVM Gmake是一个GNU make程序的扩展,其允许编译过程在多台结点上进行,缩短编译时间。

另一类的消息传递开发接口是MPI,指”The Message Passing Interface”。MPI有几种发行版本:LAM/MPI 和 MPICH是其中的两种。而Object-Oriented MPI是标准MPI在更高层次C++开发时使用的面向对象开发库。PETSc是为并行程序用MPI开发时可重用的数据结构和运行库。
另一个消息传递系统是Spread。Sprea是一个开发库,提供了消息传递接口,可以开发高可用性程序,如集群消息总线、高可靠数据库、灾难恢复程序。
现在你可能要问,如何跟踪在集群各结点机运行的程序。为此,你需要一个调度程序。这里有很多不同的调度程序,但在Linux集群上,只有两个最主要的, Condor and Maui。这两个调度程序可以处理调度优先级、跟踪资源分配、动态改变优先级/资源等等。

辅助工具
一个是IBM的Distributed Lock Manager项目。DLM是为VAX集群锁机制开发的。这是个特别的工具,并不是集群环境。在共享库里内含了相应的API接口。
Linux Terminal Server Project是构建无盘系统的有力工具(工作站、集群结点或其它类型的无盘系统)。LTSP提供利用远程系统资源的工具。

Portable Batch System

17 Mar 2008 In: Cluster

From Wikipedia, the free encyclopedia

Portable Batch System (or simply PBS) is the name of computer software that performs job scheduling. Its primary task is to allocate computational tasks, i.e., batch jobs, among the available computing resources. It is often used in conjunction with UNIX cluster environments. Several spin-offs of this software have resulted in it having various names. However, the overall architecture and command-line interface remain essentially the same.

PBS is supported as a job scheduler mechanism by several meta schedulers including Moab by Cluster Resources Inc and GRAM (Grid Resource Allocation Manager), a component of the Globus Toolkit.

Contents

History and versions

PBS was originally developed by MRJ for NASA in the early to mid-1990s. MRJ was taken over by Veridian, which was later taken over by Altair Engineering, which currently distributes PBS Pro commercially and maintains an Open Source version (OpenPBS). Cluster Resoures has actively maintained a separate fork of OpenPBS known as Torque since 2003.

The following versions of Portable Batch System are currently available:

  • OpenPBS — unsupported original open source version
  • TORQUE — a fork of OpenPBS 2.3.12.[1] Paid support available through Cluster Resources.
  • PBS Professional (PBS Pro) — a version maintained and sold commercially by Altair Engineering

External links

License

The license for PBS derived programs [can be found here]

Until December 31, 2001, PBS and derivative programs (TORQUE, OpenPBS) did not meet the Open Source Initiative’s [definition] of Open Source. Namely, the license prohibition of commercial redistribution of the software. Up to that date, use of these programs also required registration at the OpenPBS website.

As of December 31, 2001, the registration and no commercial use clauses expired.

References

  1. October 2003 announcement, accessed 2007-11-22

SD/SDI specs

17 Mar 2008 In: Video

SMPTE 259M and ITU-R BT.656

143 Mb/s = Composite NTSC sampled at 14,3 MHz, SMPTE 244M
177 Mb/s = Composite PAL sampled at 17,7 MHz, IEC 61179-5
270 Mb/s = 4:2:2 Video sampled at 13,5 MHz, SMPTE 125M
360 Mb/s = 4:2:2 Video sampled at 18 MHz, SMPTE 267M

SMPTE 291M = How to add ancillary data
SMPTE 272M = How to pack uncompressed audio into ancillary frames
SMPTE 337M = How to pack compressed instead of uncompressed audio

Cluster related Projects

17 Mar 2008 In: Cluster, 网址收藏

FAI - Fully Automatic Installation

16 Mar 2008 In: Debian, Linux/Un*x

FAI is an automated installation tool to install or deploy Debian GNU/Linux and other distributions on a bunch of different hosts or a Cluster. It’s more flexible than other tools like kickstart for Red Hat, autoyast and alice for SuSE or Jumpstart for SUN Solaris. FAI can also be used for configuration management of a running system.

You can take one or more virgin PCs, turn on the power and after a few minutes Linux is installed, configured and running on all your machines, without any interaction necessary. more…

Cluster is a widely-used term meaning independent computers combined into a unified system through software and networking. At the most fundamental level, when two or more computers are used together to solve a problem, it is considered a cluster. Clusters are typically used for High Availability (HA) for greater reliability or High Performance Computing (HPC) to provide greater computational power than a single computer can provide.

Beowulf Clusters are scalable performance clusters based on commodity hardware, on a private system network, with open source software (Linux) infrastructure. The designer can improve performance proportionally with added machines. The commodity hardware can be any of a number of mass-market, stand-alone compute nodes as simple as two networked computers each running Linux and sharing a file system or as complex as 1024 nodes with a high-speed, low-latency network.

Class I clusters are built entirely using commodity hardware and software using standard technology such as SCSI, Ethernet, and IDE. They are typically less expensive than Class II clusters which may use specialized hardware to achieve higher performance.

Common uses are traditional technical applications such as simulations, biotechnology, and petro-clusters; financial market modeling, data mining and stream processing; and Internet servers for audio and games.

Beowulf programs are usually written using languages such as C and FORTRAN. They use message passing to achieve parallel computations. See Beowulf History for more information on the development of the Beowulf architecture.

Beowulf is a general name for clustering low-cost computers such as PCs to create inexpensive “supercomputing” capability. Many people use the Debian operating system on Beowulf clusters for several reasons, from the excellent system management tools to package availability.

What’s nagios?

16 Mar 2008 In: Cluster, Linux/Un*x, Open Source

Nagios® is a system and network monitoring application. It watches hosts and services that you specify, alerting you when things go bad and when they get better. Nagios was originally designed to run under Linux, although it should work under most other unices as well.

Some of the many features of Nagios include:

  • Monitoring of network services (SMTP, POP3, HTTP, NNTP, PING, etc.)
  • Monitoring of host resources (processor load, disk usage, etc.)
  • Simple plugin design that allows users to easily develop their own service checks
  • Parallelized service checks
  • Ability to define network host hierarchy using “parent” hosts, allowing detection of and distinction between hosts that are down and those that are unreachable
  • Contact notifications when service or host problems occur and get resolved (via email, pager, or user-defined method)
  • Ability to define event handlers to be run during service or host events for proactive problem resolution
  • Automatic log file rotation
  • Support for implementing redundant monitoring hosts
  • Optional web interface for viewing current network status, notification and problem history, log file, etc.

2008奥运倒计时

距第29届奥运会开幕 还有

 

July 2008
M T W T F S S
« Jun    
 123456
78910111213
14151617181920
21222324252627
28293031  
  • 1 online count
  • 1238 total visitors

Now Reading

Planned books:

Current books:

  • Linux Database Bible (Bible (Wiley))

    Linux Database Bible (Bible (Wiley)) by Michele Petrovsky

  • The Definitive Guide to MySQL 5, Third Edition (Definitive Guide)

    The Definitive Guide to MySQL 5, Third Edition (Definitive Guide) by Michael Kofler

  • Beowulf Cluster Computing with Linux, 2nd Edition (Scientific and Engineering Computation)

    Beowulf Cluster Computing with Linux, 2nd Edition (Scientific and Engineering Computation) by William Gropp

  • How to Build a Beowulf: A Guide to the Implementation and Application of PC Clusters (Scientific and

    How to Build a Beowulf: A Guide to the Implementation and Application of PC Clusters (Scientific and by Thomas Sterling

  • High Performance Linux Clusters with OSCAR, Rocks, OpenMosix, and MPI (Nutshell Handbooks)

    High Performance Linux Clusters with OSCAR, Rocks, OpenMosix, and MPI (Nutshell Handbooks) by Joseph Sloan

Recent books:

View full Library