Understanding Hardware and Software Requirements
Hardware Requirements
Before proceeding with the installation, ensure that you have, at minimum, the following hardware with the specifications given below:
- Single Node Requirements
Node Bare Minimum CPU RAM Hard Disk Space Single Node 8 32 GB 500 GB
- Multi-Node Requirements
Node Bare Minimum CPU RAM Hard Disk Space Multi-node (master node) Note: One node for a single master installation and a minimum of three nodes for multi-master installation.4 4 GB 100 GB Multi-node (worker node) 8 32 GB 500 GB
For deploying the OVA, ensure that you have all the prerequisites as mentioned below.
- Platform Bare Minimum Requirements
| Supported Virtualization Platforms | Versions | VCPU | RAM | HDD |
|---|---|---|---|---|
| VM Server, VMware ESXi | 5.5 or later | 8v | 32 GB | 1 TB |
Software Requirements
| Operating System | Supported Versions |
|---|---|
| RHEL |
|
| Ubuntu |
|
| Rocky Linux |
|
| Oracle Linux |
|
Ensure the following packages are installed before proceeding with the AppViewX installation:
- nmap
- curl
- bindutils
- net-tools
- rsync
- nmapncat
- fontconfig
- zip
- unzip
- sysstat
- tcpdump
- nmap
- curl
- ebtables
- sysstat
- zip
- unzip
- rsync
- dnsutils
- fontconfig
- net-tools
- tcpdump
Prerequisite OS Packages and their Usage
This section outlines the essential packages required for the Linux server, which are necessary for both the installation and maintenance of AppViewX application. Each listed package is accompanied by a detailed description of its functionality and usage, ensuring a comprehensive understanding of its role in the AppViewX environment.
| S. No. | Package Name | Required by Application Functionality | Usage |
|---|---|---|---|
| 1 | Nmap (Ubuntu) | No | This package is essential during installation and upgrades to check if required ports are open, helping verify connectivity for services before deployment. Additionally, Nmap aids in troubleshooting network-related issues within the cluster. Its usage is diagnostic, with no impact on the functionality of the running application. |
| 2 | Nmap-Ncat (RHEL) | No | This package is essential during installation and upgrades to check if required ports are open, helping verify connectivity for services before deployment. Additionally, Nmap aids in troubleshooting network-related issues within the cluster. Its usage is diagnostic, with no impact on the functionality of the running application. |
| 3 | Curl | No | This package is not required for application functionality but it is used during the installation and AppViewX utilities. AppViewX utilities are a set of scripts which are used for maintenance purposes. |
| 4 | IPtables-ebtables (RHEL8) | Yes | This package is crucial for Kubernetes installation and upgrades, used by the kube-proxy component to set up iptable rules that manage pod and service communication. As Kubernetes is the base layer for the microservice-based application, this package is essential for setup and running the application. |
| 5 | IPtables-nft (RHEL 9) | Yes | This package is crucial for Kubernetes installation and upgrades, used by the kube-proxy component to set up iptable-nft rules that manage pod and service communication. As Kubernetes is the base layer for the microservice-based application, this package is essential for setup and runtime reliability. |
| 6 | Ebtables (Ubuntu) | Yes | This package is crucial for Kubernetes installation and upgrades, used by the kube-proxy component to set up iptable rules that manage pod and service communication. As Kubernetes is the base layer for the microservice-based application, this package is essential for setup and running the application. |
| 7 | Zip | No | The zip package compresses files and directories into a single archive, optimizing storage and facilitating file sharing. This package is not required for running the application but it's useful in compressing the logs file collected for troubleshooting. It is used during the installation of AppViewX. |
| 8 | Unzip | No | The unzip package extracts files from a .zip archive, allowing you to access the original files and directories. This package is not required for running the application but it's useful in compressing the logs file collected for troubleshooting. It is used during the installation of AppViewX. |
| 9 | Rsync | No | The rsync package synchronizes files and directories between two servers. This package is not required for running the application but it is used during the application patching activities. |
| 10 | OpenSSL | No | OpenSSL manages secure communications by generating, managing, and verifying cryptographic keys and certificates. Although it’s not required for running the main application, it is used in AppViewX utilities. It is used during the installation of AppViewX. |
| 11 | Systat | No | Sysstat provides system performance monitoring tools like sar, iostat, and mpstat to report on CPU, memory, disk, and network usage. It’s mainly for performance analysis and is not directly required for application functionality. |
| 12 | Bind-utils (RHEL) | No | The bind-utils package includes DNS troubleshooting tools like dig, nslookup, and host, which allow you to query DNS records, test DNS configurations, and perform domain lookups to resolve or debug DNS issues. It is used during the installation of applications but it's not mandatory for running the application. |
| 13 | Dnsutils (Ubuntu) | No | The dnsutils package provides tools like nslookup, dig, and host to perform DNS queries, troubleshoot DNS issues, and retrieve information about domain names and IP addresses. It is used during the installation of applications but it's not mandatory for running the application. |
Installation Prerequisites
These prerequisites are applicable to both single-node and multi-node setups.
Operating System Consistency
All nodes must run the same Operating System (OS) and the same version. (Refer to the section Software Requirements for the list of supported OS).
Default User Shell
The default shell for the installation user must be set to bash.
SSH and SSH Algorithm
SSH access (either single-node or multi-node) must be functional with PubKeyAuthentication enabled. Additionally, the ssh-rsa algorithm must be supported by the SSH daemon during installation (This can be disabled post-installation).
Filesystem Type at Installation Path
The target installation path must reside on an xfs or ext4 filesystem.
Permissions on /tmp Directory
The installation user must have read, write, and execute permissions on /tmp.
Backup Path Access
The installation user must have read and write access to the backup path directory.
Network Subnet Conflict Check
The SERVICE_SUBNET and POD_SUBNET specified in appviewx.conf must not conflict with any node IPs or existing network subnets in the environment.
Summary
All checks listed above must be successfully validated across all target nodes before proceeding with the installation. The installer (./install.sh) will perform these checks:
- Any critical failure among the above items will cause the installer to exit immediately.
- Remaining validations will be collected and presented in a tabular format, allowing the user to review and resolve issues before continuing with the application installation.
