标签归档:Linux

Linux中init进程介绍及常用方法

init(为英语:initialization的简写)是Unix和类Unix系统中用来产生其它所有进程的程序。它以守护进程的方式存在,其进程号为1。

所谓的init进程,它是一个由内核启动的用户级进程。

内核自行启动(已经被载入内存,开始运行,并已初始化所有的设备驱动程序和数据结构等)之后,就通过启动一个用户级程序init的方式,完成引导进程。所以init始终是第一个进程(其进程编号始终为1)。

内核会在过去曾使用过init的几个地方查找它,它的正确位置(对Linux系统来说)是/sbin/init。如果内核找不到init,它就会试着运行/bin/sh,如果运行失败,系统的启动也会失败。

BSD风格

BSD init运行存放于’/etc/rc’的初始化shell脚本,然后启动基于文本模式的终端(getty)或者基于图形界面的终端(窗口系统,如X)。 这里没有运行模式的问题,因为文件’rc’决定了init如何执行。

优点: 简单且易于手动编辑。

缺点: 如果第三方软件需要在启动过程执行它自身的初始化脚本,它必须修改已经存在的启动脚本,一旦这种过程中有一个小错误,都将导致系统无法正常启动。

值得注意的是,现代的BSD派生系统一直支持使用’rc.local’文件的方式,它将在正常启动过程接近最后的时间以子脚本的方式来执行。这样做减少了整个系统无法启动的风险。然后,第三方软件包可以将它们独立的start/stop脚本安装到一个本地的’rc.d’目录中(通常这是由 ports collection/pkgsrc 完成的)。都被分成更小的子脚本,和SysV类似。rcorder通常根据在rc.d目录中脚本之间的依赖关系来决定脚本的执行顺序。

SysV风格

System V init检查’/etc/inittab’文件中是否含有’initdefault’项。 这告诉init系统是否有一个默认运行模式。如果没有默认的运行模式,那么用户将进入系统控制台,手动决定进入何种运行模式。

优点: 灵活性强

缺陷: 比较复杂

其他风格

很多人一直努力地从某些方面改进传统的init守护进程,使它变得更完善。下面列出的是一些改进,没有特别的顺序:

SystemStarter, 用来替代launchd—Apple Mac OS X开启进程

Initng, 完全代替init,可以异步开启进程

Upstart, 完全代替init,可以异步开启进程由Ubuntu使用

Service Management Facility, 完全代替/重新设计Solaris启动Solaris 10

runit, 跨平台的完全代替init可以并行启动服务

BootScripts, GoboLinux

Mudur, 用Python写成的init替代品, 可以异步开启进程,Pardus Linux发行版

systemd, 完全替代init,可并行启动服务,并能减少在shell上的系统开销,为Fedora、ArchLinux所使用

System V中运行模式

Linux用init命令可以实现关机、重启、切换模式:

System V中运行模式描述了系统各种可能的状态。通常会有8种运行模式,即运行模式0到6和S或者s。其中运行模式3为”保留的”运行模式:

/etc/inittab

1#

2# inittab This file describes how the INIT process should set up

3# the system in a certain run-level.

4#

5# Author: Miquel van Smoorenburg,

6# Modified for RHS Linux by Marc Ewing and Donnie Barnes

7#

8# Default runlevel. The runlevels used by RHS are:

9# 0 – halt (Do NOT set initdefault to this)

10# 1 – Single user mode

11# 2 – Multiuser, without NFS (The same as 3, if you do not have networking)

12# 3 – Full multiuser mode

13# 4 – unused

14# 5 – X11

15# 6 – reboot (Do NOT set initdefault to this)

16#

17id:3:initdefault:

0是关机

1是单用户

2是多用户,不联网

3是多用户

4是不使用的

5是xwindows,也就是有界面的

6是重启

init命令很简单。直接输入init + 你想要的模式回车就行。

比如输入 : init 0就是关机

init 3 就是切换到多用户

init 5 就是切换到界面

init 6 就是重启

Linux下常用文本处理命令

