Dependencies
The Performance Management server and supporting components are installed by a root user on a Red Hat Enterprise Linux system. Review the dependencies to ensure a successful installation.
Linux dependencies
- RPM dependencies
- The Performance Management server uses Red Hat Package Manager (RPM) files to install the software.
The following example is the prerequisite scanner configuration file, which lists the dependencies that the RPMs have for a successful installation:
For information on port names, see Table 1 and Table 2 in Performance Management server ports.# Validate supported Operating Systems OS Version=Red Hat Enterprise Linux 6.*,Red Hat Enterprise Linux 7.* FRESH.Memory=7.0GB FRESH.Disk=60GB os.space.home=1GB Temp=2-3GB os.swapSize=2-4GB os.dir.home=[dir:/home,type:permission]755+ #os.dir.opt=[dir:/opt/ibm,type:permission]755+ os.dir.tmp=[dir:/tmp,type:permission]777+ CpuArchitecture=x86_64 numLogicalCPU=2 # Check if RPM database is intact. rpm.dbStatusCorrect=True # Check if localhost is defined. os.localhostInHostsFile=True # Maximum number of user processes. os.ulimit=[type:maxprocesseslimit]4096+ # Maximum number of open filesos.ulimit=[type:filedescriptorlimit]32768+ # Maximum size of core file 400MB+ os.ulimit=[type:corefilesizelimit]390000+ # DB2-related checks. db2.isInstalled=False db2.usersNotPresent=[sev:WARN]db2apm,db2fenc1,dasusr1,itmuser db2.groupsNotPresent=[sev:WARN]db2iadm1,db2fadm1,dasadm1 db2.servicesNotPresent=DB2_db2apm,DB2_db2apm_1,DB2_db2apm_2,DB2_db2apm_END,db2c_db2apm db2.servicesNotPresent=50000 os.kernelversion=2.6.16+ os.kernelsNotSupported=[sev:WARN]2.6.32-434;2.6.32-504.7.1 # Check for available ports network.availablePorts.MINHTTP=80 network.availablePorts.MINHTTPS=443 network.availablePorts.APMUIHTTP=8080 network.availablePorts.APMUIHTTPS=9443 network.availablePorts.SERVER1HTTP=8090 network.availablePorts.SERVER1HTTPS=8091 network.availablePorts.OSLCPM=10001 network.availablePorts.FNGAIANDB=6414 network.availablePorts.FNEIFRCVR=9998 network.availablePorts.FNINTMSG=32105 network.availablePorts.SCRDERBYDB=1527 network.availablePorts.SCRJAVABKEND=12315 network.availablePorts.DB2=50000 network.availablePorts.RBACSERVER1=13245 network.availablePorts.RBACSERVER2=13246 network.availablePorts.RBACSERVER3=13247 network.availablePorts.RBACSERVER4=13248 network.availablePorts.MONGODB=27000 network.availablePorts.ZOOKEEPER=2181 network.availablePorts.KAFKA1=9092 network.availablePorts.KAFKA2=9989 network.availablePorts.OIDCHTTPS=8099 network.availablePorts.SPARKAAPPS1=[sev:WARN]7077 network.availablePorts.SPARKAAPPS2=[sev:WARN]6066 network.availablePorts.SPARKMASTER=[sev:WARN]8088 network.availablePorts.SPARKWORKER=[sev:WARN]8089 network.pingSelf=True [OSType:LINUX] os.package.bash=bash [OSType:LINUX][OSArch:64-bit] os.lib.libc_64=regex{libc\.so.*} os.lib.libgcc_64=regex{libgcc.*\.so.*} os.lib.libstdc++_64=regex{libstdc++\.so\.5} os.lib.libstdc++_64=regex{libstdc++\.so\.6} # Required for DB2 os.lib.libstdc++_32=regex{libstdc++\.so\.6} os.lib.pam_64=regex{libpam\.so.*} os.lib.pam_32=regex{libpam\.so.*} os.package.sg3_utils=sg3_utils # Required for Summarization and Pruning Agent os.package.ksh=ks
Without the required libraries and other software, the prerequisite scanner fails and displays a failure explanation, such as:Expected Property Result Found regex(libstdc++.so.6 os.lib.libstdc++_32 FAIL Unavailable
A Red Hat Enterprise Linux client that is correctly configured to use the yum (Yellowdog Updater, Modified) package manager can resolve and install any missing dependencies that are required by the RPMs. For more information on yum commands, see What is yum? How do I use it?.
- Tips for resolving unmet dependencies
- When the prerequisite scanner returns errors because of failed dependencies, you can run the yum provides feature_name command to learn what is required, and the yum install feature_name command to install the missing dependency.
- For example:
- Error
- The prerequisite scanner shows the following failure message:
error: Failed dependencies: libstdc++.so.6 is needed by...
- Command
yum provides
- Enter the following command:
The following report is displayed:yum provides libstdc++.so.6
libstdc++-4.4.7-3.el6.i686 : GNU Standard C++ Library Repo : installed Matched from: Other : Provides-match: libstdc++.so.6
- Command
yum install
- Enter the following command to satisfy the missing feature:
yum install libstdc++-4.4.7-3.el6.i686
- Command
yum install
- Enter the following command to install all prerequisites:
yum -y install --setopt=protected_multilib=false ksh libstdc++.i686 pam.i686 pam.x86_64 sg3_utils
Table 1. Sample error messages for failed dependencies on Linux and the possible resolution RPM Error message Possible resolution error: Failed dependencies: libstdc++.so.6 is needed by... rpm -Uhv libstdc++-4.4.6-4.el6.i686.rpm error: Failed dependencies:
libgcc_s.so.1 is needed by libstdc++-4.4.6-4.el6.i686
libgcc_s.so.1(GCC_3.0) is needed by libstdc++-4.4.6-4.el6.i686
libgcc_s.so.1(GCC_3.3) is needed by libstdc++-4.4.6-4.el6.i686
libgcc_s.so.1(GCC_4.2.0) is needed by libstdc++-4.4.6-4.el6.i686
libgcc_s.so.1(GLIBC_2.0) is needed by libstdc++-4.4.6-4.el6.i686rpm -Uhv libgcc-4.4.6-4.el6.i686.rpm error: Failed dependencies: compat-libstdc++-33(i686) is needed by... rpm -Uhv compat-libstdc++-33-3.2-69.el6.i686.rpm - Swap space dependency
- Swap space is required for the Performance Management server installation, and should be 4 GB or more. If the system has configured swap space between 2 GB and 4 GB, the prerequisite scanner reports a warning. Installation can continue but the server might experience lower performance. If the system has fewer than 2 GB of swap space configured, the prerequisite scanner reports a FAIL condition. Best practice is to create or increase the swap space amount to meet the requirement.
- Maximum number of user processes, open files, and core file size dependencies
- The prerequisite scanner checks for the following limitations:
- Maximum number of user processes, which is displayed as os.ulimit=[type:maxprocesseslimit]4096+. The operating system must allow a user to have at least 4096 processes. Below that value, the prerequisite scanner returns FAIL and the Performance Management server installation fails.
- Maximum number of open files, which is displayed as os.ulimit=[type:filedescriptorlimit]32768+. The operating system must allow a user to have at least 32,768 open files. Below that value, the prerequisite scanner returns FAIL and the server installation fails.
- Maximum size of a core file, which is displayed as os.ulimit=[type:corefilesizelimit]390000+. The operating system must allow a user to create a core dump of at least 390000 KB. Below that value, the prerequisite scanner returns FAIL and the Performance Management server installation fails.
Important: You must set or change the limits permanently rather than for the current shell session only by editing the /etc/security/limits.conf file. Then, the changes are applied to new sessions and processes. You must reboot your system to ensure that the changes occur. A suggested setup for the /etc/security/limits.conf file is shown here:* soft nofile 32768 * hard nofile 65536 * soft core unlimited
As a root user, you do not need to adjust the ulimit for the maxprocesslimit because the default RHEL maxprocesslimit that is defined for the root user is sufficient to pass the prerequisite scanner check. To change the maxprocesseslimit, use the nproc variable in the /etc/security/limits.conf file.Note: the * wildcard does not work for nproc due to the/etc/security/limits.d/90-nproc.conf security file.The user must be specified, for example, as a root user, as shown here:root soft nproc 16384 root hard nproc 32768
Attention: If you use the following ulimit commands to set or change the ulimits, the updates are only temporary for the current user session.To check the current system limits, you can issue the following commands:
- ulimit -a returns all limits
- ulimit -u returns the maximum number of processes available to a single user
- ulimit -n returns the maximum number of open file descriptors
- ulimit -c returns the maximum core file size
To increase the limit for the current shell session, you can issue the following commands:
- ulimit -u new_limit sets the maximum number of processes. Example: ulimit -u 4096
- ulimit -n new_limit sets the maximum number of open files descriptors. Example: ulimit -n 32768
- ulimit -c new_limit sets the maximum core file size. Example: ulimit -c 390000
User Interface dependencies
- Required libraries
- Refer to the libraries listed under the heading # Required for CandleManage in the sample prerequisite configuration file.
- Without the required libraries, the prerequisite scanner fails and displays a failure explanation.
DB2 dependencies
The prerequisite scanner checks that the DB2® dependencies are met.- Required libraries
- Please refer to the libraries listed under the heading # Required for DB2 in the sample prerequisite configuration file. Without the required libraries, the prerequisite scanner fails and displays a failure explanation.
DB2 requires a Linux Kernel of version 2.6.16 or higher.
- No previous installation of DB2
- A DB2 database must not already exist on the system where you plan to install the Performance Management server.
- Specific product users
- If any of the following users exist on the system where you plan to install the Performance Management server, you must update default user password in the install.properties file, which is available in the root directory of the installation media:
- itmuser
- dasusr1
- db2apm
- db2fenc1
- Kernel versions that are not supported for the Performance Management server or DB2 agent:
- When you install the DB2 agent on the Performance Management server and on some VMs, certain kernel versions are not supported. The following kernel versions are not supported:
- From 2.6.32-434 to 2.6.32-504.7.1.
If the Linux kernel matches this range, a warning error is displayed. As a result, DB2 might hang and you must upgrade to one of the supported versions. Any other kernel starting from 2.6.16 or higher is valid.
- From 2.6.32-434 to 2.6.32-504.7.1.
Summarization and Pruning Agent dependencies
- Required libraries
- The KornShell (ksh) package is required for the Summarization and Pruning Agent. If it is not present, the prerequisite scanner fails and displays a failure explanation.
For more information, see Prerequisite scanner properties.