思步网

标题: 运用IBM Rational ClearCase ,成功搭建分布式的配置管理环境 [打印本页]

作者: 漂在生活    时间: 2009-1-29 20:58
标题: 运用IBM Rational ClearCase ,成功搭建分布式的配置管理环境
本文向大家介绍了使用 IBM Rational ClearCase搭建成功的分布式的配置管理环境所需要考虑的事情和步骤。

Rational ClearCase 是市场领先的软件配置管理(SCM)工具。它为 SCM 自动化提供了一种灵活的、经过验证的方法,可用于各种类型的软件项目。与其他的 SCM 工具一样,Rational ClearCase 提供了所有关键的 SCM 功能,例如保护并版本化软件工件的能力。同时,与其他的 SCM 工具不同的是,Rational ClearCase 还提供了几种高级功能:

并行变更:当两位或多位开发人员开发同一软件时,可能对软件工件进行并行变更。Rational ClearCase 提供了图形化合并与冲突解决功能,以统一变更。

环境与工作空间管理:ClearCase 允许您重新创建完整的项目开发环境,包括随需应变的完整开发工作空间。

并行开发:ClearCase 提供了广泛的功能,允许您同时创建与开发多个项目版本。

分布式开发:ClearCase 使团队在处于不同地点的情况下通过复制的知识库进行软件开发。

统一变更管理(UCM):使用 Rational ClearCase,您可以按照任务、缺陷和增强请求来组织变更,从而在一个更高的抽象层次上工作。这种基于活动的开发方法流线化了您的整个变更/配置管理工作流。

那么当我们购买了Rational ClearCase产品之后怎样才能搭建起ClearCase环境,并使他正常运转呢。本文就这个问题,介绍了部署的步骤及涉及到的问题,供大家参考。

制定部署计划

在搭建之前至关重要的一步就是要制定一个详细周密的部署计划。我们主要要考虑以下几方面的问题:

1. ClearCase服务器的选择

2. ClearCase的用户管理

3. Infrastructure 的相关问题

4. 是否从原有的配置管理工具中导入ClearCase

5. 与集成开发环境的集成

6. 使用UCM还是Base ClearCase

7. 创建试验环境

ClearCase服务器的选择

在选择服务器之前首先要看一下,是只买了ClearCase,还是也买了ClearCase Multisite.假如只买了ClearCase,您可以不必关心这里关于multisite的介绍。

ClearCase Multisite主要是用来支持跨区域的并行开发活动。比如一个开发项目由北京,上海共同完成。为了使两地的开发人员及时看到对方的代码改动,我们可以在上海和北京各搭建起一个ClearCase环境。再用ClearCase Mulisite,实现两边VOB的复制与同步。从而实现异地的并行开发。

假如你使用ClearCase Multisite.那么就要考虑,选择哪个地方(Site)的ClearCase Server作为主要的ClearCase Site,也就是把VOB建立在哪个Site。而哪些Site是需要把在主Site 建立的VOB 复制过去的.

就单个Site的ClearCase部署来说,ClearCase,和 ClearCase Multisite基本是一样的。下面我们的讨论主要集中在单个的Site.

在ClearCase中主要有4种server:

    * Register server
    * License server
    * Vob server
    * View server

他们可以被放在一台机器上,也可以分布在几台机器上。可以根据单位的具体情况来决定用几台机器。

ClearCase支持很多的硬件及软件平台。请访问 : http://www-1.ibm.com/support/docview.wss?rs=0&uid=swg21136950来确定使用什么样的软硬件平台。这里要强调的一点是,在选择的时候请根据要放进ClearCase的数据量大小,即,使用ClearCase的用户数,合理的选择服务器(CPU,内存及硬盘容量,操作系统是主要要考虑的因素)。

ClearCase的用户管理

在Windows 平台上,ClearCase的用户管理是倚赖于Windows域服务器的域用户管理。所有的ClearCase用户都必须是域用户,在使用ClearCase时也必须用相应的域用户登陆到域才行。

所以首先我们必须有一台域服务器(他完全可以既做ClearCase服务器又做域服务器),然后ClearCase要求我们至少要在域里创建一个新的组-ClearCase特权组,和一个域用户-albd账户(这个账户属于域管理员组,本地管理员组,和Clearcase特权组),供 ClearCase使用。同时ClearCase还推荐再建立一些其他的组-ClearCase用户组和组用户-ClearCase用户帐户(管理员及最终用户帐户), 供ClearCase的用户使用。

