Skip to main content

System Requirements

Before installing AHD, check the following minimum requirements.

Not respecting these requirements might lead to malfunctioning or performance issues, so it is vital to ensure that they are properly met.

CPU Architecture and Hypervisors​

AHD Appliance provides Fedora CoreOS out-of-the-box, inheriting the OS supported platforms Nevertheless, AHD internal components are compiled for x86 CPU architecture on the underlying hardware.

x86-64-v3 CPU Required​

The container images used by AHD are based on RHEL 10 (UBI 10), which is compiled for the x86-64-v3 microarchitecture level (AVX2, BMI1, BMI2, FMA, LZCNT, MOVBE). On a CPU that does not support it, containers fail at startup with Fatal glibc error: CPU does not support x86-64-v3.

This means:

  • physical hardware must be Intel Haswell (or newer) or AMD Excavator/Zen (or newer)
  • on VMware vSphere, the EVC mode of the cluster (or of the VM) must be Intel "Haswell" or higher: "Sandy Bridge" and "Ivy Bridge" are not enough
  • on other hypervisors, the virtual CPU must expose the host features (e.g. host-passthrough on KVM)

To verify it, run the following command inside the VM:

/lib64/ld-linux-x86-64.so.2 --help | grep 'x86-64-v3'

The output must contain x86-64-v3 (supported, searched).

warning

Changing the EVC mode requires a full power-off/on of the VM: a guest reboot is not enough.

Tested Hypervisors​

We tested AHD Appliances on

  • VMware
  • VirtualBox
  • Hyper-V
  • KVM
  • QEMU please refer to your hypervisor for requirements or support

Minimum Hardware Resource Requirements​

The hardware requirements of AHD depend on the applications that are going to be installed. We'll provide some common usage examples of Grain, to help sizing the resources.

info

These requirements are the minimum amount and may need to be increased based on the load the application will handle.

Make sure to keep track of resource usage and tune the hardware of your deployment based on usage.

warning

Unrelated to what you're going to install, it is highly recommended to create a VM with at least 2 CPU cores, 4GB RAM and 50GB disk size

Webup​

If you are using only Webup, connecting to an external backend (i.e. Grain's IBMi backend):

ComponentCPU (cores)RAM (GB)Disk (GB)
Webup (web application)2850
AS400-Proxy (communication)1410
H53 (printing services)1410

Kokos​

For Kokos, the standard Grain backend, the minimum requirements depend on which non-standard MicroExecutors you deploy.

The "Base" component includes:

  • Dispatcher
  • ME Java RPGLE Std
  • MongoDB
  • PostgreSQL
  • OpenVSCode
ComponentCPU (cores)RAM (GB)Disk (GB)
Base2850
Event queues1220
Custom MicroExecutorsSee ME requirementsSee ME requirementsSee ME requirements

Restapi​

If you're using Grain as an integration HUB:

ComponentCPU (cores)RAM (GB)Disk (GB)
Restapi2430

Commons​

If you need Monitoring and Metrics:

ComponentCPU (cores)RAM (GB)Disk (GB)
Monitoring Stack (Loki + Prometheus + Grafana)2450

info

If in the future you need to install additional components or scale up with multiple replicas, adjust the virtual machine hardware accordingly.

Networking Requirements​

Network traffic must be allowed on the following ports and DNS for a correct installation of AHD.

warning

* stands for ANY third level domain

Example: *.smeup.cloud should allow traffic from/to:

  • test.smeup.cloud
  • example.smeup.cloud
  • xyz.smeup.cloud
  • ...

Egress traffic (from AHD)​

DNSProtocolUsage
*.smeup.cloudHTTPSInfrastructure as Code Smeup
*.amazonaws.comHTTPSSmeup Container Images
*.ecr.awsHTTPSSmeup Container Images
*.docker.ioHTTPSOSS Container Images
*.quay.ioHTTPSOSS Container Images
*.ghcr.ioHTTPSOSS Container Images
*.github.comHTTPSOSS Container Images
*.fedoraproject.orgHTTPSOS Updates
*.rancher.ioHTTPSk3s Updates

Ingress traffic (to AHD)​

PortUsageWhenNotes
22SSHAlwaysOnly from trusted, private networks!
443HTTPSAlways
6443API Server k3sOnly for management from a remote ArgoCD instanceWhitelist only the IP of the VM instance where ArgoCD is located