Please Read the HPCC operational policies and
Certify that you comply with the policy.
Step 1 of 2
User Contributed Software
Purpose
The policies and procedures for installing and
maintaining software packages on the equipment managed
by the High Performance Computing Center (HPCC) are
given below. Various types of software packages will be
described along with the procedure for users to request
adding additional packages. The procedures for renewing
or discontinuing existing software packages are also
given. For user supported software, additional
responsibilities and requirements are given in an
Appendix at the end of the document.
Available Facilities
HPCC provides access for user-contributed software on a
variety of Unix and Windows systems. For Unix/linux
systems such software will be housed in either the
/home/local or /opt level of the filesystem. Within
these paths, subdirectories exist for containing
individual software packages.
User?s of HPCC?s resources who have software they would
like installed on HPCC's systems for use by themselves
and others may obtain permission to do so by following
the procedure outlined in this document. If granted, a
directory in either /home/local or /opt will be created
to contain the software.
Software types
Software that is being used and/or developed by an
individual user is the responsibility of that user. The
HPCC will not support that software nor make it
available to other users. Such software will reside
within the user?s individual directories.
For other software, a distinction will be made between
software being developed at TTU versus software that is
externally being developed. For internally supported
software, a support individual will need to be
identified. This individual will be given permissions
to add, delete, and modify files and subdirectories
within their package's directory in either /home/local
or /opt. It will be the responsibility of that
individual to maintain and support the software. This
case is dealt with in more detail in Appendix.
In the second case, either a member of the HPCC staff
will deploy the software or at the discretion of the
HPCC an individual user will be allowed to deploy the
software. This will be agreed upon at the initial
deployment.
Software of Interest
Software to be considered must meet several criteria.
HPCC is not interested in providing facilities for
anyone to add anything to the system. Applications
which assist with common tasks or algorithms that are
useful a to variety of applications are most
appropriate. In general the more specific the
application, the less likely it will be considered.
However, we will evaluate all requests.
Restrictions
There are several restrictions concerning the types of
software for which HPCC will provide resources. These
restrictions are given below.
-
Software which is used to encourage or proliferate
discriminatory or harassing behavior or to in any
way violate the state?s or TTU?s policies on
acceptable use will be rejected.
-
Software which violates the security or integrity of
HPCC resources and/or the general network will be
rejected.
-
Software which requires modification to the existing
HPCC software stack or hardware will be rejected.
Exception to this may be allowed if the impact of
such changes can be mitigated and there is
commiserate benefit to the general HPC community.
The amount of effort to make and support these
changes by HPCC staff will be used as a basis for
allowing these exceptions.
Proof of Licensing
Any request to install software must contain the
licensing requirements. To install software, proof of
the software's legal status, licensing for use at TTU,
and a valid license (if applicable) must be provided to
the HPCC. Without this proof of licensing, no software
may be installed on HPCC systems.
Procedures
This section describes the procedures to be followed
when dealing with user-contributed software. These
procedures should normally be followed, but less formal
procedure could be used in extraordinary circumstances.
Getting a New Package Installed
To get approval for having a new package installed by
HPCC staff, the following procedure is recommended. A
similar procedure for getting a user-maintained software
package approved is given in the Appendix.
-
Submit a request to the HPCC, describing the package
and its usefulness to the user community. Include
the name, vendor (or other source), licensing
description, supported machine types, and an
estimate of the amount of disk space required.
-
If the request is accepted, deliver a copy of the
licensing documents to the HPCC.
-
Provide installation files and documentation to the
HPCC.
-
If necessary, work with the HPCC to generate a valid
license key.
-
When notified by HPCC staff that the package is
installed, test the installation to make sure it
works.
-
Notify the HPCC if the software needs to be updated
or patched.
Renewing or Expiring a Package
For currently installed packages which are licensed for
a specific term, inform the HPCC about your plans to
renew the software license or not. If licensing details
are not provided, then the software may be removed from
the system. If a new valid license is not provided
before the expiration of the current license, the
software will be disabled, and may be removed from the
system.
If the HPCC determines that the software license is not
being followed, the HPCC will take whatever actions it
deems necessary to restore compliance including removing
the software.
Appendix: User-supported software
Responsibilities of the User
If user-supported software is accepted to be installed
on HPCC resources at Tech, then the person making the
request will be responsible for:
-
Installation of the software
-
Supporting the software which includes maintaining
the software in working order, providing
documentation and performing any additional
administration required for the software to remain
functional.
-
Act as a point of contact to the HPCC for issues
dealing with the software
-
Provide proof of licensing to HPCC
-
Notify the HPCC if the software is going to be
unavailable for an extended period of time.
-
Notify the HPCC if a new maintainer will take over
these responsibilities.
-
Notify the HPCC if the package will no longer be
maintained.
These software packages are not supported by the HPCC
staff, so users who use this software do so at their own
risk.
Procedures
This section describes the procedures to be followed
when dealing with user supported software. These
procedures closely follow the procedures for general
user-contributed software with the main difference being
that a user will be responsible for installing the
software and providing documentation.
Getting a New Package Installed
To get approval for either installing or having
installed a new package, the following procedure is
recommended.
-
Submit a request to the HPCC, describing the package
and its usefulness to the user community. Include
the name, vendor (or other source), licensing
description, supported machine types, and an
estimate of the amount of disk space required.
-
If the request is accepted, deliver a copy of the
licensing documents to the HPCC.
-
Using the provided directory, install the software.
-
If modifications outside the provided directory are
need, request assistance from the HPCC.
-
Test the installation to make sure it works.
-
Notify the HPCC that the software is installed and
functional.
Usability
User maintained software is only useful to the general
HPC user community at TTU if it is usable by others.
This includes documenting the software features and
functionality in addition to fixing bugs. However,
because this software will normally be under
development, it is understood that the software will not
always be functional. Therefore a high degree of
latitude will be provided to the maintainer of the
software in this area. However, at some point the
software needs to be used by others to continue being
deployed on HPCC equipment outside of the user?s local
directory.
The level of documentation and support provided may vary
widely. It should be clear to a user of the software
what level of documentation and support is being
provided. In general, the documentation should be
enough that the usefulness and usability of the software
is clear to a prospective user of HPC resources at TTU.
Additionally, any modifications that a user has to make
to use the software (like setting of environment
variables) must be clearly documented. It is suggested
that a README file be provided that contains this basic
information. Remember: The better the documentation,
the more likely the software will be widely adopted.
If you wish to provide documentation and you can provide
the HPCC with the appropriate legal right to distribute
it, the HPCC will make available copies to general users
to check out and/or make electronic versions available.
Change of Status
Finally, when a package maintainer no longer wishes to
or can maintain a software package, either a new person
to maintain the software should be identified or the
software status should be changed. The new person will
have the same responsibilities as the original
maintainer, and it is good practice for there to be some
overlap in time when both are available.
At some point all package development may end. At that
point, the package can be left on the system, removed
from the system or replaced by a new package. Normally
this will result in the software being removed from the
system. However, if the software is still being used,
then the HPCC will consider leaving it installed.
HPCC's Responsibilities
The HPCC also has responsibilities towards
user-contributed software. These are listed below:
-
Provide information regarding system changes
affecting the software
-
Provide notification of changes in policy regarding
user-contributed software
-
Keep backups of the software and restore the
software if necessary
-
Provide adequate disk space and authorization to the
software
-
Protect the software from unauthorized modification
Notification of Changes
HPCC will notify package maintainers of any changes to
the system that may affect the operation of the
installed packages. This includes operating system
updates, security fixes, filesystems support, backup
policy, etc. How these affect an individual package is
up to the maintainer to determine. Requests for
modifications may be made to the HPCC staff if the
user?s software package is adversely affected by any
such change. All reasonable attempts will be made to
grant such requests.
System-level Administration
The rest of the HPCC's responsibility to the maintainers
of user-contributed software is basic system
administration. This includes maintaining current
backup?s of the software and maintaining file
permissions to prevent unauthorized access. By
monitoring disk usage the HPCC will maintain reasonable
free space to support updates and modifications to the
installed software.
The security of the overall system is the responsibility
of the HPCC. If a package maintainer engages in
activities that compromise system security, the HPCC
staff will take whatever actions it deems necessary to
correct this. This includes making sure that only
authorized personnel can make changes to the installed
packages. Alternatively, if the authorized personnel
are abusing their privileges, then the HPCC will remove
their access to the package and take whatever other
actions that are required by state and university
policies. |