Skip to main content
Version: 13.x (Current)

Self-Hosted installation requirements

Mia-Platform Console Self Hosted installation implies that the customer has already installed in its systems all the required software and tools.

Self-Hosted installation architecture

The following picture shows the high-level architecture for a Self-Hosted Mia-Platform Console installation. The communication between the components must be allowed as shown in the architecture.

Self-Hosted installation architecture

The following software and hardware recommendations are for installing Mia-Platform Console On-Premises.

Architectural prerequisites


Blanks cell in the following table are for tools that do not require a specific version or a minimum of RAM and CPU.

ToolVersionMinimum CPUMinimum RAM
Auth Provider OktaSaaS
GitLab> 14.x
GitHub> 3.x
Azure AD B2CSaaS
Bitbucket Server> 8.x2 cores3 GB
Git Provider GitLab> 14.x4 cores4 GB
GitHub> 3.x4 cores32 GB
Azure ReposSaaS
Bitbucket Server> 8.x2 cores3 GB
Secret Manager GitLabSaaS
CI/CD Tool GitLab CI Runners> 14.x1 core2 GB
GitHub ActionsSaaS
Azure PipelinesSaaS
NoSQL database MongoDB Enterprise> 5
<= 7
2 cores2 GB
Redis Cache Redis>= 6
<= 7
2 cores2 GB
Runtime Kubernetes>= 1.21
<= 1.30
2 CPU requests4 GiB Memory requests
Container image registryAny container image registrySaaS
Object Storage Google Cloud StorageSaaS
S3-Compatible Object StoragesSaaS
Key Management Service Google Cloud PlatformSaaS
Local KeySaaS

Suggested resource allocation per tool


The following is an example architecture for a proper installation of the Mia-Platform Console supporting ~500 users and ~200 projects:

GitLab1418 core32 GB200 GB
GitLab CI Runners1421 core2 GB25 GB
MongoDB Enterprise532 core8 GB20 GB
Redis71 GB1 GB
Google Kubernetes Engine1.282 worker nodes4 core8 GB
Google Container RegistrySaaS
Google Cloud StorageSaaS
Google Cloud Platform KMSSaaS

Runtime requirements

Applications developed with Mia-Platform Console will run in a Kubernetes environment. This Kubernetes runtime environment is managed and monitored by Mia-Platform Console.
In order to do this, the following requirements must be fulfilled for a self-hosted installation.

Self-Hosted runtime installation prerequisites

The following tools will be installed in your runtime Kubernetes clusters if desired:

  • (Optional) Mia Monitoring stack
  • (Optional) Mia Logging stack
  • (Optional) Traefik Ingress Controller
  • (Optional) Velero for Disaster Recovery

These are minimum requirements for your cluster. These requirements have a scale factor that must be taken in account when estimating your cluster size.

ToolNamespace CPU limitsNamespace RAM limitsScales with
Monitoring stack1 core3 GiBNumber of cluster nodes, number of metrics
Logging stack0.5 core1 GiBNumber of cluster nodes, number of applications logs, traffic
Traefik Ingress Controller0.3 core300 MiBTraffic
Velero for Disaster Recovery0.2 core400 MiB-

In total, the minimum requirements in order to host all the above tools in the Kubernetes cluster are about 4 cores and 8 GiB of memory. Above values will scale with the number of nodes, traffic, applications.

Velero, in addition, needs a S3-like bucket storage for keeping the Kubernetes cluster backup.

Suggested resource allocation for your runtime


The following requirements are just an approximate reference. For a more accurate estimate, an assessment of your application and architecture is needed.


To size your cluster you should reserve a minimum of 3 cores for Operations tools and minimum 2 cores for each Runtime Environment managed by Mia-Platform. A Project can managed one or more Runtime Environment.

Cluster sizing examples:

  • 3 Mia-Platform Project with 3 Runtime Environments: 12 worker nodes (2 cores, 4 GiB RAM each). 5 cores for Operations tools and 19 cores for your applications
  • 5 Mia-Platform Project with 3 Runtime Environments: 18 worker nodes (2 cores, 4 GiB RAM each). 6 cores for Operations tools and 30 cores for your applications