clearcase 网络规划和管理
此书面向有经验的系统和CC社区管理员,管理员需熟知cc脚本和命令行习惯写法、系统访问控制、网络协议、linux/unix/windows系统管理工具。
CC管理员有四个最主要关心的方面:
1、 主机和网络管理,包括安装和配置服务器主机,确保有效的客户端/主机连接,管理和分配服务器负载,调节client/server以达到最优性能;
2、 数据管理,包括版本库备份和恢复,数据导入导出,存储管理和定期维护;
3、 用户管理,包括用户和组帐号管理、解决用户访问中遇到的问题、对数据安全负责;
4、 license管理,包括license server管理、license key管理和license使用策略的确定;
用于存放CC软件版本,服务端和客户端host都从此处安装CC,当有新版本或者补丁时可以从此主机上重新安装CC;某些安装选项允许linux类主机无须安装CC而直接运行CC软件版本的可执行文件和二进制文件,windows则需要重新安装。release host上无须安装CC。
client host:安装CC客户端,客户端安装包括MVFS,扩展client host文件系统支持动态视图;
sever host:存储cc repository的server都称为server host,在server host上可以运行客户端,但是尽量少用,保持server的纯净。
license server host:cc community必须有license server,它提供license允许CC命令的执行,在安装cc client和server时都会指定一个license server。
registry server host: cc community必须有registry server,它为community成员提供一种定位共享资源(例如data repository)的方式。在安装cc client和server时都会指定一个registry server。
IBM Rational web platform server(RWP) host:网络中至少有一台主机充当RWP,它为CC web接口提供支持。
Network-attached storage (NAS) devices:
Non-ClearCase hosts running Linux or the UNIX system:没有安装CC的linux和unix服务器也能有限的访问CC数据。具体参考副本appendix C
绝大多数CC应用程序和command需要license才能运行;CC和CC LT因为不同的需求有不同的licnese管理机制;
CC数据存储在几种不同类型的库中:
存储在registry中的信息,此类信息使客户端无需知道repository的具体位置就能访问该repository。
vob中的版本数据,其中vob是由一个嵌入式数据管理系统实现的
view database,与vob一样由同一嵌入式数据管理系统实现
registry 数据的产生、修改和删除一般来说都是自动的,有些管理员的干预也是有必要的。
vob占用vob server上的一个目录,它包含嵌入式数据管理系统和一些相关文件;
vob管理员的职责:
vob可以任何CC使用者创建,但是一般来说由Vob管理员创建,因为vob对于community所有成员都相当重要。
导入数据
备份和恢复
管理网络访问
管理用户访问
定期维护
开发人员通过视图访问修改vob中的数据;有三种视图:
snapshot view 下载到本地,必须手动更新以同步其它view所作的修改
dynamic view CC客户端新建文件系统装载vob,自动同步其它checked in的元素
web view 与snapshot view相似,使用的是CC web interface
view是由开发者自行创建的,vob是由管理员创建的。
CC应用程序通过用户和群组认证来决定操作是否被允许执行。用户访问各CC host server的数据所使用的用户名和组名是一致的,即使host server存在不同的操作之上,其用户名和组名也是一致的,一般使用windows domain和network information system on unix and linux进行用户和群组管理。
CC是一个分布式应用程序,每个操作可能涉及多个服务器和多个服务器进程。服务不需要显示的配置、启动、停止和管理。下面主要介绍下如何查看服务的状态和错误信息,以及各服务在CC community中扮演怎样的角色。
两个服务器进程—albd_server and admin_server必须配置以支持本机的vob和view。
被配置以支持本机的vob和view:其它CC进程的启动依赖于它,在CC服务器端和客户端之间设置网络连接,管理CC scheduler任务的执行,响应registry的请求,响应license的请求,响应负载平衡请求(从一个远程clearmake)。
启动albd_server需要本地管理员权限。
工作原理:当一个客户端应用程序访问服务器端服务时,它使用remote procedure call(rpc)向albd_server发送一个请求,albd_server随即启动客户端请求的服务(如果没有启动话),albd_server回馈服务的端口号给客户端,然后客户端就可以直接与指定的服务进行会话了。
如果rpc的默认端口(371)被其它服务占用,则你需要将重新配置端口以使得rpc占用371或者自行配置albd_server使用其它UDP端口。
unix和linux下修改本地主机服务数据库或者NIS服务map
windows下修改file%SystemRoot%\System32\drivers\etc\services,如果没有相应的albd_server条目,则是使用默认的371端口。
另外,所有的cc community中host server上的albd_server都需要相同的端口来通信。
由albd_server启动,响应getlog或控制台的请求获取服务器log files。
处理资格认证映射。
管理特定view中的活动。可以通过cleartool endview –server停止视图服务。视图存储区中的.view不要通过text编辑器进行编辑,它由mkview\chview或相关命令改变。
每一个vob都有一个vob进程相对应,它管理vob存储池中的数据,只有vob owner和特权用户才能修改vob数据容器和存储池,除下列情况,vob_server会一直运行:执行rmvob;cc 停止或者服务器关闭。
vob_server开始执行时会读取vob存储区中的vob_server.conf,此文件的值由vob命令(例如vob_snapshot_setup)来管理,不要修改此文件。
管理那些响应客户端请求的vob数据库事务,当客户端应用程序需要修改、创建、读取vob中的数据时必须发送数据库事务给db_server,由db_server来处理vob中的数据和元数据。db_server服务于单个的客户端,但可操作任意数量的vob,在db_server数量不足时由aldb_server创建新的db_server连接到客户端,在客户端断开连接后,此db_server可以被其它客户端连接,在一段时间无连接后,由aldb_server自动结束。
每个vob server为每个vob产生一个或者多个vobrpc_server以响应view_server的请求。
每个主机上需要一个lock manager来决策对vob数据库的请求,它不是由albd_server启动,而与主机一起启动。
支持web访问
本地主机命令产生的错误会在远程主机上产生error log entry,CC提供了两个工具从远程主机获取log:cleartool getlog和CC管理控制台的server logs节点。对于windows服务器会在系统事件日志中体现。
log的具体位置在/var/adm/rational/clearcase/log下,包括albd_log\error_log\view_log\vob_log等。
一般而言,cc会在unix启动时自动启动,位置在ccase–home–dir/etc/clearcase;其脚本的意思是先启动albd_server进程,然后启动lockmgr进程,进而就可以加载vob库执行其它cc命令了。
# ccase–home–dir/etc/clearcase stop Stops Rational ClearCase.
# ccase–home–dir/etc/clearcase start Starts Rational ClearCase.
windows下
You can also use the Windows net start and net stop commands:
Type net stop albd to stop Rational ClearCase services.
Type net start albd to start Rational ClearCase services.
与其它进程不一样,MVFS运行与内核,它与操作系统一块启动停止。
NAS通过使用类似NFS(UNIX或者Linux)和CIFS(windows)的网络文件系统协议来为局域网中的其它主机提供网络资源。任何NAS设备都能为CC创建和使用的普通文件提供存储,例如发布区域、远程存储池。另外,由IBM认证的NAS设备可以作为vob和view存储设备。
使用IBM认证的NAS设备有以下几个优势:
高可扩展性:nas容量易于扩充,而一般主机的容量是有限的
高的柔性:将主机和存储区分离简化升级主机的进程
简化管理:nas拥有加强的备份和恢复功能
简化互操作:nas支持不同的操作系统同时访问,无须额外的跨平台访问软件
使用nas作为存储设备需要在一个健壮的网络内,各server host最好在同一个网段.
mount到unix下vob或者view server中的NAS必须以硬mount的方式mount,否则会出错;而windwos下需要使用net use命令访问NAS设备。
server host尽量使用静态IP。因为cc host在每次启动时会缓存其它host的ip,如果ip改变,会造成其它主机访问失败。
如果一个主机有两个ip,则需要在On Linux and the UNIX system, the file is /var/adm/rational/clearcase/config/alternate_hostnames. v On Windows, the file is ccase–home–dir\var\config\alternate_hostnames中写明ip对应的hostname,并且在其它主机中也需指明。
本节讨论UNIX上的NFS automount功能