Linux is an excellent choice for an IBM Rational Clearcase Server installation. A Unix/Linux platform is the universal Clearcase server which clients of all platforms can connect. This is NOT true if Microsoft Windows is chosen as your Clearcase Server platform. If Microsoft Windows is chosen as your Clearcase server platform, then only Microsoft Windows clients may connect to the server.
The Clearcase Server installation is very specific as to which versions of Linux are supported. Currently only Red Hat Enterprise Linux and SuSE Enterprise Linux are supported. The installation PERL scripts check the contents of /etc/redhat-release or /etc/SuSE-release for the appropriate contents. The installation is so specific and tied to the specific kernel of that release. I attempted to install on versions much like the intended release but differences in the kernel data structures being passed to the Clearcase mvfs loadable module prevented a sucessful install. I recommend that one avoid pain by installing on the approved release of Linux.
Dynamic views: Dynamic views employ the Clearcase MVFS file system which allow users to imediately view changes made by other users once files (or directories) are checked in. This is the prefered method of using Clearcase and the installation detailed in this tutorial.
Snapshot views: These are used by ClearCase LT and are created by Clearcase by copying directories and files to the user's local platform. Changes can not be viewed until an update is performed on the local files.
Preparation:
As user "root"- Requires RPM packages gcc, glibc-devel, ncurses-devel, kernel-source (for 2.4.XX kernels).
RHEL Notes:- RHEL3: Install RPM kernel-source. (See: /usr/src/linux-2.4.XXX)
- RHEL4: Clearcase 6.0 comes with a precompiled loadable module for RHEL4 so no compiling of kernel modules is required. RHEL4 also includes source (See: /usr/src/kernles/2.6.XXX) with the binary release of the kernel.
SuSE Notes:- For SuSE, there are two kernel-source RPMs.
One RPM resides on the "Source" DVD-2 and the other resides on the "Installation" DVD-1.
Use the kernel-source RPM found on the "Installation" DVD-1.
This one will register in the RPM database and creates the directories
expected by the Clearcase installation program.
Check with the command: rpm -q kernel-source - The SuSE kernel-source RPM will not produce a
".config" file for the kernel compilation.
Produce this by: zcat /proc/config.gz > /usr/src/linux/.config
- Prepare kernel source: (not required for RHEL3, RHEL4)
cd /usr/src/linux
Test to see if kernel source compiles but do not install. (not necessary, just a test)
make oldconfig
make clean
make bzimage
- Create modules target directory: mkdir /lib/modules/fs
- Edit /etc/services and add the following:
albd 371/udp
- Create user "vobadm" in group "devel" (use group appropriate for your environment)
- cd /usr
- Create release area: mkdir clearcase_rls
This directory is used to unpack the Clearcase tar archive and for applying patches to this area. It can then be an exported file system for use in client Clearcase installations so the installation files and patches do not have to be redeployed on each and every client. - chown vobadm:devel clearcase_rls
Installation:
As user "vobadm"- Use working directory for Clearcase server release:
cd /usr/clearcase_rls
(Discretionary. i.e. /opt/rational/clearcase_rls or anything you want.) - Copy Clearcase server software and patches from CD:
cp /media/cdrecorder/* . - chmod +w *
- uncompress C54UDNA.tar.Z
Note:- This tar archive is good for installing Clearcase server and Clearcase client. It is the options chosen during installation and configuration which differentiate a server installation from a client installation.
- Red Hat: uncompress command is included in the "ncompress" RPM
- SuSE: uncompress command is included in the "gzip" RPM
- tar xf C54UDNA.tar
- Create patches directory: (if it doesn't exist)
mkdir 2003.06.00/rhat_x86/clearcase/patches - cp clearcase_p2003.06.00-28.rhat_x86.tar.gz 2003.06.00/rhat_x86/clearcase/patches
- cp clearcase_p2003.06.00-29.rhat_x86.tar.gz 2003.06.00/rhat_x86/clearcase/patches
- Extract patches:
- tar xzf clearcase_p2003.06.00-28.rhat_x86.tar.gz
- tar xzf clearcase_p2003.06.00-29.rhat_x86.tar.gz
- Apply patches to release area:
- cd clearcase_p2003.06.00-28/clearcase/install
- ./apply_patch
- cd /usr/clearcase_rls/2003.06.00/rhat_x86/clearcase/patches/clearcase_p2003.06.00-29/clearcase/install
- ./apply_patch
- Configure installation:
- cd /usr/clearcase_rls/2003.06.00/rhat_x86/clearcase/install
- service ypbind stop
- ./site_prep
- service ypbind start
Site default Clearcase license host: [Unknown] ccserver Site default Clearcase registry host: [Unknown] ccserver Site default Clearcase registry data backup host: [Unknown] ccserver Site default Clearcase registry region: [Unknown] devel Would you like to change the existing host data for setuid operation [no] Would you like ClearCase Remote Administration to be enabled on clients [no] Port on which Rational Web Platform listens for HTTP requests: [81] Account name for Rational Web Platform server: [nobody] Group name for Rational Web Platform server: [nobody]Note:
- View all the options: site_prep -help
- The region separates MS/Windows and Unix/Linux systems into two identifiable platform types.
Different region names have to be chosen for the two platform types. i.e.:
- Unix: dev or unix
- MS/Windows: dev_mswin or mswin
[Potential Pitfall]: Turn off the NIS service "ypbind" if you get the following error:
ERROR: The albd_server is not correctly registered in the servicesThis results when the installation expects the services file to be fed by NIS and ignores the /etc/services file you edited and the added port albd/371.
file of the Network Information database.
Turn off ypbind:
- RHEL: service ypbind stop
- SuSE: /etc/init.d/ypbind stop
Interaction with install program install_release:
1. Local Install: Install occurs on the local host.Note:
2. Remote Install: Install occurs on a single remote host.
3. Multiple Remote Installs: Install occurs on a set of remote hosts.
4. Local Deinstall: Deinstall occurs on the local host.
Method of installation>> 1
1. Standard: Regular installation, allowing links to this release area.
2. Full-copy: Regular installation, with no links to this release area.
3. Mounted: Host install via mounted or pre-populated
/opt/rational/clearcase or CLEARCASEHOME.
4. Link-only: Host install via a symbolic link to this release-area.
5. Deinstall: Deinstall software from the local installed host.
Model of installation>> 1
[/opt/rational]:
[/usr/clearcase_rls/2003.06.00/rhat_x86]:
1 : ClearCase Minimal Developer Installation
* 2 : ClearCase Server-only Installation
* 3 : ClearCase MultiSite Full Function Installation
* 4 : ClearCase Web Interface Server
* 5 : ClearQuest Integration with Clearcase
6 : ClearDDTS Integration with Clearcase
7 : Clearcase Mainframe Connectors
8 : Clearcase MultiSite Shipping Server-only Installation
* 9 : ClearCase Full Function Installation
a : Select all - Chooses 1 - 9 f : Finish selection x : Toggle expanded descriptions r : Reset selections q : Quit Selection number(s)>> f ClearCase License Server Host[ccserver]:
ClearCase Registry Server Host[ccserver]:
ClearCase Registry Backup Host(s)[ccserver]:
ClearCase Registry Region[devel]:
WARNING: Install was unable to find a prebuilt vnode module
for this system. You will have to rebuild your vnode module.
Do you want to rebuild the vnode module when install is
complete (yes, no, quit, help)[yes]:
Default is [/lib/modules/2.6.8-24-default/build]:
Extended VOB support files in the VOB database to grow beyond 2 Gigabytes.
Install this feature? (yes, no, quit)[no]:yes
Port on which Rational Web Platform listens for HTTP requests [81]:
Enter account name for Rational Web Platform use [nobody]:
Enter group name for Rational Web Platform use [nobody]:
Continue installation?(yes, no, quit)[yes]:
Do you want to SPTOP the installation (yes, no, quit, help)[yes]:no
Building /lib/modules/fs/mvfs.o and /lib/modules/fs/vnode.o
See supported kernel modules: /opt/rational/clearcase/etc/conf/linux*
ERROR: /var/adm/rational/clearcase/mvfs/vnode_src
See README.txt
- An error free install will start the clearcase service.
- Selecting "a : Select all" will select options 1 through 9.
- The region is for a common set of clients. The Unix and Linux systems will be in a separate "region" than the MS/Windows systems. i.e. use devel (unix) and devel_win MS/Windows.
- If installation fails, run again and choose option "4. Local Deinstall".
Then you are ready to perform a fresh install. - The server installation installs the license server.
[Potential Pitfall]: If the release file is not that expected by the installer, then the installer aborts.
./install_releaseThe following files are scanned by the installer's PERL script /usr/clearcase_rls/2003.06.00/rhat_x86/clearcase/install/Kernel.pl
ERROR: Unsupported SuSE release.
Aborting install
- Red Hat: /etc/redhat-release
- RHEL4 Server:
Red Hat Enterprise Linux ES release 4 (Nahant)
- RHEL4 Workstation:
Red Hat Enterprise Linux WS release 4 (Nahant)
- RHEW3:
Red Hat Enterprise Linux WS release 3 (Taroon Update 5)
- RHEL4 Server:
- SuSE: /etc/SuSE-release
Building the kernel modules:
- cd /var/adm/rational/clearcase/mvfs/vnode_src
- Clean/purge old files:
make cleano - Create kernel config parameter file:
make vnode_param.mk.config
This creates file: vnode_param.mk.configRATL_EXTRAFLAGS := -DSLES8
LINUX_KERNEL_DIR=/lib/modules/2.6.8-24-default/build
CONFIG_MVFS=y
CONFIG_MVFS_VNODE=m - make
- make install
- View/verify that kernel modules were created:
- RHEL4 Kernel 2.6: ls -l /lib/modules/2.6.8-24-default/kernel/fs/mvfs/
Result: mvfs.ko vnode.ko - RHEL3 Kernel 2.4: ls -l /lib/modules/fs
Result: mvfs.o vnode.o
- RHEL4 Kernel 2.6: ls -l /lib/modules/2.6.8-24-default/kernel/fs/mvfs/
Notes from attempt to install on SuSE Professional Linux 9.3/2:
- First I could not do it. Use an approved release.
- Previous to kernel 2.6.9 the Linux kernel used the macro "EXPORT_SYMBOL_NOVERS()". After Linux kernel 2.6.9, the macro was renamed to "EXPORT_SYMBOL()". (as with SuSE 9.3 and kernel 2.6.11.) This kernel macro "EXPORT_SYMBOL_NOVERS()" is used in the Clearcase source file /var/adm/rational/clearcase/mvfs/vnode_src/mvfs_param.c and thus incompatible. Editing the file only lets you find the next error.
- The argument list uses an argument that is not declared in the kernel
header: /var/adm/rational/clearcase/mvfs/vnode_src/mvfs_linux_mvops.c
'wait' undeclared in function mvop_linux_lockctl
err = posix_lock_file(realfp, lock_p, wait);
Solution: Remove argument 'wait'??? - There is now a mismatch in the definition of the data structure cl_timeout. Removing reference to cl_timeout.to_current allows compilation but the kernel will not load the module! I failed.
- Comparison of Linux distributions with their kernel, glibc and gcc releases.
- USE RHEL4 and avoid the pain! (or a clone like Centos or Whitebox)
[Potential Pitfall]: SuSE systems - One of the last steps of the install tries to put the init script in a Red Hat init script directory which does not exist on SuSE. Perform this manually.
ERROR: Unable to copy /var/adm/rational/common/rwp/conf/rwp_shutdown to /etc/rc.d/init.d/rwp_shutdownNote: SuSE uses the init directory /etc/init.d/
Cleanup:
If it all fails and you want to wipe your system clean, run install_release again and choose option "4. Local Deinstall" or manually perform a cleanup as follows:- rm -Rf /lib/modules/2.6.8-24-default/kernel/fs/mvfs/*
or
RHEL3 kernel 2.4.XX: - rm -Rf /lib/modules/fs/*
- rm -Rf /var/adm/rational
- rm -Rf /opt/rational
As user "root"
- Assign a registry password: /opt/rational/clearcase/bin/rgy_passwd
You will be asked to supply a password. - Create VOB storage area:
- mkdir /vob
chown vobadm:devel /vob - mkdir /path-goes-here/vobstore
chown vobadm:devel /path-goes-here/vobstore - mkdir /path-goes-here/viewstore
chown vobadm:devel /path-goes-here/viewstore
- mkdir /vob
- Export VOB storage areas using NFS:
NFS config file (example): /etc/exports/path-goes-here/vobstore 192.168.1.0/255.255.255.0(rw)
Note: The directory /vob is an internal mount generated by Clearcase and not an NFS mount. Pick up NFS exports configuration: exportfs -a
/path-goes-here/viewstore 192.168.1.0/255.255.255.0(rw)
See the YoLinux Systems administration tutorial covering NFS.
As user "vobadm"
- Expand path to include Clearcase commands: (add to .bashrc file)
export PATH=/opt/rational/clearcase/bin:$PATH - Install license and test:
- cp license.db /var/adm/rational/clearcase/
(Note: This is soft linked to /var/adm/atria/) - Test with command: clearlicense
- Host ID: /opt/rational/clearcase/bin/clearlicense -hostid
- Linux Host ID: hostid (not necesarily unique for Linux and thus not usually used.)
- MAC address: ifconfig
- cp license.db /var/adm/rational/clearcase/
- Make a storage location for VOB:
- cleartool mkstgloc -vob -region region-name -host ccserver -hpath /path-goes-here/vobstore -gpath /path-goes-here/vobstore vobstore /path-goes-here/vobstore
- cleartool mkstgloc -view -region region-name -host ccserver -hpath /path-goes-here/viewstore -gpath /path-goes-here/viewstore viewstore /path-goes-here/viewstore
- Test Clearcase storage locations: cleartool lsstgloc
This will list the full paths of the "vobstore" and "viewstore" locations. - Create the VOB:
- cleartool mkvob -region region-name -tag /vob/PROJECT -stgloc vobstore -public
You will be asked to enter the registry password assigned with the rgy_passwd command. - cleartool mkview -region region-name -tag vobadm_proj -stgloc viewstore
- cleartool mkvob -region region-name -tag /vob/PROJECT -stgloc vobstore -public
- Mount the VOB: cleartool mount -a
- View VOB info: cleartool -ver
Shows VOB db schema version. The current Clearcase schema version for 2003.06.00 is 54. - cleartool setview vobadm_proj
- Create main directory:
- Optional - make sub-directories: cleartool mkdir subdir-name
Or import (clearfsimport) as shown below. - cd /vob/PROJECT
- Optional - make sub-directories: cleartool mkdir subdir-name
- Show VOBs: cleartool pwv
- Show Views: cleartool lsview
- Show Regions: cleartool lsregion
- Show VOBs: cleartool lsvob
- Show Configspec: cleartool catcs
- Import files and directories:
- cleartool setview your_view
- clearfsimport -recurse -identical -preview /source/directory/path/* /vob/PROJECT/path
(Preview option shows what will happen when command executes) - clearfsimport -recurse -identical /source/directory/path/* /vob/PROJECT/path
(Perform actual import)
[Potential Pitfall]: The command line option "-identical" should only be used for the initial import and NOT for later revisions as file date differences will force new entries even though the files may be identical.
Cleanup: (Removing VOBs from system)
- cleartool rmvob /path-goes-here/vobstore/PROJECT.vbs
- cleartool rmview -force -tag vobadm_proj
The "slocate" command is run each day to create a database of all files on the system. It ignores NFS mounted file systems (thus Clearcase clients need not worry) but will search your Clearcase server storage areas which have Clearcase file storage names and not the ones you see when in a view. Configure this cron job to ignore Clearcase repositories.
Slocate cron file: /etc/cron.daily/slocate.cron
#!/bin/shThis uses the configuration file /etc/updatedb.conf.
. /etc/updatedb.conf
renice +19 -p $$ >/dev/null 2>&1
/usr/bin/updatedb
Edit the configuration file: /etc/updatedb.conf
PRUNEFS="sysfs selinuxfs usbdevfs devpts NFS nfs afs sfs proc smbfs cifs autofs auto iso9660 udf mvfs"Note the addition of mvfs to the file system types to be ignored and /path-goes-here/viewstore, the viewstore directory to be ignored.
PRUNEPATHS="/tmp /usr/tmp /var/tmp /afs /net /sfs /selinux /udev /mnt/floppy /path-goes-here/viewstore /vob /view"
export PRUNEFS
export PRUNEPATHS
Clearcase Web Access uses Linux system authentication which uses md5 encrypted passwords. This requires Clearcase patches 19, 37 and 38 in adition to 28 and 29 as shown in the installation above.
Access via the URL:
- http://clearcase-server-name/ccweb
- https://clearcase-server-name/ccweb
Pam authentication configuration: Clearcase web uses the system PAM login authentication. The configuration is identical to "login". Thus:
cp /etc/pam.d/login /etc/pam.d/clearcase
[Potential Pitfall]: The init service "rwp_startup" (Rational Web Process) may hang on system boot. The last visible message on the screen is "Enabling Swap Space". The system then hangs indefinitely. The only fix is to enter "Interactive Mode" during the boot process by entering the letter "I". Read the boot messages and enter the mode when the oportunity is displayed in the boot messages by entering "I". Accept all init services by pressing the "Enter" key to take the yes [y] default. When presented with the option to launch "rwp_startup", enter the letter "N" for no, and skip this process.
To fix CCWeb and enable it to work, fix the broken link: /opt/rational/common/rwp/conf/include/msweb.conf by creating and linking to the file: /var/adm/rational/clearcase/config/msweb.conf
# # Licensed Materials - Property of IBM # Rational ClearCase # (C) Copyright IBM Corp. 2003, 2004 All Rights Reserved # US Government Users Restricted Rights - # Use, duplication or disclosure restricted by GSA ADP Schedule # Contract with IBM Corp # # This is a template for the MultiSite Web Interface configuration file. # It should not be modified in its installed location. # Instead, it should be copied to the host's ClearCase config directory # (Unix: /var/adm/rational/clearcase/config/msweb.conf, # NT: CCASEHOME\var\config\msweb.conf) and modified there. # # # The following should be added at install time to support mapping the # MultiSite web interface to the Rational Web Platform. Install should # substitute the ClearCase home directory for CCASEHOME # ScriptAlias /msweb/bin "/opt/rational/clearcase/msweb/bin" Alias /msweb "/opt/rational/clearcase/msweb" <Location /msweb> DirectoryIndex bin/msweb Options -Indexes </Location> SetEnv LANG CThanks to Tech Support at IBM Rational ClearCase for this file.
(msweb refers to a web admin tool for Multisite)
Note, your system requires Java installation and browser plug-in configuration for Java. See YoLinux Mozilla / Firefox web browser Java configuration.
Note: I have been running both the native Apache server which was issued with RHEL4 on port 80 and the Clearcase web server on port 81 with no apparent problems.
Steps to support MS/Windows clients:
On Clearcase server:
- Create a region for use by MS/Windows clients: cleartool mkregion -tag devel_win
- Show Regions: cleartool lsregion
There are two methods of exporting the filesystems from the Clearcase server:
- Export the Clearcase filesystem system using NFS and use an NFS client on the MS/Windows client to mount the exported filesystem. This is fast and free of many MS/Windows authentication hagups.
- Export the Clearcase filesystem using SAMBA.
2) Use SAMBA to export two shares:
- vobstore
- viewstore
File: /etc/krb5.conf
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = win-domain.domain.com dns_lookup_realm = true dns_lookup_kdc = true [realms] win-domain.domain.com = {
kdc = authserver.win-domain.domain.com:88
admin_server = authserver.win-domain.domain.com:88 } [kdc] profile = /var/kerberos/krb5kdc/kdc.conf [appdefaults] pam = { debug = false ticket_lifetime = 36000 renew_lifetime = 36000 forwardable = true krb4_convert = false }
File: /etc/samba/smb.conf
[global]
workgroup = win-domain server string = clearcase-server Samba Server printcap name = /etc/printcap load printers = yes cups options = raw log file = /var/log/samba/%m.log max log size = 50 password server = authserver socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 dns proxy = yes # SHare definitions idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 template shell = /bin/false realm = win-domain.domain.com security = ADS windbind use default domain = no [printers] comment = All Printers path = /var/spool/samba browsable = no printable = yes [vobstore] path = /path-goes-here/vobstore
writeable = yes
create mask = 0777
force directory mode = 0777
force group = devel [viewstore] path = /path-goes-here/viewstore
writeable = yes
create mask = 0777
force directory mode = 0777
force group = devel [home] path = /home writeable = yes guest ok = no create mask = 0766 force directory mode = 0766 force group = devel
Intallation:
- siteprep.exe
Choose client install
Create region: devel_win - setup.exe
- Verify installation from control panel and check settings.
- From "Start" menu: "Rational Software" + "Administration" + "Syncronize region"
Links:
To perform a tape backup, unmount the VOBs, stop the Clearcase daemon and backup the "viewstore" and "vobstore" directories.
- cleartool umount -a
- service clearcase stop
(or use the start and stop scripts in /opt/rational/clearacase/etc/)
There is no need to backup the MVFS /vob and /view as this is just a Clearcase view of data in the "viewstore" and "vobstore" directories.
- IBM/Rational ClearCase Install Guide for Linux
- Supported Platforms
- IBM/Rational BuildForge: Nightly build system for Clearcase.
- YoLinux Clearcase Tutorials: