Installing Electric Agent/EFS on Linux

7 minute read

Electric Agent/EFS software must be installed on each machine in the cluster. This includes any machines in a cloud service such as Amazon EC2 or Kubernetes.

Electric File System (EFS) and the Electric Agent are installed simultaneously on each host machine during Electric Agent/EFS installation. Multiple instances of Electric Agent/EFS pairs can be set up to run in parallel on a host. For example, if you have a multiprocessor machine, you might want to set up an Electric Agent for each processor. For details about running multiple agents, see Modifying the Number of Agents per Host.

If you are upgrading a previously-installed CloudBees Build Acceleration version, follow the upgrade instructions before attempting to install the new version.

Your toolchain should be installed on each agent host. You can virtualize the toolchain in some cases, but this can be problematic especially when the Windows registry is involved. For performance reasons, you should install the toolchain on each agent host.

You can install all CloudBees Build Acceleration components (eMake, agents, and the Cluster Manager) on the same machine (such as for testing or other nonproduction or trial-basis situations). Note that one benefit of this type of installation is that the installer automatically sets the Cluster Manager hostname to localhost. This means that you need not use the --emake-cm=<host>:<port> eMake option when invoking a build on a machine that has all components.

Agent/EFS builds a kernel module during installation, so you might need to take this into consideration.

Using the GUI to Install Electric Agent/EFS

  1. Sign in as root.

  2. Double-click the CloudBeesAccelerator-<version>-<platform>-Install installer file.

The installation packages might need a few minutes to extract.

  1. When the Welcome screen appears, click Next.

  2. On the Which components do you want to install? screen, select Electric Agent, then click Next.

  3. On the What type of install? screen, select Custom, then click Next.

  4. On the Choose Destination Location screen, accept the default installation directory or click Browse… browse to select an alternative directory.

    Do not select an alternative directory that includes spaces in the name. Spaces can create problems when configuring connections with other command-line-based components.
  5. Click Next.

  6. On the Base Setup screen, click to choose whether you want to Install Electric Runner client applications, then click Next.

    The Configuring the Electric Agent screen appears.

  7. On the Configuring the Electric Agent screen, enter options for the locally-installed Electric Agent/EFS:

    • Type in the Cluster Manager host or IP address.

    • Accept the default Cluster Manager CloudBees Build Acceleration Server port 8030 or type in the alternative port that you supplied during the Cluster Manager server installation.

    • Enter the Number of agents to run. The installer calculates the default number of agents based on the effective number of CPUs on the machine. The default is 1, if one CPU is present.

      If more than one CPU is present, the default value is the number of effective CPUs. The maximum number of agents allowed on one 64-bit machine is 64.

    • Accept the default Agent temporary directory, or choose an alternative. This directory cannot be a symbolic link.

    • Accept the default for the Secure Agent Console Port checkbox if you will not use the secure port, or select the checkbox to use the secure port.

    • If this agent machine is part of a cloud service and is to be used to create an image for cloud bursting, check the Agents are provisioned on-demand from a cloud - Amazon EC2 etc. checkbox.

When using cloud bursting in a cloud environment such as Amazon EC2 or Kubernetes, agents are not bound to a Cluster Manager during installation. Instead, the cloud management software tells the agents which Cluster Manager to use. (Optional) Select the Remove old Electric Agent logs checkbox. (Optional) Select the Reboot host if needed checkbox. Using this checkbox can add up to 30 minutes to the installation time (depending on the number of agents and the number of installed Visual Studio versions). (Optional) Uncheck the Install EFS & LOFS checkbox if you already installed the efs100 and lofs kernel modules as part of configuring agents to run in Docker containers. For details about these kernel modules, see the KBEA-00170 Configuring ElectricAccelerator 11.0 and Newer Versions to Run in Docker Containers KB article. (Optional) Unselect the Install Electric Runner Service checkbox (this is selected by default).

+ NOTE: Electric Runner (eRunner) is a “helper” service normally installed on all agent machines. This service listens for commands to execute on agents to facilitate administration tasks. For example, with eRunner, you can upgrade all agents at the same time remotely. . On the Configuring the Electric Runner Server screen, select options for the Electric Runner server: Accept the default Electric Runner Server port or type in an alternative. (Optional) Check the Remove old Electric Runner logs checkbox. . Click Next. . When the Start Copying Files screen appears, review your settings, then click Next.

+ The Installing screen displays while the installation proceeds. . When installation is finished, the Complete screen appears, click Finish. . When the Really Reboot? popup appears, click Yes to reboot your system.

Installation is complete. The installation log file is in the install directory’s root by default.

