Preparing your site involves customizing the site.conf file, which also contains basic instructions (in its README section and in comments) for modifying various elements to successfully install Lab Management.
The only significant difference in the Lab Management configuration site.conf file format from the ConfigParser format is that the tokens are case-sensitive (for example, My_Token is not the same as my_token ).
The information presented here is organized by section and provides additional detail and explanation of the changes that you need to make. The sections are as follows:
The Default section is required and contains site-wide defaults. It contains global definitions such as: where your data assets are placed, the database, the Subversion repository, your branded templates and graphics, and all the other data essentials. The directory backup should be large enough to contain these assets.
You can add other sections to override specific values in the generated runtime config file, although this is not recommended and will not be discussed in this document.
Those elements that have comments in this section take the default values unless you explicitly set them.
The values for the tokens in the sample-site.conf file cannot contain semicolons (;). Semicolons are used in the config file format to indicate a comment character: this is the end of this configuration key and nothing after the semicolon on each line will be parsed.
All columns must start from column 1 -- you cannot have spaces before an entry.
Other sections in the sample-site.conf file are commented out entirely because they are optional.
The elements in the Default section include:
cubit_data_dir = /u1/cubit/data
cubit_domain = cubit.example.com
cubit_auth_scheme = ctf
cubit_root_bind_pwd = CHANGEME cubit_search_bind_pwd = CHANGEME
You must choose one of the token formats to define the root password -- either number 1 (for the plain text token) or 2 and 3 (that, together, define the hash tokens):
nfs_homedir_remote_hostname = %(cubit_mgr_hostname)sIf the remote host is the Lab Management Manager, this is the directory path on the Lab Management Manager. Otherwise, the name of the volume is on the remote server:
nfs_homedir_remote_volume = %(cubit_chroot_dir)s
homedir_local_mountpoint = %(cubit_chroot_dir)s homedir_local_export_options = rw.sync
osdir_local_mountpoint = /public
If the following tokens are defined, the mount point is coming from a remote NFS server:
nfs_osdir_remote_address = 123.123.123.123 nfs_osdir_remote_hostname = %(cubit_mgr_hostname)s
If the remote host is the Lab Management Manager, this is the directory path on the Lab Management Manager. Otherwise, it is the name of the volume on the remote server:
nfs_osdir_remote_volume = /public
cubit_http_user = cubitrepo cubit_http_user_password = CHANGEME
cubit_ilo_user = cubit cubit_ilo_user_password = CHANGEME cubit_alom_user = cubit cubit_alom_user_password = CHANGEME
This is used for logging into the ESX server via the API to manage guest nodes
cubit_esx_user = cubit cubit_esx_user_pwd = CHANGEME
cubit_apcpower_snmp_pass = CHANGEME
cubit_admin_email = you@example.com
cubit_forward_dns = 192.168.88.1 192.168.89.1 192.168.90.1
cubit_max_file_upload_bytes = 8589934592
cubit_session_timeout = 120
cubit_server_timezone = US/Pacific
cubit_log_level = INFO
cubit_ports_forward = 50001-52000
cubit_restapi_key_expiry = 0
cubit_ntpd_key_id = 10001 cubit_ntpd_key_value = CHANGEME
cubit_http_proxytimeout = 300
cubit_monitor_action = monitoring typeThe valid values for the monitoring type are:
cubit_bb_monitor_ip = 192.168.204.4
cubit_monitor_alert_email = you@example.com
[host] cpu_archs = i386, sun4u, x86_64, sun4v cpu_names = Xeon, Ultrasparc III, Ultrasparc IIIi, Ultrasparc IV, Pentium III, Pentium IV, Athlon, Opteron vendors = Sun, HP, Generic defaultvendor = Collabnet models = HP DL320, HP DL380, HP DL360, Generic, Sun V210, HP DL145, Rackable, HP BL460c
In addition, you'll also need to modify hardware.conf (after you install Lab Management) in the data directory. You'll need one section for each hardware model. For example:
[HP DL380] Solaris_Interface_Name = primary LOM_Type = ilo [Sun V210] Solaris_Interface_Name = bge0 LOM_Type = alom
parent_hostname = myparent.example.com
[infrastructure:mgr] hostname = %(cubit_mgr_hostname)s profile_name = rhel5.4_base_i386 install_mode = kickstart-net cubit_manager = %(cubit_mgr)s mgr_public_gateway = %(cubit_mgr_gateway)s
[infrastructure:primary_ad_server] ip_address = 192.168.204.2 parent_hostname = %(cubit_mgr_hostname)s hostname = ad.%(cubit_domain)s
parent_hostname = %(cubit_mgr_hostname)sIf your Primary Active Directory server also acts as Windows Deployment Services (WDS) server, uncomment following line:
wds_server = True
[infrastructure:wds] ip_address = 10.1.54.7 parent_hostname = %(cubit_mgr_hostname)s hostname = wds.%(cubit_domain)s descr = Windows Deployment Server wds_server = True profile_name = Windows2k3stdR2_wds memsize = 1024 memsize_unit = MB disksize = 20 disksize_unit = GB mac_addr = 00:50:56:01:b2:c3
The following roughly defines the minimum set of values required to define an infrastructure node:
[infrastructure:my_host_label] ip_address = 192.168.204.5 hostname = my_host_name.$(cubit_domain)s profile_name = esx_4.0u1 mac_addr = 00:00:00:00:00:00 install_mode = unmanagedAny number of additional fields may be defined; some settings may imply specific defaults (for example, an esx-type host defaults to "install_mode=unmanaged"), and may in turn imply additional required fields (an esx-type profile in turn requires that port_group, resource_pool, and datastore be defined). A rough example of the additional fields an esx-type node would require:
resource_pool = Resources port_group = VM Network datastore = datastore1
[ctf] ctf_domain = ctf.example.com ctf_version = 5 ctf_scheme = http readonly_superuser_name = rootreader readonly_superuser_password = CHANGEME
allow_sso = TrueTo configure LDAP:
[ldap] external_ldap_base_dn = dc=ldap,dc=example,dc=com external_ldap_user_base_dn = ou=user,dc=ldap,dc=example,dc=com external_ldap_group_base_dn = ou=group,dc=ldap,dc=example,dc=com domain_controller = ldap.example.com domain_controller_address = 192.168.204.5 readonly_dn = CHANGEME readonly_password = CHANGEMEFor domain_admin_users and domain_admin_groups, enter comma-separated lists of valid SAM account names.
domain_admin_users = domain_admin_groups = CHANGEMEYou can have one of these values for use_ssl_tls:
use_ssl_tls = 1Protocol and port -- you're advised not to change these; if you must change them, make sure they align correctly with use_ssl_tls, as this will generally impact the how the connection is initialized. Protocol should be either "ldap" or "ldaps"; port should be 389 (or 636 for SSL).
protocol = ldap port = 389 Optional backup domain controller, if used: backup_domain_controller = ldap-backup.example.com backup_domain_controller_address = 192.168.204.6
[samba:sample] description = Example samba share name = Sample path = /path/to/export users = @__cubitu readonly = Yes browseable = Yes
If you do not provide your own certificate, a self-signed certificate is generated. Optionally, you can supply a list of intermediate certificates, separated by spaces.
For example:[ssl_certificate] install_ssl_cert = /path/to/server.crt install_ssl_cert_key = /path/to/server.key install_ssl_intermediate_certs = cert1 cert2 cert3
[miniroot] ip_address = 192.168.204.3 hostname = %(cubit_mgr_hostname)s
Uncomment this section and set all of the following options as shown in the example:
[cubit_http_proxy] proxy_url = http://proxy.example.com proxy_user = CHANGEME proxy_password = CHANGEME
max_file_upload_bytes = 8589934592To allow domain-level guest access to PBL, set the following token to 1, (or 0 to deny access). If allowed at the domain level, project administrators can enable guest access to PBL for their projects.
allow_guest_access = 1For more on PBL, see:
You must have a valid Windows-2k3stdR2 key for the Primary Active Directory server. All other keys are optional depending on the profiles that your installation supports:
[licenses] Windows-2k3stdR2 = xxxxx-xxxxx-xxxxx-xxxxx Windows-xp_pro = xxxxx-xxxxx-xxxxx-xxxxx Windows-2k3std = xxxxx-xxxxx-xxxxx-xxxxx Windows-2000Svr = xxxxx-xxxxx-xxxxx-xxxxx RHEL-5 = xxxxxxxxxxxxxxxx
Typically critical settings of the Manager are backed up. Data and Infrastructure node guests are not backed up -- [cubit_data] and VMware guest nodes do not need to be backed up regularly because of the time it takes, the size of the dataset and the service interruption during the backup. In addition, if [cubit_data] and guest nodes are on a NetApp volume, there is really no need for doing so. It takes merely seconds to do system info backup and there is no service interruption either.
Do you want to do a backup -- valid values are yes or no, and default = nobackup_enabled = noTo only back up system information (default) :
backup_command = %(cubit_runtime_dir)s/bin/cubit_backup.py --skip_vm --skip_dataTo back up system information and all guest nodes on the Manager node:
backup_command = %(cubit_runtime_dir)s/bin/cubit_backup.py --skip_dataTo back up everything:
backup_command = %(cubit_runtime_dir)s/bin/cubit_backup.pyLocation where backups are stored -- it MUST be outside of the cubit_data_directory! Each backup is time-stamped. For example: [backup_directory]/20081101030000
backup_directory = /u1/cubit/backupHow often to do backups -- valid choices are hourly, daily, weekly, or monthly, the default is daily.
interval = dailyWhen to do the backup:
run_at = 03
[rsync] rsync_port_range = 9000-10000
description = My first Lab Management subnet
To specify the IP address of the Lab Management Manager on this subnet:
mgr_subnet_ip = 192.168.204.1Typically, this is the first available address on the subnet.
To specify the priority that this network block should take, relative to other network blocks:
priority = 1The priority token affects how managed hostnames are generated: lower priorities get earlier blocks. For example, if this block has a DHCP range of 11-254 and a priority of 1, this network is assigned managed hostnames from cu001.[cubit_domain] to cu244.[cubit_domain]
To indicate whether the subnet is routed, use yes or no as valid values:
routed = noTo specify a default gateway for hosts located on this subnet:
gateway = 192.168.204.1Typically, for a routed subnet, the gateway is a router interface. For non-routed subnet, the gateway is the IP of the Lab Management Manager on this subnet.
To specify a DHCP range (which must be a consecutive range) to assign to Client nodes on this subnet:
dhcp_range_start = 11 dhcp_range_end = 254
vnet_interface = vmnet0For more on networks in Lab Management, see:
This advanced feature enables you to specify a particular parameter (such as generating a runtime setup) in the sample-site.conf file. The sample-site.conf file is then integrated later with a larger file called a cubit-runtime.conf file.
If you have questions about advanced configurations options, contact CollabNet Support.