clearcase 网络规划和管理

 

此书面向有经验的系统和CC社区管理员,管理员需熟知cc脚本和命令行习惯写法、系统访问控制、网络协议、linux/unix/windows系统管理工具。

 

1.1          管理员责任概述

CC管理员有四个最主要关心的方面:

1、 主机和网络管理,包括安装和配置服务器主机,确保有效的客户端/主机连接,管理和分配服务器负载,调节client/server以达到最优性能;

2、 数据管理,包括版本库备份和恢复,数据导入导出,存储管理和定期维护;

3、 用户管理,包括用户和组帐号管理、解决用户访问中遇到的问题、对数据安全负责;

4、 license管理,包括license server管理、license key管理和license使用策略的确定;

 

1.2          hosthost管理

1.2.1   发布版本主机(release host):

用于存放CC软件版本,服务端和客户端host都从此处安装CC,当有新版本或者补丁时可以从此主机上重新安装CC;某些安装选项允许linux类主机无须安装CC而直接运行CC软件版本的可执行文件和二进制文件,windows则需要重新安装。release host上无须安装CC

 

1.2.2   CC主机:

client host:安装CC客户端,客户端安装包括MVFS,扩展client host文件系统支持动态视图;

sever host:存储cc repositoryserver都称为server host,在server host上可以运行客户端,但是尽量少用,保持server的纯净。

license server host:cc community必须有license server,它提供license允许CC命令的执行,在安装cc clientserver时都会指定一个license server

registry server host: cc community必须有registry server,它为community成员提供一种定位共享资源(例如data repository)的方式。在安装cc clientserver时都会指定一个registry server

IBM Rational web platform serverRWP host:网络中至少有一台主机充当RWP,它为CC web接口提供支持。

Network-attached  storage  (NAS)  devices

Non-ClearCase  hosts  running  Linux  or  the  UNIX  system:没有安装CClinuxunix服务器也能有限的访问CC数据。具体参考副本appendix C

 

1.3          licensing and license 管理

绝大多数CC应用程序和command需要license才能运行;CCCC LT因为不同的需求有不同的licnese管理机制;

1.4          数据存储与数据管理

CC数据存储在几种不同类型的库中:

  存储在registry中的信息,此类信息使客户端无需知道repository的具体位置就能访问该repository

  vob中的版本数据,其中vob是由一个嵌入式数据管理系统实现的

  view database,与vob一样由同一嵌入式数据管理系统实现

1.5          CC registry

registry 数据的产生、修改和删除一般来说都是自动的,有些管理员的干预也是有必要的。

 

1.6          vob

vob占用vob server上的一个目录,它包含嵌入式数据管理系统和一些相关文件;

vob管理员的职责:

vob可以任何CC使用者创建,但是一般来说由Vob管理员创建,因为vob对于community所有成员都相当重要。

导入数据

备份和恢复

管理网络访问

管理用户访问

定期维护

 

1.7          views(视图)

开发人员通过视图访问修改vob中的数据;有三种视图:

  snapshot view 下载到本地,必须手动更新以同步其它view所作的修改

  dynamic view  CC客户端新建文件系统装载vob,自动同步其它checked in的元素

  web view snapshot view相似,使用的是CC web interface

view是由开发者自行创建的,vob是由管理员创建的。

 

1.8          user and group administration(用户和群组管理)

CC应用程序通过用户和群组认证来决定操作是否被允许执行。用户访问各CC host server的数据所使用的用户名和组名是一致的,即使host server存在不同的操作之上,其用户名和组名也是一致的,一般使用windows domainnetwork information system on unix and linux进行用户和群组管理。

 

1.9          CC服务器进程

CC是一个分布式应用程序,每个操作可能涉及多个服务器和多个服务器进程。服务不需要显示的配置、启动、停止和管理。下面主要介绍下如何查看服务的状态和错误信息,以及各服务在CC community中扮演怎样的角色。

两个服务器进程albd_server and admin_server必须配置以支持本机的vobview

 

1.9.1   albd_server

被配置以支持本机的vobview:其它CC进程的启动依赖于它,在CC服务器端和客户端之间设置网络连接,管理CC scheduler任务的执行,响应registry的请求,响应license的请求,响应负载平衡请求(从一个远程clearmake)。

启动albd_server需要本地管理员权限。

