Runtime Platform
Runtime Platform
The recommended platform to install and run the JFrog Platform applications on is Kubernetes.
The JFrog Platform should be deployed in Kubernetes using the jfrog-platform helm chart.
Kubernetes Topology guidelines
For a production grade, high performance and resilience JFrog Platform deployment, see the following guidelines:
- A dedicated node pool should be allocated for each of the following JFrog applications to best fit their necessary resources and for workload isolation
- Artifactory
- Ingress (Nginx or equivalent)
- Xray
- Advance Security (JAS)
- PodAntiAffinity
- Require Artifactory pods anti-affinity between them
- Prefer Xray pods anti-affinity between each other
- Require Xray pods anti-affinity between them and Artifactory pods
- Require JAS pods anti-affinity between them and Artifactory and Xray pods
- Require Ingress controller/Nginx pods anti-affinity between them and also Xray and Artifactory pods
- Best is to use a dedicated node group for Ingress controller pods
- Prefer Xray RabbitMQ pods anti-affinity between them, Artifactory and Xray pods
- If running the databases (PostgreSQL) in Kubernetes, it must require pods anti-affinity with all JFrog applications and ingress/nginx pods
Terraform Example
See an example in the JFrog Charts repository, for a Terraform configuration that creates the necessary AWS infrastructure and services required to run the JFrog Platform and follow the guidelines above.