在UNIX/LINUX 里我们是用组和组用户来进行用户管理的。组和组用户的建立规则与Windows上是一样的。 ClearCase的 albd账户是启动 ClearCase最重要服务-Atria Location Broker 的用户,要求他的账户密码永不过期。这和一些单位的security要求可能会有冲突。需要我们为ClearCase争取这个特权。

Infrastructure 的相关问题

有一些软件和ClearCase是有冲突的,例如:

    * 一些 VPN 客户端 ( Shiva 等)
    * 一些病毒扫描工具

而且ClearCase是为局域网设计的,在广域网里,没有办法使用ClearCase.

从原有的配置管理工具中导入ClearCase

目前市场上的配置管理工具很多,在打算用ClearCase之前,公司里可能已经使用了别的工具,现在想转到 ClearCase 上。所以就要做一个移植的动作。ClearCase 为以下的配置管理工具提供了移植工具:

ClearCase, RCS, SCCS, PVCS SourceSafe, CVS

但是假如想从除此之外的其他配置管理工具里做移植,你就要自己想办法了。

建议只将文件最新的版本移植到 ClearCase里,而不是所有的版本。移植的过程可以是,从CM系统导出到操作系统的文件系统中,再从文件系统导进ClearCase.

与集成开发工具的集成

ClearCase与一些集成开发工具紧密地集成在了一起,假如你想在这些集成开发工具里使用ClearCase将是非常方便的。

它们包括:

    * .NET
    * WebSphere Studio Application Developer (WSAD)
    * Eclipse

假如你想在其他的集成开发工具里配置ClearCase,将会是一件困难的事情。

使用UCM还是Base ClearCase

部署ClearCase很重要的一点就是到底采用哪种ClearCase模式。在ClearCase里有两种使用模式。

    * 一般目的的 SCM ,通常称为 Base ClearCase。
    * 基于活动的 SCM ,称为 Unified Change Management(统一变更管理)或者简称 UCM.

Base ClearCase使开发人员工作在一个文件共享的并行开发环境中。项目经理可以定制一组配置规则,来明确开发人员如何在一起进行并行开发。

UCM是IBM Rational所推崇的一种配置管理模式。他在Base ClearCase的基础上进行了一层封装。它已经订制好了一套配置管理的模式,规则,包括项目,开发活动,开发流,基线等。而Base ClearCase则为用户提供了空间,去定制适合自己项目的配置管理模式,规则。

假如我们选定了使用UCM的话,我们需要考虑以下几方面的事:

Project VOBs 的数量
流(Stream)的结构
构建(Component)的结构


假如我们选定了使用Base ClearCase的话,我们需要考虑以下几方面的事:

Administrator VOBs 的数量
Branch的结构


假如UCM不能够满足你的需求,Base ClearCase 很可能还会是一个不错的选择。

建立一个测试部署的环境

为ClearCase创建一个测试环境吧。因为搭建ClearCase环境确实是一项较为复杂的工作,这其中可能会遇到一些意想不到的问题。假如我们可以有一个环境,来测试部署,将会是一件非常好的事。需要测试的内容主要有:

搭建服务器
从其他配置管理工具中导入ClearCase
在集成开发工具中配置ClearCase
Multisite测试
branch的结构
UCM的结构
作者: 漂在生活    时间: 2009-1-29 20:58
部署

当一切准备工作就绪,恭喜你,可以开始正式部署ClearCase 了。

正式部署

在正式部署之前,请将部署的时间表提前公布给用户,好让大家有个准备。最好在晚上或者周末进行工作,以免影响大家正常工作。另外在部署的时候,最好将原来的配置管理系统锁住,以避免发生冲突。

还有一件必不可少的工作就是,制定对最终用户的培训计划。

用户Getting Started

想让用户们可以正常使用ClearCase,我们首先要为他们创建一份Getting Started的文档,告诉他们去哪里找安装程序,如何安装,如何察看自己机器上的ClearCase已正常运行,如何创建View, check out, check in 文件等。假如有可能的话,可以安排一次one on one的培训,对每个用户进行单独辅导。我们还可以在系统中创建一个测试VOB,让用户们在这里学习ClearCase的种种操作,以保证他们能尽快开始正常使用ClearCase.

用户反映

我们要关注用户们的反应。用户们一般都不喜欢变化。他们可能已经有了一种熟悉的配置管理工具,而它不是ClearCase。他们也许不想转到ClearCase, 很忙没有时间学习ClearCase,或者使用时遇到不少问题。

结果就是在ClearCase部署之后,会有人抱怨由于ClearCase使他们没有办法按时完成工作了。

要有心理准备。

如何解决这个问题呢,培训是关键。
作者: 漂在生活    时间: 2009-1-29 21:02
培训

对最终用户的培训

这是绝对有必要的。最好在部署一完成,就对用户进行培训。为他们量身订造适合他们的培训教程,并把教程发给每个人。甚至在没有部署之前我们就可以对用户进行一个基本的培训,介绍ClearCase等.

对ClearCase管理员的培训

这当然也是绝对必要的。最好让ClearCase管理员在制定部署计划前就去IBM Rational 参加特别为他们设计的培训.

ClearCase 管理员

必备的素质

ClearCase管理员是成功部署 ClearCase的关键。在挑选管理员时,我们先要看看他是否具备以下的素质:

开发的经验
使用其它配置管理工具的经验
Windows 和UNIX操作系统的经验
耐心,恒心
创造力
较强的解决问题能力

同时他最好还能拥有下面的素质:
深受同事爱戴
曾经是其它配置管理工具的管理员
较丰富的网络及操作系统知识
。。。

ClearCase管理员必须是ClearCase的坚定拥护者

ClearCase使用之初,用户们可能会问管理员,ClearCase是否会让一切都工作的很好,他要能坚定地说是。他要懂得ClearCase的优点,为什么选择ClearCase而不是其他别的配置管理工具。

预备管理员

通常我们需要一个主要的ClearCase管理员,及一个预备管理员。以防主要ClearCase管理员不在的情况,或者有什么棘手的问题需要帮助的情况。要确保预备管理员受过和主要管理员一样的培训。当然有没有预备管理员还要根据单位的具体情况而定。

管理员工作量曲线


从曲线我们可以看出,ClearCase管理员在部署过程中工作量是满负荷的,但随着ClearCase 部署的完成,逐渐的问题会越来越少,管理员的工作量也会随之减小趋于稳定。

影响曲线的因素主要有:

ClearCase管理员的数量
部署中遇到的问题数量
是否从其他配置管理工具中导出并倒入ClearCase,从哪一种使用者的数量,及对ClearCase的经验

管理员的工作

作为一个ClearCase管理员到底有多少工作要做呢。这取决于:

使用ClearCase 的人数
用户对ClearCase的熟悉程度
使用ClearCase模式的复杂度
Infrastructure的情况,如网络环境,服务器性能等

一般来说50至100个用户需要有一位管理员来支持。当ClearCase运转稳定后,ClearCase管理员,可以去承担一些其他的工作。

解决问题

假如有一天你的用户向你报告说,所有的 ClearCase操作都是那么的慢,checkin一个文件要等10分钟,几乎不能正常工作了。那我们就得去看看到底是出了什么问题。

首先不要自然的就认为是ClearCase的问题。用户们总是一遇到问题就觉得是ClearCase出问题了,其实常常是其他原因,例如,网络的原因,客户端操作系统的问题等等。

Rational ClearCase 的logs 和操作系统的logs 对分析问题是非常有帮助的。我们可以收集这些logs,通过以下途径,得到IBM Rational 的帮助:

IBM Rational 有非常丰富的知识库,是前人经验的总结,进入下面网址,将你问题的关键字输入,就很有可能能找到答案:

http://www-306.ibm.com/software/rational/support/probsub.html

去Rational developerWorks论坛寻求帮助

http://www.ibm.com/developerworks/rational/community/

向IBM Rational 技术支持团队提交问题

1) 访问IBM Rational的技术支持主页:http://www.ibm.com/software/rational/support/ 在左例的浏览条中选择"Submit & Track Problem"

2) 所有的IBM Rational客户都属于"IBM Passport Advantage"计划,请选择ESR (Electronic Service Request - 电子服务请求) 。

