Skip to main content

Pentaho+ documentation has moved!

The new product documentation portal is here. Check it out now at docs.hitachivantara.com

 

Hitachi Vantara Lumada and Pentaho Documentation

Install Pentaho Worker Nodes on a single instance of HCI

Parent article

When you are deploying a single-instance system, that instance is automatically configured as a master instance and runs all services for the system. The following instructions for installing a single-instance of Pentaho Worker Nodes includes the following steps.

  1. Configure the server or virtual machine
  2. Run Docker on each server or virtual machine
  3. Unpack the Pentaho Worker Nodes product package
  4. Running the setup script
  5. Start the application on the server or virtual machine
  6. Deploy the System
  7. Troubleshooting

Configure the server or virtual machine

Make the following changes on the server or virtual machine that is to be a Pentaho Worker Nodes product on an HCI instance.

Procedure

  1. Configure the map count. Add this line to the /etc/sysctl.conf file:

    vm.max_map_count = 262144
    NoteIf the line already exists, verify that the value is greater than or equal to ‘262144’.
  2. Configure the firewall rules to allow communication over all network ports that your system requires.

    NoteFor information on the ports that your system requires, see Networking.
  3. Restart the server or virtual machine.

Run Docker on each server or virtual machine

On the server or virtual machine that is to be an HCI instance, you need to start Docker and keep it running. You can use whatever tools you typically use for keeping services running in your environment.

For example, to run Docker using systemd, do the following.

Procedure

  1. To check if Docker is running, run the following command.

    systemctl status docker
  2. If Docker is not running, start the Docker service.

    sudo systemctl start docker
  3. (Optional) Configure the Docker service to start automatically when you restart the server or virtual machine.

    sudo systemctl enable docker

Unpack the Pentaho Worker Nodes product package

On the server or virtual machine that is to be the Pentaho Worker Nodes product on an HCI instance, perform the following steps.

Procedure

  1. Retrieve the PentahoWorkerNodes-1.0.0.tar.gz file and store it in a directory on the server or virtual machine.

  2. the largest disk partition, create a directory called /hci:

    mkdir /<path>/hci
    NoteCreate the /hci directory in /opt. Your system includes an HCI.service script that you can use to run the application. By default, this script expects the system to be installed in /opt/hci.
  3. Move the installation package to the /hci directory:

    mv <path>/ PentahoWorkerNodes-1.0.0.tar.gz /<path>/hci
  4. Navigate to the installation directory:

    cd /<path>/hci
  5. Unpack the installation package:

    sudo tar -zxf PentahoWorkerNodes-1.0.0.tar.gz
  6. Run the install script in the version-specific directory:

    sudo ./<version-number>/bin/install

    For example: sudo ./1.2.0.123/bin/install

Next steps

  • Do not change directories after running the install script. The following steps are performed in your current directory, not under the version-specific directory.
  • The install script can be run only once on each instance. You cannot rerun this script to try to repair or upgrade the Pentaho Worker Nodes product on HCI instance.

Optional: Set up networking for system services

If you want to reconfigure networking for the system services, you must complete this step before Run the Setup Script.

You cannot change networking for system services after running the setup script or after starting HCI.service using systemd.

You can change these networking settings for each service in your product:

  1. The ports that the service uses.
  2. The network to listen on for incoming traffic, either internal or external.

You configure networking for system services in this step, before running the product startup scripts. You configure networking for HCI services later during Deploy the System step. For more information, refer to the HCI Install Guide included with your installation.

Configure networking for the system services

Perform the following steps to configure networking for the system services

Procedure

  1. On the server or virtual machine that will be the Pentaho Worker Nodes product on an HCI instance, open the /<hci-installation-directory>/config/network.config file in a text editor.

    The file contains two types of lines for each service:
    • Network type assignments:
      com.hds.ensemble.plugins.service.<service-name>_interface= [internal|external]

      For example:

      com.hds.ensemble.plugins.service.zookeeper_interface=internal
    • Port number assignments:
      com.hds.ensemble.plugins.service.<service-name>.port.<port- name>=<port-number>

      For example:

      com.hds.ensemble.plugins.service.zookeeper.port.PRIMARY_ PORT=2181
  2. (Optional) Specify new port values for the services you want to configure.

    Note
    • If you reconfigure service ports, make sure that each port value you assign is unique across all services, both system services and HCI services.
    • By default, all system services are set to internal.
    • If you are only using a single network, you can leave these settings as they are. All system instances are assigned both internal and external IP addresses in HCI; if you are only using a single network type, the internal and external IP addresses for each instance are identical.

    For information on the ports that each service uses, see Ports.

  3. (Optional) On the lines containing an interface, specify the network that the service should use. Valid values are internal and external.

  4. Verify that the network.config file is identical on all HCI instances.

Running the setup script

On each server or virtual machine that will be the Pentaho Worker Nodes product on an HCI instance, run the setup script with the applicable options. The options are based on an instance type of either secure or unsecure.
  • -i:

    The external network IP address for the instance that you are running the script on.

  • -I:

    The internal network IP address for the instance that you are running the script on.

  • -m:

    Comma-separated list of external network IP addresses of each master instance.

  • -M:

    Comma-separated list of internal network IP addresses of each master instance.