Using the Interactive Command Line to Install Electric Agent/EFS

  1. Sign in as root.

  2. Run chmod +x ` on the `CloudBeesAccelerator-<version>-<platform>-Install installer file to ensure it is executable.

  3. Run ./<installer filename> to start the installation.

The installer displays:

This will install {BA} version <version> on your computer.

For information about software configuration and licensing, see the {BA} Installation and Configuration Guide.Enter y to continue or n to exit the installer. [n/Y]
  1. Continue the installation by entering y.

The installer displays:

Welcome to the {BA} installer <version>
  Build: <version>
==========================================================
This installer can install the following packages:

1 - Electric Agent/EFS
          Installs Electric Agent/EFS and Electric Make.
2 - Electric Make
          Installs Electric Make.
3 - Cluster Manager
          Installs Cluster Manager and Electric Make.
4 - Cluster Manager and Electric Agent
          Installs Cluster Manager, Electric Make and Electric Agent/EFS on same host.
Select a package to install by entering the corresponding number:  [2]
  1. Enter 1 to select the Electric Agent/EFS package and press Enter.

The installer displays:

Where do you want to install {BA}? [opt/ecloud]
  1. Accept the default location or type in an alternative location.

If the installer cannot locate a PDF view, it displays:

Setup was unable to locate a PDF reader. To view the included documentation enter the path to a PDF reader []
  1. Provide a path or press Enter to skip.

The installer displays:

      Install Electric Runner client apps [n/Y]
  1. Decide if you want to install eRunner client apps. eRunner is a “helper” daemon normally installed on all agent machines. This daemon listens for commands to execute on agents, facilitating administration tasks. For example, with eRunner you can upgrade all agents at the same time, remotely. Make your selection and press Enter to continue.

The installer displays:

Agents are provisioned on-demand from a cloud - Amazon EC2 etc. [n/Y]
  1. Make your selection for cloud usage and press Enter.

When using cloud bursting in a cloud environment such as Amazon EC2 or Kubernetes, agents are not bound to a Cluster Manager during installation. Instead, the cloud management software tells the agents which Cluster Manager to use.

The installer displays:

Cluster Manager Host/IP address:
  1. Provide the Cluster Manager host/IP address and press Enter.

The installer displays:

Cluster Manager {BA} Server port: [8030]
  1. Use the Cluster Manager default server listening port 8030, or type in the alternative port if you did not accept the default when you installed Cluster Manager.

The installer displays:

Number of agents: []
  1. Use the default or type in a different number of agents to install. The installer calculates the default number of agents based on the number of effective CPUs on the machine. For example, you might have one agent per virtual CPU, a single dual-core CPU supports two agents, three dual-cores support six agents. The maximum number of agents allowed on one 64-bit machine is 64.

The installer displays:

Agent temporary directory: [/tmp]
  1. Accept the default agent temporary directory or specify a different directory. If you specify a different directory, it must already exist, otherwise the temporary directory defaults to /tmp. The agent temporary directory must not be a symbolic link.

The installer displays:

Secure Agent Console port [y/N]
  1. Decide if you want to use a secure agent console port and press Enter.

The installer displays:

Remove old Electric Agent logs [y/N]
  1. Choose whether to remove old agent logs and press Enter.

The installer displays:

Reboot host if needed [y/N]
  1. Decide whether to reboot the host if needed and press Enter.

The installer displays:

Install EFS & LOFS [n/Y]
  1. Decide whether to install EFS and LOFS and press Enter.

    Type n if you already installed the efs100 and lofs kernel modules as part of configuring agents to run in Docker containers. For details about these kernel modules, see the KBEA-00170 Configuring ElectricAccelerator 11.0 and Newer Versions to Run in Docker Containers KB article.

The installer displays:

Security Options: [-cmsecurity relaxed]
  1. Decide whether to modify the security options and press Enter.

    By default the agent uses relaxed security, which uses HTTPS but allows for self-signed certificates when communicating with the Cluster Manager. For details about other security options that may be specified, see Configuring TLS between Agents and Cluster Manager and Configuring Agents for TLS.

The installer displays:

Install Electric Runner Service [n/Y]
  1. Decide if you want to install the eRunner service and press Enter. eRunner is a “helper” service normally installed on all agent machines. This service listens for commands to execute on agents, facilitating administration tasks.

The installer displays:

Electric Runner Server port: [2411]
  1. Use the default eRunner port to type in an alternate port and press Enter.

The installer displays:

Remove old Electric Runner logs [y/N]
  1. Decide if you want to remove old eRunner logs and press Enter.

The installer installs the Electric Agent/EFS using the configuration details you provided, followed by Installation complete.

The installation log file is in the install directory’s root, /opt/ecloud, by default.