在 Linux 上利用数据分区功能提高可伸缩性和性能(3)
- UID
- 1066743
|
在 Linux 上利用数据分区功能提高可伸缩性和性能(3)
在 instance-owning 机器上设置 NFS 服务器
您需要导出 instance-owner 目录,该目录将被其他数据库分区服务器共享。
- 创建 instance-owner 目录,确保该目录被挂载。使用如下命令:
- mkdir /db2home
- mount /db2home
- 修改 /etc/fstab 中的文件系统表(fstab),使之包括新的文件系统,以便在启动时挂载新的文件系统。条目格式如下: <device> <mountpoint> <filesystemtype> <options> <dump> <fsckorder>
您的条目看上去可能类似于:
清单 1. 示例 instance-owning /etc/fstab 清单1
| /dev/had7 /db2home ext3 defaults 1 2
|
该条目使用一个 ext3 文件系统,这种文件系统在 2.4.16 版或更高版本的 Linux 内核中均受支持,文件系统检查(fsck)程序的顺序被设为 2。
- 设置好 instance-owning 文件系统后,通过在 /etc/exports 文件中添加以下条目,可以在启动时通过一个 NFS 服务导出这个文件系统:
清单 2. 示例 /etc/exports 清单1
| db2home InstanceOwnerServer (rw,sync,no_root_squash) db1(rw,sync,no_root_squash)
|
其中 InstanceOwnerServer 是 instance-owner 服务器的名称,db1 是另一个数据库服务器的名称。
表 2 中列出了导出文件选项:
表 2. 导出文件选项选项描述rw使用读写权限来导出文件系统sync服务器必须等文件被写入到磁盘后才能开始下一次读操作no_root_squash使 root 权限有效
- 执行 exportfs 命令,使将挂载的 NFS 客户机能使用 instance-owner 目录 /usr/sbin/exportfs -a
其中选项 a 用于导出 /etc/exports 文件中列出的所有目录。
设置参与机器上的 NFS 客户机
instance-owner 目录可用之后,便可以将该目录导入其他数据库分区服务器。
- 用以下命令在其他服务器中创建共享目录: mkdir /db2home
- 添加一个条目到 /etc/fstab 文件,使 NFS 在启动时自动挂载文件系统:
清单 3. 参与机器的 /etc/fstab 示例1
| server1:/db2home /db2home nfs rw,timeo=300,retrans=5,hard,intr,bg,suid
|
其中 server1 是 instance-owner 服务器名称,下表列出了其他一些选项:
表 3. NFS 挂载选项选项描述rw使用读写权限来导出文件系统。timeo这个值的单位是十分之一秒,表示 RPC 超时后进行第一次重传之前所需等待的时间。默认值是7/10。retrans在重大操作被中止或者控制台上显示 “server not responding” 消息之前必须重传的次数。hard如果 NFS 文件操作超时较多,则在控制台上报告 “server not responding”,并一直重新尝试。这是默认情况。intr如果 NFS 文件操作超时较多,并且是硬(hard)挂载,那么允许由信号中断文件操作,使操作中断。bg如果第一次 NFS 挂载尝试超时,则在后台重试挂载。suid这个值允许 set-user-identifier 位 (SUID) 或 set group-identifier 位 (SGID) 生效。
- 用以下命令在其他数据库分区服务器上挂载导出的文件系统: mount server1:/db2home /db2home
检验 NFS 锁监控程序
DB2 需要一个 NFS 锁监控程序来在集群中所有参与机器之间共享 instance-owner 目录。可以通过使用 chkconfig 命令来检验 NFS 锁监控程序是否已启用:
chkconfig nfslock
可以通过以下命令启用 NFS 锁监控程序和重新启动 nfslock:
- chkconfig nfslock on
- /etc/rc.d/nfslock restart
检验 NFS 锁和 NSM (Network Status Monitor) 服务
NSM 服务 rpc.statd 实现了一个重启通知服务,NFS 文件锁服务(rpc.lockd)将用到这个服务。可以使用以下命令检验这些服务的状态:
- ps -ef | grep rpc.statd
- ps -ef| grep rps.lockd
|
|
|
|
|
|