由于工作需要,我打算配置一个分布式文件系统集群,主要用samba来做备份,即廉价,又无单点故障。

经过一番调研,最终决定使用lustre,lustre的分布式架构分了五个角色,mds/mdt/oss/ost/client,mds即元数据服务器,它会连接多个mdt,oss即chunkserver,,它会连接至多8个ost,client就是客户端啦

以下是安装配置过程
安装过程参考了以下文章,在此表示感谢!

http://rainbird.blog.51cto.com/211214/198619 http://wiki.lustre.org/index.php/Main_Page,但下载还是在sun的网站,在sun下载东西必须要登录,如果你没有账户那就要注册一个了,呵呵

由于我使用的操作系统是CentOS5.2 32位CPU,所以我选择的是Red Hat Enterprise Linux 5,i686,下载以下几个文件(注:下载时间不同,版本好可能有差异)

e2fsprogs-1.41.6.sun1-0redhat.rhel5.i386.rpm
kernel-2.6.18-164.11.1.el5_lustre.1.8.2.i686.rpm
lustre-1.8.2-2.6.18_164.11.1.el5_lustre.1.8.2.i686.rpm
lustre-client-1.8.2-2.6.18_164.11.1.el5_lustre.1.8.2.i686.rpm
lustre-client-modules-1.8.2-2.6.18_164.11.1.el5_lustre.1.8.2.i686.rpm
lustre-ldiskfs-3.0.9-2.6.18_164.11.1.el5_lustre.1.8.2.i686.rpm
lustre-modules-1.8.2-2.6.18_164.11.1.el5_lustre.1.8.2.i686.rpm

如果你的操作系统版本刚好和这几个rpm包匹配,那么恭喜你,你可以直接强制安装这几个包,用以下命令

rpm -ivh -aid --force *.rpm

由于我手上的CentOS版本是5.2不够新,我又懒得下载那好几百兆的文件升级,在我运行这个命令后,得到如下提示

ecryptfs-utils < 44 conflicts with kernel-2.6.18

这个的意思是说,要安装打过patch的kernel,ecryptfs-utils的版本必须大于44,于是先更新ecryptfs-utils这个软件包

输入如下指令

yum update ecryptfs-utils

升级完ecryptfs-utils,就可以重新敲刚才的命令了,一切顺利,安装完毕,下面开始配置部分

测试环境使用了3台centos,一台用作mds(192.168.0.101),两台用作ost和client(192.168.0.102/103),所有计算机上均配置两块硬盘,hda装系统,hdb用于存放数据

mds上配置如下命令:

modprobe lustre #内核加载lustre模块 
modprobe ldiskfs #内核加载ldiskfs模块 
modprobe lnet network=tcp0(eth0) #绑定网卡 
mkfs.lustre --fsname=test --mdt --reformat --mgs /dev/hdb #在第二块硬盘上创建lustre格式分区 
mkdir /home/lustre #创建目录 
mount.lustre /dev/hdb /home/lustre #把lustre分区挂载到本地文件夹

oss上配置如下命令:

modprobe lustre #内核加载lustre模块 
modprobe ldiskfs #内核加载ldiskfs模块 
modprobe lnet network=tcp0(eth0) #绑定网卡 
mkfs.lustre --fsname=test --reformat --ost --mgsnode=192.168.0.101@tcp0 /dev/hdb #创建lustre分区并绑定到mdt 
mkdir /home/lustre #创建目录 
mount.lustre /dev/hdb /home/lustre #把lustre分区挂载到本地文件夹 
mkdir /home/client #创建目录 
mount.lustre 192.168.0.101@tcp0:/test /home/client #把lustre分布式文件系统挂载到客户端使用

好了,大功告成,接下来配置需要的服务使用这个client文件夹就可以啦

以后再写mdt的冗余问题,目前的配置,还存在一个mdt的单点故障

Windows XP/2003都可以通过系统控制面板,直接修改计算机名和描述,使得其他人在“网上邻居”中可以看到对该计算机的详细备注。但Windows 2000 只能修改计算机名,其计算机描述只能通过以下两种方式来修改
注册表修改法
开始-运行,键入 regedit 并点击确定按钮,找到
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceslanmanserverparameters
新建字符串项“svrcomment”,然后键入对计算机的描述。
命令行修改法
开始-程序-附件-命令提示符,键入以下命令并按 Enter 键:

net config server /srvcomment:"计算机的描述"

AD域管理员也可以远程用at指令,把该命令行作为任务计划来遥控执行。
也可以写成批处理,供用户自行输入描述进行修改

set /p var=NewDisc: 
net config server /srvcomment:"%var%"

Windows XP去掉启动时的网络等待:

(1)运行 Gpedit.msc,(制作XPE系统时加入组策略组件)

(2)计算机配置–>管理模板–>系统–>登录–>计算机启动和登录时总是等待网络

“禁用”

全局组: 只能在创建该全局组的域上进行添加用户账户和全局组,而且全局组可以嵌套在其他组中。可以将某个全局组添加到同一个域上的另一个全局组中,或添加到其他域的通用组和域本地组中(注意这里不能它加入到不同域的全局组中,全局组只能在创建它的域中添加用户和组)。虽然可以利用全局组授予访问任何域上的资源的权限,但一般不直接用它来进行权限管理。
本地域组: 可以从任何域添加用户账户、通用组和全局组。域本地组不能嵌套于其他组中。它主要是用于授予位于本域资源的访问权限。
通用组:通用组是集合了上面两种组的优点,即可以从任何域中添加用户和组,可以嵌套于其他域组中。但是只能在域处于本机模式的时候使用,也就是说所有域控都必须是2000以上系统。
比如:有两个域,A和B,A中的5个财务人员和B中的3个财务人员都需要访问B中的“FINA”文件夹,这时,可以在B中建一个DL,因为DL的成员可以来自所有的域,然后把这8个人都加入这个DL,并把FINA的访问权赋给DL。这样做的坏处是什么呢?因为DL是在B域中,所以管理权也在B域,如果A域中的5个人变成6个人,那只能A域管理员通知B域管理员,将DL的成员做一下修改,B域的管理员太累了。
这时候,我们改变一下,在A和B域中都各建立一个全局组(G),然后在B域中建立一个DL,把这两个G都加入B域中的DL中,然后把FINA的访问权赋给DL。哈哈,这下两个G组都有权访问FINA文件夹了,是吗?组嵌套造成权限继承嘛!这时候,两个G分布在A和B域中,也就是A和B的管理员都可以自己管理自己的G啦,只要把那5个人和3个人加入G中,就可以了!以后有任何修改,都可以自己做了,不用麻烦B域的管理员!这就是AGDLP。
注:A表示用户账号,G表示全局组,U表示通用组,DL表示域本地组,P表示资源权限。A-G-DL-P策略是将用户账号添加到全局组中,将全局组添加到域本地组中,然后为域本地组分配资源权限。

本地域组的成员可以来自所有域的用户和组,但其作用域只能是当前域
全局组的成员只能来自当前域的用户和组,而作用域可以是所有的域

本地域组的权利是自身的,全局域的权利是来自其属于的本地域组的

打个比方,现在有两个域domainA,domainB,用户UseA,UseB. 在DomainA上有一个文件夹Resource.UseB属于domainB,他想访问Resource.
这个时候就应该先在domainB上建一个全局组GlobalB,然后将UseB加入GlobalB,然后到Domain域中建立一个域本地组LocalA,将全局组GlobalB加入域本地组LocalA,再针对域本地组LocalA授权对Resource的访问权限。