Linux下面有很多经典的非常有用的命令,其中处理文本的命令就有很多。这些小工具经过了几十年时间的洗礼,现在已经变成了经典,已经变成了Linux下面的标准,其实它们一直是遵循着Linux的标准。下面就让我们一起看看这些经典的Linux文本处理命令。

一. sort

文件排序,通常用在管道中当过滤器来使用。这个命令可以依据指定的关键字或指定的字符位置,对文件行进行排序。使用-m选项,它将会合并预排序的输入文件。想了解这个命令的全部参数请参考这个命令的info页。

二. tsort

拓扑排序,读取以空格分隔的有序对,并且依靠输入模式进行排序。

三. uniq

这个过滤器将会删除一个已排序文件中的重复行。这个命令经常出现在sort命令的管道后边。

四. expand, unexpand

expand命令将会把每个tab转化为一个空格。这个命令经常用在管道中。

unexpand命令将会把每个空格转化为一个tab。效果与expand命令相反。

五. cut

一个从文件中提取特定域的工具。这个命令与awk中使用的print $N命令很相似,但是更受限。在脚本中使用cut命令会比使用awk命令来得容易一些。最重要的选项就是-d(字段定界符)和-f(域分隔符)选项。

六. paste

将多个文件, 以每个文件一列的形式合并到一个文件中,合并后文件中的每一列就是原来的一个文件。与cut结合使用,经常用于创建系统log文件。

七. join

这个命令与paste命令属于同类命令。但是它能够完成某些特殊的目地。这个强力工具能够以一种特殊的形式来合并两个文件,这种特殊的形式本质上就是一个关联数据库的简单版本。

join命令只能够操作两个文件。它可以将那些具有特定标记域(通常是一个数字标签)的行合并起来,并且将结果输出到stdout。被加入的文件应该事先根据标记域进行排序以便于能够正确的匹配。

八. head

把文件的头部内容打印到stdout上(默认为10行,可以自己修改)。这个命令有一些比较有趣的选项。

九. tail

将一个文件结尾部分的内容输出到stdout中(默认为10行)。通常用来跟踪一个系统logfile的修改情况,如果使用-f选项的话,这个命令将会继续显示添加到文件中的行。

十. wc

wc可以统计文件或I/O流中的”单词数量”。

十一. fold

将输入按照指定宽度进行折行。这里有一个非常有用的选项-s,这个选项可以使用空格进行断行(译者:事实上只有外文才需要使用空格断行,中文是不需要的)(请参考例子 12-23和例子 A-1)。

十二. fmt

一个简单的文件格式器。通常用在管道中,将一个比较长的文本行输出进行”折行”。

十三. col

这个命令用来滤除标准输入的反向换行符号。这个工具还可以将空白用等价的tab来替换。col工具最主要的应用还是从特定的文本处理工具中过滤输出,比如groff和tbl。(译注:主要用来将man页转化为文本。)

十四. column

列格式化工具。通过在合适的位置插入tab,这个过滤工具会将列类型的文本转化为”易于打印”的表格式进行输出。

十五. colrm

列删除过滤器。这个工具将会从文件中删除指定的列(列中的字符串)并且写到文件中,如果指定的列不存在,那么就回到stdout。colrm 2 4

简单介绍Linux下安装Tomcat的步骤

Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。 Tomcat是稳固的独立的Web服务器与Servlet Container,不过,其Web服务器的功能则不如许多更健全的Web服务器完整,如Apache Web服务器(举例来说,Tomcat没有大量的选择性模块)。不过,Tomcat是自由的开源软件,而且有许多高手致力于其发展。

在安装Tomcat之前需要安装j2sdk(Java 2 Software Development Kit),也就是JDK

◆1、安装JDK的步骤如下:

1)下载j2sdk ,如jdk-6u1-linux-i586-rpm.bin

2)在终端中转到jdk-6u1-linux-i586-rpm.bin所在的目录,输入命令

#chmod +755 jdk-6u1-linux-i586-rpm.bin;//添加执行的权限。

