Configuring a cluster

2 minute read

You must configure the machines installed with CloudBees Flow to operate as a cluster.

To configure them in clustered mode:

  1. Share the plugins directory across the CloudBees Flow servers, agents, and web servers if you have not done so already. For more information, see

  2. Configure all the CloudBees Flow servers for clustered mode operation, giving them a unique identifier that points to the load balancer, the location of the ZooKeeper servers, and optionally also the Exhibitor servers if you are using Exhibitor.

    You must use the ecconfigure commands on each CloudBees Flow server, web server, and agent on which the software component is installed. You must enter the commands on each server that you add. There are no problems if you rerun the commands on a machine. Use one of these methods:

    • Use the ecconfigure tool.

      • Locate the ecconfigure tool.

        For Linux, it is usually at /opt/electriccloud/electriccommander/bin/ecconfigure.

        For Windows, it is usually at C:\Program Files\Electric Cloud\ElectricCommander\bin\ecconfigure.exe.

        Run it with the following options on each CloudBees Flow server node (as the user that CloudBees Flow runs as, or with administrative privileges):

        ecconfigure --serverName <load_balancer_FQDN> --serverZooKeeperConnection <ZooKeeper_servers>

    • Use Exhibitor and enter:

      ecconfigure --serverName <load_balancer_FQDN> --serverZooKeeperConnection <ZooKeeper_servers> --serverExhibitorConnection <Exhibitor_servers>

      where:

      • <load_balancer_FQDN> is the fully-qualified domain name of your load balancer machine.

      • <ZooKeeper_servers> is a comma-separated (no spaces) list of the IP_address_or_FQDN:port_number for each of your three or five (or for a test system, possibly just one) ZooKeeper servers (the port number for ZooKeeper is normally 2181).

      • If you are using Exhibitor, <Exhibitor_servers> is a comma-separated (no spaces) list of the IP addresses or fully-qualified domain names of your three or five (or for a test system possibly just one) Exhibitor servers . The port number that CloudBees Flow uses to connect to Exhibitor is always port 80.) For example, 10.0.2.1,10.0.2.2,10.0.2.3 for a three-ZooKeeper/Exhibitor cluster.

        Example for a three-ZooKeeper cluster:

        ecconfigure --serverName machine.example.com --serverZooKeeperConnection 10.0.2.1:2181,10.0.2.2:2181,10.0.2.3:2181

        These ecconfigure commands start the CloudBees Flow server nodes.

  3. Configure the load balancing software for the CloudBees Flow server cluster and the CloudBees Flow web servers.

    1. Stop all CloudBees Flow server nodes that you want to cluster.

    2. Back up the <data_dir>\conf directory on all CloudBees Flow servers nodes.

    3. Choose a CloudBees Flow server node (usually the first node) from which to copy the <data_dir>\conf directory to the other nodes.

    4. Empty the contents of the <data_dir>\conf directory on the other nodes.

    5. Copy the contents of <data_dir>\conf from the first node to <data_dir>\conf on the other nodes. This ensures that <data_dir>\conf on all clustered CloudBees Flow servers is identical.