System Requirements
This topic describes Deploy server and client system requirements, and the minimum requirements for workers, database, and middleware servers. Before you install Digital.ai Deploy application, ensure your system meets these requirements.
Important: All the requirements mentioned in this section are minimum requirements to run the Deploy application. Your requirements may vary depending on the usage pattern. Contact Digital.ai support team for further assistance.
Software Requirements
To install the Deploy server, your system must meet the software requirements described in this section.
Operating System
You can install the Deploy application on the following operating systems.
Server Requirements
To install the Deploy server, your system must meet the following requirements:
- Operating system: Any commercially supported version of 32-bit or 64-bit Microsoft Windows (under Mainstream Support), or a commercially supported Linux/Unix-based operating system.
-
Oracle, IBM, and OpenJDK: OpenJDK 11
Important: Deploy is not supported on non-LTS Java Development Kits (JDKs). See the Java SE support roadmap for details on which Java versions are LTS and non-LTS.
- CPU: Modern multi-core CPU with x64 architecture.
- RAM: At least 2 GB of RAM must be available for Deploy. See Memory requirements for more details.
- Hard disk space: See the Hard disk space requirements for more details.
Depending on the environment, the following may also be required:
-
Database: The default Deploy setting is to use the internal database that stores the data on the file system. This is intended for temporary use and is not recommended for production use. For production use, it is strongly recommended to use an industrial-grade external database server such as PostgreSQL, MySQL, Oracle, Microsoft SQL Server. For more information, see Configure the Deploy SQL repository.
- Click here to know the list of supported databases for Deploy.
- LDAP: To enable group-based security, an LDAP x.509 compliant registry is needed. For more information, see Connect Deploy to LDAP or Active Directory.
Networking Requirements
Before installing Deploy, ensure that the network connection to the Deploy host name is functional. You should be able to successfully execute ping xl_deploy_hostname
.
By default, the Deploy server uses port 4516
. If, during installation, you choose to enable secure communication (SSL) between the server and the Deploy GUI, the server uses port 4517
.
External worker setup requires 4516
or 4517
ports to be open to clients and worker machines and, additionally, port 8180
for master-worker communication on all masters and workers.
To enable secure communication and/or to change the port number during installation, choose the manual setup option when installing Deploy.
Memory Requirements
Depending on your configuration, memory requirements are:
- 3 GB for a single machine internal worker setup
- 2 GB for master instance and 2 GB per worker on one machine with local worker setup
- 2 GB for master machine and 2 GB for each worker machine in external worker setup
Hard Disk Space Requirements
The default installation of XLD requires approximately 250 MB of disk space (excluding Java and other tools), but it is recommended to have at least 100 GB of disk space on each master or worker node. Faster hard drives are preferred.
The main hard disk space usage comes from the artifacts and log files in the Deploy system. The required file system size of the artifacts will vary from installation to installation, but depends mainly on the:
- Size and storage mechanism used for artifacts
- Number of packages in the system
- Number of deployments performed (specifically, the amount of logging information stored)
Deploy supports three ways of storing artifacts:
- In an external file storage such as Maven or some HTTP(S) location, as described here. This is the preferred way.
- Directly in the database
- On a file system that is shared between all of the masters and workers. In this case, there must be enough space on the shared file system to hold all artifacts for all versions of all applications.
Deploy always requires that the disk space for the server be persistent. This is important for several reasons:
- Configuration files such as
deployit.conf
, and all the files incentralConfiguration
directory are updated by the running system - Log files are also updated by the running system (unless configured otherwise)
Estimating Required Disk Space
To estimate the total required disk space:
- Install and configure Deploy for your environment as described in this document. Make sure you correctly set up the database- or file-based repository.
- Estimate the number of packages to be imported, either the total number or the number per unit of time (
NumPackages
). - Estimate the number of deployments to be performed, either the total number or the number per unit of time (
NumDeployments
). - Record the amount of disk space used by Deploy (
InitialSize
). - Import a small number of packages using the GUI or CLI.
- Record the amount of disk space used by Deploy (
SizeAfterImport
). - Perform a small number of deployments.
- Record the amount of disk space used by Deploy (
SizeAfterDeployments
).
The needed amount of disk space in total is equal to:
Space Needed = ((SizeAfterImport - InitialSize) * NumPackages) +
((SizeAfterDeployments - SizeAfterImport) * NumDeployments)
If NumPackages
and NumDeployments
are expressed per time unit (the number of packages to be imported per month), the end result represents the space needed per time unit as well.
Minimal Reference Configuration
For both internal and external workers, having an external database instance is preferred.
Internal Worker Configuration
Important: These numbers are indicative. You may need to review the configuration based on the real-time usage of the Deploy product.
- Modern multi-core CPU with x64 architecture
- RAM: 8 GB
- Hard drive: 100 GB
- Faster network connection between database and master/worker instances is preferred
External Worker Configuration
Master:
- Modern multi-core CPU with x64 architecture
- RAM: 8 GB
- Hard drive: 100 GB
- Faster network connection between database and master/worker instances is preferred
Worker:
- Modern multi-core CPU with x64 architecture
- RAM: 8 GB
- Hard drive: 100 GB
- Faster network connection between database and master/worker instances is preferred
Database Server Configuration
Minimal requirements:
- Modern multi-core CPU with x64 architecture
- RAM: 8 GB
- Hard drive: 100 GB
- Faster network connection between database and master/worker instances is preferred
For additional information check database vendor requirements pages:
- MySQL: https://dev.mysql.com/doc/mysql-monitor/8.0/en/system-prereqs-reference.html
- PostgreSQL: https://www.postgresql.org/docs/9.3/index.html
- Oracle: https://docs.oracle.com/cd/B28359_01/install.111/b32002/pre_install.htm#LADBI202
- MSSql: https://docs.microsoft.com/en-us/sql/sql-server/install/hardware-and-software-requirements-for-installing-sql-server?view=sql-server-2017
Client Requirements
GUI Clients
To use the Deploy GUI, your system must meet the following requirements:
-
Web Browser:
- Firefox: the latest 2 versions
- Chrome: the latest 2 versions
- Internet Explorer 11 or later
Note: Internet Explorer Compatibility View is not supported.
CLI Clients
To use the Deploy CLI, your system must meet the following requirements:
- Operating System: Microsoft Windows or Unix-based operating system running Java.
- Java Runtime Environment: The same Java Development Kit (JDK) version as your version of Deploy.
Middleware Server Requirements
Unix Middleware Server Requirements
Unix-based middleware servers that Deploy interacts with must meet the following requirements:
- Credentials: Deploy must be able to log in to the target systems using a user name and password combination to perform at least the following Unix commands:
cp
,ls
,mv
,rm
,mkdir
, andrmdir
. If the login user cannot perform these actions, Deploy can also use asudo
user that can execute these commands. -
SSH Access: The target systems must be accessible by SSH from the Deploy server. They should run an SSH2 server. It is also possible to handle key-based authorization. Note:
- It is possible that the SSH daemon on AIX hangs with certain types of SSH traffic.
- For security, the SSH account that is used to access a host should have limited rights.
- A variety of Linux distributions have made SSH require a TTY by default. This setting is incompatible with Deploy and is controlled by the
Defaults requiretty
setting in thesudoers
file.
Windows Middleware Server Requirements
Microsoft Windows-based middleware servers that Deploy interacts with must meet the following requirements:
- File System Access: The target file system must be accessible via CIFS from the Deploy server.
- Host Access: The target host must be accessible from the Deploy server via WinRM or Windows Telnet server running in stream mode.
- Directory Shares: The account used to access a target system must have access to the host’s administrative shares such as
C$
. -
Ports:
- For CIFS connectivity, port 445 on the target system must be accessible from the Deploy server.
- For Telnet connectivity, port 23 must be accessible from the Deploy server.
- For WinRM connectivity, port 5985 (HTTP) or port 5986 (HTTPS) must be accessible from the Deploy server.
Extending Middleware Support
You can connect Deploy to middleware servers that do not support SSH, Telnet, or WinRM. This requires you to use the Overthere remote execution framework to create a custom access method that connects to the server.