3)执行命令

#./jdk-6u1-linux-i586-rpm.bin;//生成jdk-6u1-linux-i586.rpm的文件。

4)执行命令

#chmod +755 jdk-6u1-linux-i586.rpm;//给jdk-6u1-linux-i586.rpm添加执行的权限。

5)执行命令

#rpm –ivh jdk-6u1-linux-i586.rpm ; //安装jdk。

6)安装界面会出现授权协议,按Enter键接受,把jdk安装在/usr/java/jdk1.6.0_01。

7)设置环境变量,在 /etc/profile中加入如下内容(可以使用vi进行编辑profile):

JAVA_HOME=/usr/java/jdk1.6.0_01
CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME

8)在终端执行命令java –version,jdk的版本为jdk1.6.0_01则表示jdk已成功安装。

◆2、安装Tomcat

1)下载apache-tomcat-6.0.10.tar.gz

2)#tar -zxvf apache-tomcat-6.0.10.tar.gz ;//解压

3)#cp -R apache-tomcat-6.0.10 /usr/local/tomcat ;//拷贝apache-tomcat-6.0.10到/usr/local/下并重命名为tomcat

4) /usr/local/tomcat/bin/startup.sh; //启动tomcat

显示 Using CATALINA_BASE: /usr/local/tomcat

Using CATALINA_HOME: /usr/local/tomcat

Using CATALINA_TEMDIR: /usr/local/tomcat/temp

Using JAVA_HOME: /usr/java/jdk1.6.0_01

Linux操作系统下配置Netware服务器方法

Netware是Novell公司的网络文件系统,这个东西以前用的很多,现在好像用的不多了,据说也可以支持TCP/IP协议了,不过以前的版本只支持IPX协议,IPX这个协议最近都快被人忘记了。Linux下是可以支持基于IPX协议的Netware服务器的,需要用一个叫mars_nwe的东西来模拟。不过这个东西很古老了,从02年就没有再更新了。从http://www.compu-art.de/mars_nwe/可以下载到最新的版本0.99.pl20,不过编译不过去,我改了一下,编译过去了,不过主要问题是里面关于quota这块儿用的版本比较低,因为quota从2.0以后有了一些的变化(现在是3.13的了),数据结构也有了一些调整,所以我现在还不能确定我的修改是否一定没问题,不过至少连接是没问题了,这块儿还需要再测试。

下面我简单介绍一下怎么配置(基于Asianux Server 3):

1、核心,需要重新编译核心加入ipx和ncpfs的支持,注意ipx里面的“Full internal IPX network”(也就是CONFIG_IPX_INTERN)一定不要选,否则别的机器是连不通的,我就是一开始不知道,结果折腾了很长时间。

2、ipxutils,支持配置ipx的工具,Asianux已经带了,需要确认是否安装了。

3、ncpfs,支持ncpfs的工具,因netware的服务器用的是ncpfs,所以需要安装这个包。

4、mars_nwe,这个就是模拟netware服务的包,配置文件在/etc/nwserv目录下,对nwserv.conf稍做修改就可以,主要修改的地方:

(1)163行的CDROM路径,这个还是老的写法,在Asianux Server 3中不存在/mnt/cdrom目录,你可以把它改成别的目录,或者干脆就建一个/mnt/cdrom目录就OK了。

(2)184行,服务器的名字,这个就是你的netware的服务器的名字,自己起一个就可以了,注意,这个文件中都是以一个数字开头的,数字就表示了这行是什么意思,比如服务器名字是2,所以这行就是“2 servername”,数字2就相当于别的一些配置文件中的类似“ServerName”的关键字。

(3)314行IPX设备以及帧的定义,这个对应的数字是4,第二列表示网络,如果你的网络里面没有其他的netware的服务,那么可以随便写,如果有,只要不和它冲突就可以,第三列是设备,写eth0就可以,第四列是帧,可以写802.3或ethernet_ii,最后一列就是选择Internal router是否处理RIP/SAP,这个我也不是很清楚是否有用,一般就写1就可以,大于6的数字就表示处理。

