Distribution HA Helm Installation

JFrog Installation & Setup Documentation

Content Type
Installation & Setup


Currently, it is not possible to connect a JFrog product (e.g., Distribution) that is within a Kubernetes cluster with another JFrog product (e.g., Artifactory) that is outside of the cluster, as this is considered a separate network. Therefore, JFrog products cannot be joined together if one of them is in a cluster.

Deploying Artifactory for Small, Medium or Large Installations

In the chart directory, includes three values files, one for each installation type--small/medium/large. These values files are recommendations for setting resources requests and limits for your installation. You can find the files in the corresponding chart directory.

High Availability

For an HA Distribution installation, set the replicaCount in the values.yaml file to >1 (the recommended is 3). It is highly recommended to also set RabbitMQ to run as an HA cluster. Start Distribution with 3 replicas per service and 3 replicas for RabbitMQ.

  1. Add the https://charts.jfrog.io to your Helm client.

    helm repo add jfrog https://charts.jfrog.io
  2. Update the repository.

    helm repo update
  3. Initiate installation by providing a join key and JFrog url as a parameter to the Distribution chart installation.

    helm upgrade --install distribution --set distribution.joinKey=<YOUR_PREVIOUSLY_RETIREVED_JOIN_KEY> \
                 --set distribution.jfrogUrl=<YOUR_PREVIOUSLY_RETIREVED_BASE_URL> --namespace distribution jfrog/distribution

    Alternatively, you can create a secret containing the join key manually and pass it to the template during install/upgrade.

    # Create a secret containing the key. The key in the secret must be named join-key
    kubectl create secret generic my-secret --from-literal=join-key=<YOUR_PREVIOUSLY_RETIREVED_JOIN_KEY>
    # Pass the created secret to helm
    helm upgrade --install distribution --set distribution.joinKeySecretName=my-secret --namespace distribution jfrog/distribution


    In either case, make sure to pass the same join key on all future calls to helm install and helm upgrade. This means always passing --set distribution.joinKey=<YOUR_PREVIOUSLY_RETIREVED_JOIN_KEY>. In the second, this means always passing --set distribution.joinKeySecretName=my-secret and ensuring the contents of the secret remain unchanged.

  4. Customize the product configuration (optional) including database, Java Opts, and filestore.


    Unlike other installations, Helm Chart configurations are made to the values.yaml and are then applied to the system.yaml.

    Follow these steps to apply the configuration changes.

    1. Make the changes to values.yaml.

    2. Run the command.

      helm upgrade -- install distribution --namespace distribution -f values.yaml

  5. Access Distribution from your browser at:http://<jfrogUrl>/ui/: go to theDashboard tab in theApplicationmodule in the UI.

  6. Check the status of your deployed Helm releases.

    helm status distribution


For advanced installation options, see Helm Charts Installers for Advanced Users.