使用电话来获得技术支持

中国地区的客户也可以使用免费电话10800-6100-349(北方)或10800-2610-349(南方)来请求IBM Rational的支持。

总结

其实部署,使用和维护ClearCase并不是一件非常痛苦的事情。关键是要把计划做好。为用户和管理员提供所需的培训。同时拥有一位非常优秀的ClearCase管理员也是至关重要的。

注:

VOB(Versioned Object Base): 版本对象库,ClearCase 数据的存储库,它存储了处于版本控制下的所有不同文件,目录和元数据。

View: 视图,它可以选择所指定任务的每一个文件或目录的适当版本,并呈现它们。

Register Server: 存储VOB, View 等的注册信息。

License server:存储License Keys 供其它ClearCase 服务器或客户端连接获取License。

View Server:存储View 的服务器。

VOB Server:存储VOB的服务器。



俞霁, IBM 中国软件开发中心软件工程师。过去的一年半里一直从事ClearCase 相关的工作。
作者: testlike    时间: 2009-6-8 19:21
怎么没有Borland silk产品的模块
作者: 毓琴盛    时间: 2013-2-28 09:22
发发呆,回回帖,工作结束~
作者: huauecc    时间: 2013-3-2 04:55
报告!别开枪,我就是路过来看看的。。。
作者: bucuode332    时间: 2013-3-4 06:30
元芳你怎么看?
作者: 三爷。    时间: 2014-5-2 13:43
其实,很多情况下都是这样的,习惯就好。
作者: 张大民    时间: 2014-5-7 08:44
众里寻他千百度,蓦然回首在这里!
作者: bloom.(绽放)    时间: 2014-6-20 08:49
以我的经验来看,楼主的想法是可以执行的~
作者: 空岛里的戀少女    时间: 2014-7-11 14:27
very good.
作者: 呆葩    时间: 2014-8-8 12:26
以我的经验来看,楼主的想法是可以执行的~
作者: 发动机V8    时间: 2014-9-2 16:24
支持,赞一个
作者: 花香洇染    时间: 2014-9-2 19:28
打酱油的人拉,顺便赚点金币
作者: 会考加油。    时间: 2014-9-14 12:43
很有借鉴意义,先收藏了,谢谢楼主。
作者: 烟花    时间: 2014-9-18 16:40
没人回帖。。。我来个吧!
作者: 小呆呆    时间: 2014-10-6 19:58
看起来不错
作者: 弃忆投明。    时间: 2014-10-31 19:57
以我的经验来看,楼主的想法是可以执行的~
作者: 暴力倾向女。    时间: 2014-11-23 13:57
看起来不错
作者: 闲蛋i    时间: 2015-3-12 08:13
我了个去,顶了
作者: 隐痛@    时间: 2015-5-21 20:57
没人回帖。。。我来个吧!
作者: 童年勾勒了    时间: 2015-11-8 16:50
以我的经验来看,楼主的想法是可以执行的~
作者: 别停留i    时间: 2017-7-26 10:35
以我的经验来看,楼主的想法是可以执行的~
作者: 放飞的风筝。    时间: 2017-9-13 22:10
看起来不错
作者: 浪剑飞舟    时间: 2018-6-6 18:43
我了个去,顶了
作者: 墨雪卿    时间: 2018-6-18 16:12
看起来不错
作者: 小狐狸    时间: 2018-7-11 16:13
路过 帮顶 嘿嘿
作者: 寂寞的花开    时间: 2018-7-18 15:12
有空一起交流一下。
作者: 布布    时间: 2018-7-23 14:40
我是个凑数的。。。
作者: 魏你晨迷    时间: 2018-11-11 16:46
没人回帖。。。我来个吧!
作者: Aerin    时间: 2018-12-9 09:25
不错 支持一个了
作者: ∞华丽的谎言    时间: 2018-12-19 10:06
很有借鉴意义,先收藏了,谢谢楼主。
作者: 东方男孩    时间: 2019-1-5 08:49
very good.
作者: 千总爆有范儿    时间: 2019-1-10 07:03
这么强,支持楼主,佩服




欢迎光临 思步网 (http://www.step365.com/) Powered by Discuz! X3.2