(4)592行可以设置登录用户,默认就只有一个guest,可以加上linux系统中的用户,写法是:

13 登录用户名 Linux用户名 密码 标识

其中,登录用户名和Linux用户名可以不一样,密码是登录Netware的密码,标识目前只知道有0x1,表示用户不能修改密码。不过默认的这个 guest用户对应的Linux用户是nobody,这个看起来是没有问题,nobody用户也没什么权限,但是因为它没有HOME目录,所以它的 HOME就变成了根目录,这样在Netware的客户端上就会看到整个Linux系统的根目录,所以所有文件都可以看了,虽然只能看,当感觉也很不安全,最好把这个guest用户去掉。

其他的就没什么了,可以就用默认的。

好,下面说说我的测试过程,因为我这边没有无盘终端,所以我就是用的两台Linux机器做的测试,一台做服务器,另外一台做客户端:

服务器配置:

1、安装支持ipx和ncpfs的核心,安装ncpfs和mars_nwe两个包,确认已经安装了ipxutils;

2、加载ipx和ncpfs模块;

3、修改/etc/sysconfig/network-scripts/ifcfg-eth0文件,只保留DEVICE=eth0和ONBOOT=yes两行,这是为了使eth0只支持IPX协议而不支持TCP/IP协议;

4、重新启动/etc/rc.d/init.d/network服务,确认用ifconfig查看eth0不能看到IP了;

5、修改/etc/nwserv/nwserv.conf文件;

6、启动/etc/rc.d/init.d/nwserv服务;

7、用ifconfig命令确认IPX协议已经支持(可以看到IPX/Ethernet 802.3这样的行),如果看不到IPX的行,那么就先关掉nwserv服务,然后运行命令ipx_interface add eth0 802.3,再用ifconfig命令查看,看到IPX之后再启动nwserv服务;

8、运行命令slist应该可以看到服务,名称就是你在/etc/nwserv/nwserv.conf文件中设置的;

OK,到这里,服务器就配置好了,如果不放心,可以先在服务器上自己mount一下自己:

ncpmount -S servername -U username -P password

这里的servername,username和passwork要换成你自己的,可以不加-P参数,这时会要求你输入密码,还有就是用户名,默认设置了 guest的用户,没有密码,可以用这个先试。用户的设置也在/etc/nwserv/nwserv.conf文件中。

就是要mount到的目录,注意,如果你设置了CDROM的路径是/mnt/cdrom,那么千万不要mount到/mnt目录上,因为netware会共享出/mnt/cdrom,如果你mount到/mnt目录下,ncpmount命令就会死掉,因为出现了循环。

客户端的设置:

前四步的设置和服务器一样;

5、使用命令ipx_interface add -p eth0 802.3为eth0增加IPX支持并自动设置IPX地址;注意,这里一定要加一个-p的参数,这表示使用Primary模式,在/proc/net /ipx/interface文件中可以相应的看到Primary那里是写的Yes。否则,在客户端是看不到服务器的。我因为这个问题折腾了好长时间,开始还怀疑是交换机不支持IPX协议,后来换了直连线也不行,后来无意中看到了这个参数,一试就OK了!

6、用命令ifconfig查看,应该可以看到eth0具有类似IPX/Ethernet 802.3这样的行;

7、运行命令slist查看可用服务器,应该可以看到类似下面的行:

Known NetWare File Servers Network Node Address

—————————

MARS 7F000001 000000000001

8、如果你看到上面的服务器就说明客户端已经可以和服务器连接了,我们就可以用命令(比如mount到/opt目录下):

ncpmount -S MARS /opt -U guest

来连接服务器MARS了,运行这条命令后会要求你输入密码,直接回车会随便输入都可以,然后再查看/opt目录就可以看到好多目录,这些目录都可以在/etc/nwserv/nwserv.conf文件中定义,其中HOME目录默认就是服务器的根目录。

