Skip to content

Resolving package dependency conflicts

This section includes procedures for resolving Docker CE and Control Center dependency conflicts that may occur during installation.

Resolving device mapper dependency conflicts

Use this procedure to resolve dependency issues in which the installed versions of device mapper libraries are newer than the versions included in the Zenoss mirror. The following example shows a typical yum error of this type:

Error: Package: 7:device-mapper-event-1.02.107-5.el7.x86_64 (zenoss-mirror)
Requires: device-mapper = 7:1.02.107-5.el7
Installed: 7:device-mapper-1.02.107-5.el7_2.5.x86_64 (@updates)
device-mapper = 7:1.02.107-5.el7_2.5

To perform this procedure, you need:

  • An RHEL/CentOS system with internet access and the same operating system release and kernel as the Control Center hosts in your deployment.
  • A secure network copy program.

Follow these steps:

  1. Display the version number of the installed device mapper package.

    rpm -q device-mapper | cut -d - -f 3-
    

    Example result:

    1.02.135-1.el7_3.1.x86_64
    

    Record the version number for subsequent use.

  2. Log in to a compatible host that is connected to the internet as root or as a user with superuser privileges.

    The host must have the same operating system (RHEL or CentOS) and release installed as the Control Center hosts in your deployment.

  3. Install yum utilities, if necessary.

    1. Determine whether the yum utilities package is installed.

      rpm -qa | grep yum-utils
      
      • If the command returns a result, the package is installed. Proceed to the next step.
      • If the command does not return a result, the package is not installed. Perform the following substep.
    2. Install the yum-utils package.

      yum install yum-utils
      
  4. Download the required dependencies, and then create a tar archive of the files.

    1. Create a variable for the dependency version to download.

      Replace Device-Mapper-Version with the version number displayed in a previous step:

      myVersion=Device-Mapper-Version
      
    2. Create a temporary directory for the dependencies.

      mkdir /tmp/downloads
      
    3. Download the dependencies to the temporary directory.

      yum install --downloadonly --downloaddir=/tmp/downloads device-mapper-event-$myVersion
      

      The yum command downloads two package files.

    4. Create a tar archive of the temporary directory.

      cd /tmp && tar czf ./downloads.tgz ./downloads
      
  5. Use a secure copy program to copy the archive file to the /tmp directory of the Control Center host or hosts that need the dependencies.

  6. Log in to the host as root, or as a user with superuser privileges.
  7. Install the device mapper dependencies.

    1. Extract the packages from the tar archive.

      cd /tmp && tar xzf ./downloads.tgz
      
    2. Install the dependencies.

      yum install $(ls /tmp/downloads/*.rpm)
      

Return to the procedure you were performing before turning to this section and retry the yum install command that failed previously.

Resolving other dependency conflicts

Use this procedure to resolve dependency issues in which the installed versions of one or more dependencies are newer than the versions included in the Zenoss mirror. The following example shows a typical yum error of this type:

Error: Package: policycoreutils-python-2.5-9.el7.x86_64 (zenoss-mirror)
Requires: policycoreutils = 2.5-9.el7
Installed: policycoreutils-2.5-11.el7_3.x86_64 (@updates)

Follow these steps:

  1. Install the older package.

    Replace Package-Name with the name of the package displayed in the error message:

    rpm -Uvh --oldpackage Package-Name
    
  2. Clean all yum caches.

    yum clean all
    

Return to the procedure you were performing before turning to this section and retry the yum install command that failed previously.