图 3: ClearCase环境的系统组件
3.1 VOB 服务器的规格
如果用户为ClearCase准备一个强大的专门的服务器,将更有可能成功安装ClearCase。虽然从技术上并没有什么能够阻止用户在ClearCase服务器上安装第三方的软件,但这已经证明不是一个好的选择。
VOB服务器定义为一台专门为了ClearCase的VOB服务的机器。在一个网络中可能有多台VOB服务器。为了理想的性能,VOB服务器应该具有以下特点:
3.1.1 专门的机器
VOB服务器应该只完成ClearCase任务:
不要在VOB服务器上进行编译、Build和测试工作。
不要在VOB服务器上运行ClearCase 视图。
ClearCase视图与VOB竞争同样的资源;为了管理需要,可以在VOB服务器上拥有少量的视图。
不要在VOB服务器上运行其它的第三方软件 (如DB2或者 Informix)。
VOB服务器不应该作为:
网关服务器或者 UUCP/Internet 代理服务器。
NFS 服务器,除为ClearCase VOB使用之外 (没有邮件功能,没有用户根目录功能)。
NIS/DCE/AFS 主服务器或者 Windows 域服务器。
Web服务器。
VOB服务器上不允许直接用户登陆。
然而,VOB服务器可以同时作为License服务器而不会产生明显的性能问题。在有一个VOB服务器的地方,把VOB服务器同时用作ClearCase注册服务器和License服务器是有意义的,这样可以降低系统失败点。
3.1.2 足够的内存
为获得较好的性能,在多数情况下建议全部VOB数据库的一半容量驻留在服务器的物理内存中。这是由于把VOB读到内存中可以充分降低对磁盘访问的需求,从而对增加性能有利。因此,一个只有256M内存的服务器只能支持很小的开发组的VOB。这个假定基于服务器上每个VOB的数据库信息都被同时访问,因此这是一个保守的估计。有可能VOB拥有大量的单元,这些单元与关联的小数据库相关。相对于其它需要更多的强烈的读/写操作(或者参与大的audited build)的VOB,这些处于只读状态的VOB(或者没有audited build)不需要那么多的资源。
3.1.3 快速的磁盘 I/O
对于经常处于日常更新状态如每晚的Build或者每日的开发工作的VOB来说,一个高性能的I/O子系统是必要的。下面这些点强调了对于ClearCase服务器有一个快速的磁盘I/O的必要性:
足够的磁盘控制器
对于频繁读写的VOB来说,建议在SCSI总线上,一个硬盘对应一个控制器。
磁盘阵列以及硬件的RAID系统也可以增加性能。
在一个通道上用菊花链连接几个硬盘将导致严重的性能降低。
如果磁盘控制器为多于一个的硬盘服务的话,它好支持多个通道。但好的性能是每个硬盘有专门的控制器和通道。
不要把VOB放在一个硬盘分区上,使用多个硬盘以平衡负载。
保存在硬盘上的VOB的小建议容量是2G。
依赖于项目产生多少代码,这个数据可以变化。
更大的项目可以考虑使用IBM ESS等的需求。
RAID
ClearCase可以在任何RAID配置下工作,但硬件RAID是的。
基于软件的RAID将显著地降低 ClearCase的性能 (特别是在Build时)。
相对于RAID 5 ,更加建议使用RAID 0+1 (镜像和带区)。
SAN
ClearCase 支持SAN,它支持的NAS解决方案由Network Appliance, Inc提供。
在大多数部署情况下,推荐的SAN方案是ESS。
使用 GSA作为NAS设备也可以被评估。
足够的网络带宽
ClearCase 视图和VOB的主机应该在同一个子网,从一个机器访问另一个不需要使用路由。
如果现有的LAN已经过于饱和,你可以考虑为ClearCase 机器加一个子网(例如,在VOB服务器和配置View的机器上加一块附加网卡)
好的解决方案是对于VOB服务器和视图客户端使用100MB的网络或者更高(FDDI, CDDI, ATM, 快速以太网,等等)。
在交换网络环境中使用ClearCase 时,支持10/100 baseT 的交换机通常已经足够了。
3.1.4 服务器资源优先级
在规划 ClearCase环境时,上面提到的因素都对ClearCase能工作得多好产生重要的影响(与项目大小相关)。机器资源影响的优先级顺序如下:
内存
磁盘 I/O (非常接近于内存)
网络
CPU