在/proc/net/ipx/目录下有一些关于ipx的相关文件,其中interface文件包含系统中IPX界面的配置信息;route文件包含在IPX路由表中出现的路由列表;socket文件包含正在使用的IPX socket的列表。

Linux下MySQL服务器级优化技巧

普通的MySQL用户利用表创建和索引操作,以及利用查询的编写能够进行的优化。不过,还有一些只能由MySQL管理员和系统管理员来完成的优化,这些管理员在MySQL服务器或运行MySQL的机器上具有控制权。有的服务器参数直接适用于查询处理,可将它们打开。而有的硬件配置问题直接影响查询处理速度,应该对它们进行调整。

磁盘问题

正如前面所述,磁盘寻道是一个性能的大瓶颈。当数据开始增长以致缓存变得不可能时,这个问题变得越来越明显。对大数据库,在那你或多或少地要随机存取数据,你可以依靠你将至少需要一次磁盘寻道来读取并且几次磁盘寻道写入。为了使这个问题最小化,使用有低寻道时间的磁盘。

为了增加可用磁盘轴的数量(并且从而减少寻道开销),符号联接文件到不同磁盘或分割磁盘是可能的。

1、使用符号连接

这意味着你将索引/数据文件符号从正常的数据目录链接到其他磁盘(那也可以被分割的)。这使得寻道和读取时间更好(如果磁盘不用于其他事情)

2、分割

分割意味着你有许多磁盘并把第一块放在第一个磁盘上,在第二块放在第二个磁盘上,并且第n块在第(nmodnumber_of_disks)磁盘上,等等。这意味着,如果你的正常数据大小于分割大小(或完美地排列过),你将得到较好一些的性能。注意,分割是否很依赖于OS和分割大小。因此用不同的分割大小测试你的应用程序。见10.8使用你自己的基准。注意对分割的速度差异很依赖于参数,取决于你如何分割参数和磁盘数量,你可以得出以数量级的不同。注意你必须选择为随机或顺序存取优化。

为了可靠,你可能想要使用袭击RAID0+1(分割+镜像),但是在这种情况下,你将需要2*N个驱动器来保存N个驱动器的数据。如果你有钱,这可能是最好的选择!然而你也可能必须投资一些卷管理软件投资以高效地处理它。

一个好选择是让稍重要的数据(它能再生)上存在RAID0磁盘上,而将确实重要的数据(像主机信息和日志文件)存在一个RAID0+1或RAIDN磁盘上。如果因为更新奇偶位你有许多写入,RAIDN可能是一个问题。

你也可以对数据库使用的文件系统设置参数。一个容易的改变是以noatime选项挂装文件系统。这是它跳过更新在inode中的最后访问时间,而且这将避免一些磁盘寻道。

硬件问题

可利用硬件更有效地改善服务器的性能:

1、在机器中安装更多的内存。这样能够增加服务器的高速缓存和缓冲区的尺寸,使服务器更经常地使用存放在内存中的信息,降低从磁盘取信息的要求。

2、如果有足够的RAM使所有交换在内存文件系统中完成,那么应该重新配置系统,去掉所有磁盘交换设置。否则,即使有足以满足交换的RAM,某些系统仍然要与磁盘进行交换。

3、增加更快的磁盘以减少I/O等待时间。寻道时间是这里决定性能的主要因素。逐字地移动磁头是很慢的,一旦磁头定位,从磁道读块则较快。

4、在将数据重新放到不同设备之前,应该保证了解该系统的装载特性。如果在特定的物理设备上已经有了某些特定的主要活动,将数据库放到该处实际上可能会使性能更坏。例如,不要把数据库移到处理大量Web通信的Web服务器设备上。

5、在设置MySQL时,应该配置其使用静态库而不是共享库。使用共享库的动态二进制系统可节省磁盘空间,但静态二进制系统更快(然而,如果希望装入用户自定义的函数,则不能使用静态二进制系统,因为UDF机制依赖于动态连接)。

服务器参数的选择

