Commonly used terms for deployment machines

Management machine
Management host machine or a management machine is the server on which the PingIntelligence for APIs automated deployment script is downloaded and run.
Host machine
Server or servers where PingIntelligence for APIs components are installed.

Prerequisites

Management machine operating system
PingIntelligence for APIs automated deployment requires installing the following on the management machine:
  • RHEL 7.9
  • PIP3
Host machine operating system
PingIntelligence for APIs host machine operating system can be RHEL 7.9 and 8 or Ubuntu 18.04 LTS.
Important:

For all the provisioned host machines, make sure the deployment is homogenous with respect to the operating systems and their versions. For example, if the host machines are provisioned to run RHEL 7.9, all host machines must be run RHEL 7.9. Do not create a setup with a mixture of deployments across host machines.

Ansible
The management host machine must have Ansible 2.10.0 or later installed.
Note:

Ansible 2.10 and later distributes two artifacts:

  • A community package called ansible
  • A minimalist language and runtime called ansible-core (called ansible-base in version 2.10).

As some required packages are not available in ansible-base, the ansible community package is also required.

When installing the ansible community version 2.10.0, running the ansible --version command returns the following output:

ansible --version
ansible 2.10.17
 config file = None
 configured module search path = ['/home/abhalla/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
 ansible python module location = /usr/local/lib/python3.6/site-packages/ansible
 executable location = /usr/local/bin/ansible
 python version = 3.6.8 (default, Sep 26 2019, 11:57:09) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]

The ansible 2.10.0 community package includes ansible-base 2.10.17.

Python
The management host machine must have Python installed. The supported version is Python 3.8.13.

Install Python as the root user, and make sure Python 3 points to Python 3.8.13 (for example, by creating a soft link with ln -s /usr/local/bin/python3.8 /usr/bin/python3).

Machine learning (ML) service node
Install Python 3.8.13 and PIP3 on the ML service node. Make sure PIP3 points to Python 3.8.13.
User
Automated installation requires a user with passwordless authentication for SSH connection to the host machines. User should also have passwordless sudo access to all the host machines. Alternatively, you can also set up a user with password by editing the hosts file. For more information on the hosts file, see Configuring the hosts file and downloading software.
firewalld package

All the host machines should have an active firewalld [python 3.8.13] package on both Ubuntu and RHEL machines. If the package is not available, then manually open the ports that are used in the deployment. For more information on ports, see Change default settings.

Ubuntu machines

If you are deploying the setup on a Ubuntu machine, make sure that the MongoDB host machine has libcurl4-openssl-dev.

No pre-existing Java installations

Make sure that there are no pre-existing Java installations on the host machines. You can use the # java -version command to verify this.

Important:

Uninstall all existing versions of Java from the host machines before proceeding with the installation of PingIntelligence for APIs components.

libselinux-python
Each node (management and host) must have the libselinux-python package installed.