[ Platform Documentation ] [ Title ] [ Contents ] [ Previous ] [ Next ] [ Index ]
- Viewing User and User Group Information
- About User Groups
- Existing User Groups as LSF User Groups
- LSF User Groups
[ Top ]
Viewing User and User Group Information
You can display information about LSF users and user groups using the
busersandbugroupcommands.The
buserscommand displays information about users and user groups. The default is to display information about the user who invokes the command. Thebuserscommand displays:
- Maximum number of jobs a user or group may execute on a single processor
- Maximum number of job slots a user or group may use in the cluster
- Total number of job slots required by all submitted jobs of the user
- Number of job slots in the
PEND,RUN,SSUSP, andUSUSPstatesThe
bugroupcommand displays information about user groups and which users belong to each group.The
busersandbugroupcommands have additional options. See thebusers(1)andbugroup(1)man pages for more details.Viewing user information
Run
busers all. For example:%busers allUSER/GROUP JL/P MAX NJOBS PEND RUN SSUSP USUSP RSV default 12 - - - - - - - user9 1 12 34 22 10 2 0 0 groupA - 100 20 7 11 1 1 0Viewing user group information
Run
bugroup. For example:%bugroupGROUP_NAME USERS testers user1 user2 engineers user3 user4 user10 user9 develop user4 user10 user11 user34 engineers/ system all usersViewing user share information
Run
bugroup -l, which displays user share group membership information in long format. For example:%bugroup -lGROUP_NAME: testers USERS: user1 user2 SHARES: [user1, 4] [others, 10] GROUP_NAME: engineers USERS: user3 user4 user10 user9 SHARES: [others, 10] [user9, 4] GROUP_NAME: system USERS: all users SHARES: [user9, 10] [others, 15] GROUP_NAME: develop USERS: user4 user10 user11 engineers/ SHARES: [engineers, 40] [user4, 15] [user10, 34] [user11, 16][ Top ]
About User Groups
User groups act as aliases for lists of users. The administrator can also limit the total number of running jobs belonging to a user or a group of users.
You can define user groups in LSF in several ways:
- Use existing user groups in the configuration files
- Create LSF-specific user groups
- Use an external executable to retrieve user group members
If desired, you can use all three methods, provided the user and group names are different.
[ Top ]
Existing User Groups as LSF User Groups
User groups already defined in your operating system often reflect existing organizational relationships among users. It is natural to control computer resource access using these existing groups.
You can specify existing UNIX user groups anywhere an LSF user group can be specified.
How LSF recognizes UNIX user groups
Only group members listed in the
/etc/groupfile or the filegroup.bynameNIS map are accepted. The user's primary group as defined in the/etc/passwdfile is ignored.The first time you specify a UNIX user group, LSF automatically creates an LSF user group with that name, and the group membership is retrieved by
getgrnam(3) on the master host at the timembatchdstarts. The membership of the group might be different from the one on another host. Once the LSF user group is created, the corresponding UNIX user group might change, but the membership of the LSF user group is not updated until you reconfigure LSF (badmin). To specify a UNIX user group that has the same name as a user, use a slash (/) immediately after the group name: group_name/.UNIX group definitions referenced by LSF configuration files must be uniform across all hosts in the cluster. Unexpected results can occur if the UNIX group definitions are not homogeneous across machines.
How LSF resolves users and user groups with the same name
If an individual user and a user group have the same name, LSF assumes that the name refers to the individual user. To specify the group name, append a slash (
/) to the group name.For example, if you have both a user and a group named
adminon your system, LSF interpretsadminas the name of the user, andadmin/as the name of the group.Where to use existing user groups
Existing user groups can be used in defining the following parameters in LSF configuration files:
USERSinlsb.queuesfor authorized queue usersUSER_NAMEinlsb.usersfor user job slot limitsUSER_SHARES(optional) inlsb.hostsfor host partitions or inlsb.queuesorlsb.usersfor queue fairshare policies[ Top ]
LSF User Groups
You can define an LSF user group within LSF or use an external executable to retrieve user group members.
Use
bugroupto view user groups and members, usebusersto view all users in the cluster.Where to use LSF user groups
LSF user groups can be used in defining the following parameters in LSF configuration files:
USERSinlsb.queuesfor authorized queue usersUSER_NAMEinlsb.usersfor user job slot limitsUSER_SHARES(optional) inlsb.hostsfor host partitions or inlsb.queuesfor queue fairshare policiesIf you are using existing OS-level user groups instead of LSF-specific user groups, you can also specify the names of these groups in the files mentioned above.
Configuring user groups
- Log in as the LSF administrator to any host in the cluster.
- Open
lsb.users.- Add the
UserGroupsection if it does not exist.Begin UserGroup GROUP_NAME GROUP_MEMBER USER_SHARES financial (user1 user2 user3) ([user1, 4] [others, 10]) system (all) ([user2, 10] [others, 15]) regular_users (user1 user2 user3 user4) - part_time_users (!) - End UserGroup- Specify the group name under the
GROUP_NAMEcolumn.External user groups must also be defined in the
egroupexecutable.- Specify users in the
GROUP_MEMBERcolumn.For external user groups, put an exclamation mark (
!) in theGROUP_MEMBERcolumn to tell LSF that the group members should be retrieved usingegroup.- (Optional) To enable hierarchical fairshare, specify share assignments in the
USER_SHAREScolumn.- Save your changes.
- Run
badmin ckconfigto check the new user group definition. If any errors are reported, fix the problem and check the configuration again.- Run
badmin reconfigto reconfigure the cluster.External user group requirements (egroup)
An external user group is a user group for which membership is not statically configured, but is instead retrieved by running an external executable with the name
egroup.Theegroupexecutable must be in the directory specified by LSF_SERVERDIR.This feature allows a site to maintain group definitions outside LSF and import them into LSF configuration at initialization time.
The
egroupexecutable is an executable you create yourself that lists group names and users who belong to the group.This executable must have the name
egroup. Whenmbatchdis restarted, it invokes theegroupexecutable and retrieves groups and group members. The external executableegroupruns under the same account asmbatchd.The
egroupexecutable must write user names for the user groups to its standard output, each name separated by white space.The
egroupexecutable must recognize the following command, sincembatchdinvokes external user groups with this command:egroup -u user_group_namewhere user_group_name is the name of the user group defined in the executable
egroupalong with its members, and the user group is specified inlsb.users.[ Top ]
[ Platform Documentation ] [ Title ] [ Contents ] [ Previous ] [ Next ] [ Index ]
Date Modified: January 12, 2004
Platform Computing: www.platform.com
Platform Support: support@platform.com
Platform Information Development: doc@platform.com
Copyright © 1994-2004 Platform Computing Corporation. All rights reserved.