服务器有几个能够改变从而影响其操作的参数(或称变量)。系统变量的当前值可以通过执行MySQLadminvaribles命令来检查,其中几个参数主要与查询有关,有必要在此提一下:

delayed_queue_size

此参数在执行其他INSERTDELAYED语句的客户机阻塞以前,确定来自INSERTDELAYED语句的放入队列的行的数目。增加这个参数的值使服务器能从这种请求中接收更多的行,因而客户机可以继续执行而不阻塞。

key_buffer_size

此参数为用来存放索引块的缓冲区尺寸。如果内存多,增加这个值能节省索引创建和修改的时间。较大的值使MySQL能在内存中存储更多的索引块,这样增加了在内存中找到键值而不用读磁盘块的可能性。

在MySQL3.23版及以后的版本中,如果增加了键缓冲区的尺寸,可能还希望用——init-file选项启动服务器。这样能够指定一个服务器启动时执行的SQL语句文件。如果有想要存放在内存中的只读表,可将它们拷贝到索引查找非常快的HEAP表。

在Linux操作系统上如何配置DNS服务器

在Linux环境下,也提供了广泛流行的BIND服务器,它是构建DNS服务器最常用的服务器软件。介绍BIND的安装的文章现在很多,现在我们就一起来谈一下维护的话题。

我们如何才能够了解DNS服务器的运行情况下呢,它忙不忙、负载大不大?这一切,对于系统管理员而言,是比较重要的。

# touch /var/named/chroot/var/named/named.log

# chown named.named /var/named/chroot/var/named/named.log

# chmod 755 /var/named/chroot/var/named/named.log

# service named restart

并且确保selinux是关闭状态(查看/etc/sysconfig/selinux配置信息)

然后查看采集到的/var/named/chroot/var/named/named.log是否存在故障信息;

#LOG 配置信息:

logging{

channel default_syslog { syslog local2; severity error; };

channel audit_log {

file “named.log” versions 3 size 20m;

severity info;

print-time yes;

print-category yes;

};

category default { audit_log; };

category general { audit_log; };

category security { audit_log; default_syslog; };

category config { default_syslog; };

category resolver { audit_log; };

category xfer-in { audit_log; };

category xfer-out { audit_log; };

category notify { audit_log; };

category client { audit_log; };

category network { audit_log; };

category update { audit_log; };

category queries { audit_log; };

category lame-servers { audit_log; };

Linux集群原理与安装配置

我们在使用Linux集群的时候有不少的问题需要解决,其实有最总要的问题就在与Linux集群的原理理解与安装过程。那么在这里大家就会学习有关Linux集群的原理安装技术,这会为在之后的工作有很大帮助。

Linux集群原理

Linux集群系统包括集群节点和集群管理器两部分。集群节点有时简称为节点、服务器或服务器节点,是提供处理资源的系统,它进行集群的实际工作。一般来讲,它必须进行配置才能成为集群的一部分,也必须运行集群的应用软件。应用软件可以是专用于集群的软件,也可以是设计用于分布式系统的标准软件。Linux集群管理器则是将节点捆绑在一起,以构成单一系统外观的逻辑结构,它用于将任务分解到所有的节点。

集群因多种不同的原因而有着不同的类型,建立Linux集群的最直接原因是共享CPU资源,在多个机器之间平衡负载,获得更多的系统可靠性,或在主机失败时提供后备系统(切换)。

通过对相关软件的分析,实现集群负载的功能是通过流量管理实现的,具体有以下几种实现方法:直接路由(Direct Forwarding)、网络地址转换(NAT)和隧道技术(Tunneling)。

直接路由(Direct Forwarding)是当参与集群的计算机和作为控制管理的计算机在同一个网段时可以使用此法。控制管理的计算机接收到请求包时,直接送到参与集群的节点。它的优点是返回给客户的流量不经过控制主机,速度快、开销少。

可能大家比较熟悉网络地址转换(NAT)这种方法。地址转换器有能被外界访问到的合法IP地址,它修改来自专有网络的流出包的地址,外界看起来包是来自地址转换器本身。当外界包送到转换器时,它能判断出应该将包送到内部网的哪个节点。它的优点是节省IP地址,能对内部进行伪装;缺点是效率低,因为返回给请求方的流量要经过转换器。

隧道技术(Tunneling)这种方式是Linux集群的节点不在同一个网段时采用的转发机制,是将IP包封装在其它网络流量中。从安全角度考虑,应该使用隧道技术中的VPN,也可使用租用专线。

Linux集群所能提供的服务是基于TCP/IP的Web服务、Mail服务、News服务、DNS服务和Proxy服务器等。下面我就以一个具体的产品TurboLinux Cluster Server 来实现一个负载均衡Linux集群系统,用于提供Web和FTP服务。

Linux集群规划

1.提供的服务:Web、FTP.

2.做一个较完善的负载均衡系统,以便能用到其中较多的功能。

3.使用4台服务器,其中3台安装TurboLinux Cluster Server,1台安装Windows 2000 Sever .

Linux集群安装

1.在3台服务器上安装Turbo Linux,还需要安装Apache和wu-ftpd,因为Linux集群要提供这种服务。安装完成后重启机器,挂接光驱在目录/mnt/cdrom下,执行。/TLCS-install,然后按提示完全安装。

2.在1台服务器上安装Windows 2000 Server,还要安装Internet Information Server 5.0.

配置Linux集群管理器

1.设置各台服务器的IP地址、子网掩码、路由等,调通网络,并将1台TurboLinux服务器设置成DNS服务器,使其能够正向解析和反向解析。此例服务器名为pc1,域为test.com.

2.配置Cluster Server.执行TurboLinuxclusteradmin,设置情况如下(连字符连接的是选单选项或其下级选单,冒号后为设置情况):

(1)ClusterServer Configuration-Cluster Services-Application Stability Agents:

http为默认的服务,不用设置。

ftp:/usr/lib/ftpAgent

(2)ClusterServer Configuration–Cluster Services–Service Settings:

http,80:TCP,sticky.

ftp,21:TCP,ftp.

(3)ClusterServer Configuration–Servers Configuration:

pc1 (pc1.test.com),direct,ping

pc2 (pc2.test.com),direct,ping

pc3 (pc3.test.com),direct,ping

pc4 (pc4.test.com),direct,ping

(4)ClusterServer Configuration–Advance Traffic Managers:

Advance Traffic Manager System:pc1.test.com

Advance Traffic Manager Setting: 默认值

(5)ClusterServer ConfigurationàVirtual Severs:

主机为:pc1.test.com

sendmail:master@pc1 .test.com

Server pool name: Server Group1

(6)ClusterServer ConfigurationàGloble Settings:

网络设置:netmask 255.255.255.0

配置集群各节点

1.配置Windows 2000 Server节点

因为TurboLinux Cluster Server 本身能被工具自动同步,所以只要配置Windows 2000 Server即可。

(1)开始→设置→控制面板→添加新硬件→下一步→添加/排除设备故障→添加新设备→否,再从列表选择硬件→其它设备→Microsoft:Microsoft Loopback Adapter→完成。

(2)在桌面上单击鼠标右键选择网上邻居→属性→TCP/IP,设置IP地址、缺省网关、子网掩码(先设成 255.255.255.0)。

(3)开始→运行→regedit→找到注册表中与Microsoft Loopback Adapter相关的项,将子网掩码改成 255.255.255.255.

(4)配置系统运行合适的服务,并配置适合集群管理器管理的配置,以便可在控制管理器中使用。

2.配置Turbo Linux Cluster Server节点

(1)在管理菜单中选tlcs_content _sync执行内容同步,输入将要配置的节点机密码,将复制集群管理器中的服务内容到节点。

(2)在管理菜单中选择tlcs_ config _sync执行设置同步,输入将要配置的节点机密码,复制集群管理器中的设置内容到节点。

到此,我们已经可以在集群管理器PC1上看到运行状态,可将客户端连在接服务器的交换机上,客户端可以请求Web和FTP服务。