---
title: PingIntelligence automated deployment preparation
description: Before you can run the PingIntelligence for APIs automated deployment script, you must familiarize yourself with the requirements.
component: pingintelligence
version: 5.2
page_id: pingintelligence:installing_pingintelligence_for_apis:pingintelligence_automated_deployment_preparation
canonical_url: https://docs.pingidentity.com/pingintelligence/5.2/installing_pingintelligence_for_apis/pingintelligence_automated_deployment_preparation.html
revdate: April 3, 2024
section_ids:
  commonly-used-terms-for-deployment-machines: Commonly used terms for deployment machines
  prerequisites: Prerequisites
---

# PingIntelligence automated deployment preparation

Before you can run the PingIntelligence for APIs automated deployment script, you must familiarize yourself with the requirements.

## 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.

|   |                                                                                                                                                                                                                                                                                                                              |
| - | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|   | 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.

|   |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| - | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|   | 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 Secure Shell (SSH) *(tooltip: \<div class="paragraph">
  \<p>Protocol for secure operation of network services over an unsecured network.\</p>
  \</div>)* 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](pingintelligence_automated_configuring_hosts_file_downloading_software.html).

* `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](pingintelligence_automated_deployment_changing_default_settings.html).

* 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.

|   |                                                                                                                                                 |
| - | ----------------------------------------------------------------------------------------------------------------------------------------------- |
|   | 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.