工作原理:当一个客户端应用程序访问服务器端服务时,它使用remote procedure call(rpc)albd_server发送一个请求,albd_server随即启动客户端请求的服务(如果没有启动话),albd_server回馈服务的端口号给客户端,然后客户端就可以直接与指定的服务进行会话了。

1.9.2   端口赋值

如果rpc的默认端口(371)被其它服务占用,则你需要将重新配置端口以使得rpc占用371或者自行配置albd_server使用其它UDP端口。

unixlinux下修改本地主机服务数据库或者NIS服务map

windows下修改file%SystemRoot%\System32\drivers\etc\services,如果没有相应的albd_server条目,则是使用默认的371端口。

另外,所有的cc communityhost server上的albd_server都需要相同的端口来通信。

1.9.3   admin_server

albd_server启动,响应getlog或控制台的请求获取服务器log files

1.9.4   credmap_server

 处理资格认证映射。

1.9.5   view_server

管理特定view中的活动。可以通过cleartool endview server停止视图服务。视图存储区中的.view不要通过text编辑器进行编辑,它由mkview\chview或相关命令改变。

1.9.6   vob_server

每一个vob都有一个vob进程相对应,它管理vob存储池中的数据,只有vob owner和特权用户才能修改vob数据容器和存储池,除下列情况,vob_server会一直运行:执行rmvobcc 停止或者服务器关闭。

vob_server开始执行时会读取vob存储区中的vob_server.conf,此文件的值由vob命令(例如vob_snapshot_setup)来管理,不要修改此文件。

1.9.7   db_server

管理那些响应客户端请求的vob数据库事务,当客户端应用程序需要修改、创建、读取vob中的数据时必须发送数据库事务给db_server,由db_server来处理vob中的数据和元数据。db_server服务于单个的客户端,但可操作任意数量的vob,在db_server数量不足时由aldb_server创建新的db_server连接到客户端,在客户端断开连接后,此db_server可以被其它客户端连接,在一段时间无连接后,由aldb_server自动结束。

1.9.8   vobrpc_server

每个vob server为每个vob产生一个或者多个vobrpc_server以响应view_server的请求。

1.9.9   lockmgr

每个主机上需要一个lock manager来决策对vob数据库的请求,它不是由albd_server启动,而与主机一起启动。

1.9.10  rwp

支持web访问

1.10      server logs:

本地主机命令产生的错误会在远程主机上产生error log entryCC提供了两个工具从远程主机获取log:cleartool getlogCC管理控制台的server logs节点。对于windows服务器会在系统事件日志中体现。

log的具体位置在/var/adm/rational/clearcase/log下,包括albd_log\error_log\view_log\vob_log等。

 

1.11      手动启动和停止cc:

一般而言,cc会在unix启动时自动启动,位置在ccasehomedir/etc/clearcase;其脚本的意思是先启动albd_server进程,然后启动lockmgr进程,进而就可以加载vob库执行其它cc命令了。

# ccasehomedir/etc/clearcase stop Stops Rational ClearCase.

# ccasehomedir/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运行与内核,它与操作系统一块启动停止。

1.12      CCNAS(网络存储器)

NAS通过使用类似NFSUNIX或者Linux)和CIFSwindows)的网络文件系统协议来为局域网中的其它主机提供网络资源。任何NAS设备都能为CC创建和使用的普通文件提供存储,例如发布区域、远程存储池。另外,由IBM认证的NAS设备可以作为vobview存储设备。

使用IBM认证的NAS设备有以下几个优势:

高可扩展性:nas容量易于扩充,而一般主机的容量是有限的

高的柔性:将主机和存储区分离简化升级主机的进程

简化管理:nas拥有加强的备份和恢复功能

简化互操作:nas支持不同的操作系统同时访问,无须额外的跨平台访问软件

使用nas作为存储设备需要在一个健壮的网络内,各server host最好在同一个网段.

mountunixvob或者view server中的NAS必须以硬mount的方式mount,否则会出错;而windwos下需要使用net use命令访问NAS设备。

server host尽量使用静态IP。因为cc host在每次启动时会缓存其它hostip,如果ip改变,会造成其它主机访问失败。

1.13      cc host has multiple network interfacescc host有两个网卡)

如果一个主机有两个ip,则需要在On Linux and the UNIX system, the file is /var/adm/rational/clearcase/config/alternate_hostnames. v On Windows, the file is ccasehomedir\var\config\alternate_hostnames中写明ip对应的hostname,并且在其它主机中也需指明。

1.14      ccNFS自动加载

本节讨论UNIX上的NFS automount功能