Linux Platform Prerequisites

2 minute read

This section describes the Cluster Manager, eMake, and Electric Agent/EFS installation prerequisites on Linux platforms. It also describes a known Linux kernel performance issue.

For information about platform support such as operating systems, cloud-based and Kubernetes support, Make versions, eMake emulation, databases, bitnesses, and Visual Studio versions, see CloudBees Accelerator Supported Platforms.

  • Each host to run Accelerator software must be x86-64 compatible (except for the supported 32-bit systems listed above, which must be x86 compatible) .

  • SELinux must be disabled. To disable SELinux, open /etc/selinux/config and change SELINUX=enforcing to SELINUX=disabled.

  • The following packages must be installed on each host that will run the Cluster Manager or agents. Use the commands listed below:

    Platform Commands for Installing Required Packages

    CentOS or RHEL

    Cluster Manager machine:

    sudo yum updatesudo yum install autoconf
    sudo yum install ncurses-libs.x86_64

    Agent machines:

    sudo yum updatesudo yum install autoconf
    sudo yum install kernel-devel
    sudo yum install gcc make -y

    Debian or Ubuntu

    Cluster Manager machine:

    sudo apt-get updatesudo apt-get install autoconf
    sudo apt-get install linux-headers-$(uname -r)

    Agent machines:

    sudo apt-get updatesudo apt-get install autoconf
    sudo apt-get install linux-headers-$(uname -r)
    sudo apt-get install gcc make
    sudo apt-get install libelf-dev (Ubuntu 18.04 and newer)

    SUSE Enterprise Linux (SLES) (Up to, and including, SUSE 12)

    Cluster Manager machine:

    sudo zypper updatesudo zypper install autoconf
    sudo zypper install kernel-source

    Agent machines:

    sudo zypper updatesudo zypper install autoconf
    sudo zypper install kernel-source
    sudo zypper install gcc make

    SUSE Enterprise Linux (SLES) (For SUSE 15)

    Cluster Manager machine:

    sudo zypper updatesudo zypper install autoconf
    sudo zypper install kernel-devel

    Agent machines:

    sudo zypper updatesudo zypper install autoconf
    sudo zypper install kernel-devel
    sudo zypper install gcc make

Known Linux Kernel Issue Affecting Performance

Affected Kernel Versions

  • RHEL kernel versions later than 2.6.18-194.32 and earlier than 2.6.32-131.

  • Ubuntu kernel versions 2.6.31, 32, 33, and 34

Symptoms

Affected systems might encounter reduced performance on both ext3 and ext4 file systems. Symptoms might include:

  • hung_task_timeout_secs messages in system dmesg logs

  • widely variable agent availability (entering and exiting agent “penalty” status frequently)

  • contention over the ecagent.state file

  • slower builds (with unexplained variances)

To help determine if your environment has this kernel issue, run

dmesg | grep hung_task_timeout

hung_task_timeout errors indicate a known Linux kernel issue. Contact your kernel provider to obtain a different version of the precompiled kernel.

Corrective Actions

For systems running RHEL 5.6, 5.7, 5.8, and 6.0, consider upgrading to 2.6.32-131 (RHEL 6.1) or downgrading to 2.6.18-194.32 (RHEL 5.5).

Upgrading the kernel might require you to reinstall various kernel modules such as video drivers, efs, and vm-tools. You can do so by running apt-get dist-upgrade and then rebooting.