If you are enabling secure communication, all four of the above options are required. Use the following table to determine which options you need to use for your single-instance system:

Number of instances in the systemNetwork type usageOptions
Unsecure SingleSingle network type for all servicesUse -i only
Secure SingleInternal for some services, external for othersUse both -i and -I, and both -m and -M. Both upper- and lower-case parameter values are required. Also, a master instance must be set for secure mode.
Example Commands
  • For an unsecure single-instance system:
    sudo bin/setup -i 192.0.2.4
  • For a secure single-instance system:
    sudo bin/setup -i 192.0.2.4 -I 192.0.2.4 -m 192.0.2.4 -M 192.0.2.4

The bin/setup command uses the lower-case parameters (-i and -m) for the external IP values and the upper-case parameters (-I and -M) for the internal IP values.

NoteIf the terminal displays Docker errors when you run the setup script, verify that Docker is running. For information, see Run Docker on each server or virtual machine.

Start the application on the server or virtual machine

On each server or virtual machine that is to be the Pentaho Worker Nodes product on an HCI instance, start the run application script using whatever methods you usually use to run scripts.

NoteVerify that the method you use can keep the run script running and can automatically restart it in case of a server reboot or other availability event.

The following are some examples of how you can start the script.

Example 1: Run the script in the foreground

Run the following command:

sudo bin/run

When you run the script using this method, the script does not automatically complete. It remains running in the foreground.

Example 2: Run the script as a service using systemd

Perform the following steps to run the script as a service.

Procedure

  1. If you have installed the Pentaho Worker Nodes product in a directory other than the default location, then edit the pentahoWorkerNodes.service file to point to that location.

    For example, in /<file-path>/bin/pentahoWorkerNodes.service, set the ExecStart parameter to the directory location as follows:
    ExecStart=/<file-path>/bin/run
  2. Copy the pentahoWorkerNodes.service file to the appropriate location for your operating system, such as:

    cp /<file-path>/bin/pentahoWorkerNodes.service /etc/systemd/system
  3. Enable and start the search service as shown below:

    sudo systemctl enable pentahoWorkerNodes.service

    sudo systemctl start pentahoWorkerNodes.service

    NoteWhen you activate the search service, systemctl may display the following message:

    The unit files have no [Install] section. They are not meant to be enabled using systemctl.
    Possible reasons for having this kind of units are: 
    1) A unit may be statically enabled by being symlinked from another unit's .wants/ or .requires/ directory. 
    2) A unit's purpose may be to act as a helper for some other unit which has a requirement dependency on it. 
    3) A unit may be started when needed via activation (socket, path, timer, D-Bus, udev, scripted systemctl call, ...)

    Depending on your OS, the search service may or may not have been enabled successfully. To avoid this situation, verify that you moved the pentahoWorkerNodes.service to the applicable location, which is typically /etc/systemd/system.

Deploy the System

After creating the instance, you need to use the Administration App service to deploy the system.

Procedure

  1. Open a web browser and go to https://<HCI-instance-IP-address>:8000.

    NoteYou must enter https. You must also click through one or more security warnings.
  2. On the Welcome page, set a password for the initial admin user account, then click Set Admin Password. The Confirm Cluster Topology page displays all detected instances.

  3. If your system includes multiple instances, verify that all expected instances are listed. If they are not, click on the link in the Instance Discovery panel until they appear.

  4. (Optional) If you want to change networking settings for the HCI services, perform the following steps:

    NoteIf you want to reconfigure networking for the HCIservices, you must do so now before deploying the system.
    1. Click the link in the Advanced Network Configuration section.

    2. (Optional) For each service, configure the ports that the service should use.

      NoteIf you reconfigure service ports, verify that each port value you assign is unique across all services, both System services and HCI services.
    3. (Optional) For each service, specify which network the service should bind to, either Internal or External.

      NoteBy default, the Search-App and Admin-App services have the External option selected and all other services are set to Internal.
      If you are only using a single network, you can leave these settings as they are since all system instances are assigned both internal and external IP addresses in HCI. If you are only using a single network type, the internal and external IP addresses for each instance are identical.

      For more information, see Networking

  5. Click the Deploy Single Instance or Deploy Cluster button. The system deployment starts. You can click on the View Deployment Details link to view the progress of the deployment.

Troubleshooting

NoteYou cannot change networking settings for System services at this point.
Alternatively, if you configured the System services networking incorrectly, the Administration App may fail to appear. This may happen if the network.config file is not identical on all instances. For error information, view the /<hci-installation-directory>/config/cluster.config file or the output information logged by the run script.

Check your networking settings

Perform the following steps.

Procedure

  1. Stop the run script from running by using whatever method you are currently using to run the script.

  2. Run this command to stop all HCI Docker containers on the instance:

    sudo systemctl stop pentahoWorkerNodes.service
  3. Delete the contents of the <install-path>/hci/ directory from all instances.

  4. Begin the installation again from Unpack the Pentaho Worker Nodes product package

Next step: Set up Worker Nodes on the Pentaho Server

After packaging the Pentaho Worker Nodes product and seeing how to apply it to a single HCI instance, see Set up Pentaho Worker Nodes on the Pentaho Server to continue the setup process.