jfrog / charts

JFrog official Helm Charts
https://jfrog.com/integration/helm-repository/
Apache License 2.0
261 stars 447 forks source link

Setting configuration variable for Artifactory-HA heavy loads #649

Closed lexual closed 4 years ago

lexual commented 4 years ago

Hi,

We have been experiencing some performance issues with our Artifactory installation, and are looking to tweak some of the settings set out here:

https://jfrog.com/knowledge-base/how-do-i-tune-artifactory-for-heavy-loads/

e.g. values in:

Is this possible with current helm charts?

lexual commented 4 years ago

If not, any short-term workaround ideas would be appreciated.

eldada commented 4 years ago

Hey @lexual . These tunings are possible. In the chart's values, there is a section that allows setting custom environment variables and extra java options. This info uses features from official Artifactory Docker image.

In the chart's values.yaml, use artifactory.extraEnvironmentVariables for setting these variables. The content of artifactory.system.properties can be replaced with command line system properties to java. For the extra java opts, use a common artifactory.javaOpts.other or specific primary/node settings with artifactory.primary.javaOpts.other and artifactory.node.javaOpts.other to pass the needed system property like -Dartifactory.access.client.max.connections=100.

danielezer commented 4 years ago

@lexual To conclude, it would be something like the following:

artifactory:
  extraEnvironmentVariables:
    - name: SERVER_XML_ARTIFACTORY_MAX_THREADS
       value: "200"
    - name: SERVER_XML_ACCESS_MAX_THREADS
      value: "50"
    - name: DB_POOL_MAX_ACTIVE
      value: "300"

  javaOpts:
    other: "-Dartifactory.async.poolMaxQueueSize=100000 -Dartifactory.http.client.max.total.connections=100"

You can look at the values.yaml as a reference to the extraEnvironmentVariables