NOTE: This is the Initial beta release of the JFrog Platform chart (Backward compatibility is not guaranteed)
- Kubernetes 1.12+
- Artifactory Enterprise(+) trial license get one from here or Pro trial license get one from here
This chart will do the following:
- Deploy JFrog Platform (artifactory-ha, xray, distribution, mission-control and pipelines). Fully customizable.
- Deploy a PostgreSQL database using the bitnami/postgresql chart (can be changed) NOTE: For production grade installations it is recommended to use an external PostgreSQL.
- Deploy a Rabbitmq using the bitnami/rabbitmq chart (can be changed)
- Deploy a Redis using the bitnami/redis chart (can be changed)
- Deploy an optional Nginx server
Before installing JFrog helm charts, you need to add the ChartCenter helm repository to your helm client
helm repo add center https://repo.chartcenter.io
helm repo update
To install the chart with the release name jfrog-platform
helm upgrade --install jfrog-platform --namespace jfrog-platform center/jfrog/jfrog-platform
The JFrog platform chart requires an artifactory license. There are three ways to manage the license. Artifactory UI, REST API, or a Kubernetes Secret.
The easier and recommended way is the Artifactory UI. Using the Kubernetes Secret or REST API is for advanced users and is better suited for automation.
IMPORTANT: You should use only one of the following methods. Switching between them while a cluster is running might disable your Artifactory HA cluster!
Once primary cluster is running, open Artifactory UI and insert the license(s) in the UI. See HA installation and setup for more details. Note that you should enter all licenses at once, with each license is separated by a newline. If you add the licenses one at a time, you may get redirected to a node without a license and the UI won't load for that node.
You can add licenses via REST API (https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+API#ArtifactoryRESTAPI-InstallHAClusterLicenses). Note that the REST API expects "\n" for the newlines in the licenses.
You can deploy the Artifactory license(s) as a Kubernetes secret. Prepare a text file with the license(s) written in it. If writing multiple licenses (must be in the same file), it's important to put two new lines between each license block!
# Create the Kubernetes secret (assuming the local license file is 'art.lic')
kubectl create secret generic artifactory-cluster-license --from-file=./art.lic
# Create a customvalues.yaml file
artifactory-ha:
enabled: true
artifactory:
license:
secret: artifactory-cluster-license
dataKey: art.lic
# Apply the values file during install
helm upgrade --install jfrog-platform --namespace jfrog-platform center/jfrog/jfrog-platform -f customvalues.yaml
NOTE: This method is relevant for initial deployment only! Once Artifactory is deployed, you should not keep passing these parameters as the license is already persisted into Artifactory's storage (they will be ignored). Updating the license should be done via Artifactory UI or REST API.
customvalues.yaml
artifactory-ha:
enabled: true
artifactory:
license:
licenseKey: |-
<LICENSE_KEY1>
<LICENSE_KEY2>
<LICENSE_KEY3>
helm upgrade --install jfrog-platform --namespace jfrog-platform center/jfrog/jfrog-platform -f customvalues.yaml
NOTE: This method is relevant for initial deployment only! Once Artifactory is deployed, you should not keep passing these parameters as the license is already persisted into Artifactory's storage (they will be ignored). Updating the license should be done via Artifactory UI or REST API. If you want to keep managing the artifactory license using the same method, you can use the copyOnEveryStartup example shown in the values.yaml file
This chart would provide flexibility to enable one or more of the jfrog products.
- Xray
- Distribution
- Mission-Control
- Pipelines
For example to enable xray and mission-control with artifactory, you can refer the following yaml and pass it during install. customvalues.yaml
xray:
enabled: true
mission-control:
enabled: true
helm upgrade --install jfrog-platform --namespace jfrog-platform center/jfrog/jfrog-platform -f customvalues.yaml
helm uninstall jfrog-platform --namespace jfrog-platform
This will completely delete your Jfrog Platform chart. NOTE: The removal of the helm release will not completely remove the persistent volumes. You need to explicitly remove them.