diff --git a/deploy/cluster-configuration.yaml b/deploy/cluster-configuration.yaml index da39a5f39..2db619b02 100644 --- a/deploy/cluster-configuration.yaml +++ b/deploy/cluster-configuration.yaml @@ -78,12 +78,9 @@ spec: devops: # (CPU: 0.47 Core, Memory: 8.6 G) Provide an out-of-the-box CI/CD system based on Jenkins, and automated workflow tools including Source-to-Image & Binary-to-Image. enabled: false # Enable or disable the KubeSphere DevOps System. # resources: {} - jenkinsMemoryLim: 2Gi # Jenkins memory limit. + jenkinsMemoryLim: 4Gi # Jenkins memory limit. jenkinsMemoryReq: 1500Mi # Jenkins memory request. jenkinsVolumeSize: 8Gi # Jenkins volume size. - jenkinsJavaOpts_Xms: 1200m # The following three fields are JVM parameters. - jenkinsJavaOpts_Xmx: 1600m - jenkinsJavaOpts_MaxRAM: 2g events: # Provide a graphical web console for Kubernetes Events exporting, filtering and alerting in multi-tenant Kubernetes clusters. enabled: false # Enable or disable the KubeSphere Events System. # operator: diff --git a/docs/vars.md b/docs/vars.md index c4cea8781..45ada6d71 100644 --- a/docs/vars.md +++ b/docs/vars.md @@ -26,13 +26,10 @@ alerting: auditing: enabled: false devops: - enabled: false - jenkinsMemoryLim: 2Gi - jenkinsMemoryReq: 1500Mi - jenkinsVolumeSize: 8Gi - jenkinsJavaOpts_Xms: 512m - jenkinsJavaOpts_Xmx: 512m - jenkinsJavaOpts_MaxRAM: 2g + enabled: false # Enable or disable the KubeSphere DevOps System. + jenkinsMemoryLim: 4Gi # Jenkins memory limit. + jenkinsMemoryReq: 1500Mi # Jenkins memory request. + jenkinsVolumeSize: 8Gi # Jenkins volume size. events: enabled: false logging: diff --git a/roles/ks-devops/defaults/main.yaml b/roles/ks-devops/defaults/main.yaml index 7ccc792af..97bb8d55f 100644 --- a/roles/ks-devops/defaults/main.yaml +++ b/roles/ks-devops/defaults/main.yaml @@ -5,9 +5,7 @@ devops: jenkinsMemoryReq: "{{ jenkins_memory_req |default('4Gi') }}" JavaOpts: > - -Xms{{ devops.jenkinsJavaOpts_Xms | default('3g') }} - -Xmx{{ devops.jenkinsJavaOpts_Xmx | default('6g') }} - -XX:MaxRAM={{ devops.jenkinsJavaOpts_MaxRAM | default('8g') }} + -XX:MaxRAMPercentage=80 -XX:MinRAMPercentage=60 -Dhudson.slaves.NodeProvisioner.initialDelay=20 -Dhudson.slaves.NodeProvisioner.MARGIN=50 -Dhudson.slaves.NodeProvisioner.MARGIN0=0.85 @@ -17,6 +15,8 @@ JavaOpts: > -Dhudson.security.csrf.DefaultCrumbIssuer.EXCLUDE_SESSION_ID=true -Dio.jenkins.plugins.casc.ConfigurationAsCode.initialDelay=10000 -Djenkins.install.runSetupWizard=false + -XX:+AlwaysPreTouch + -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -XX:+UseStringDeduplication -XX:+ParallelRefProcEnabled diff --git a/roles/ks-devops/templates/ks-devops-values.yaml.j2 b/roles/ks-devops/templates/ks-devops-values.yaml.j2 index 2c101861c..5da0fbfb4 100644 --- a/roles/ks-devops/templates/ks-devops-values.yaml.j2 +++ b/roles/ks-devops/templates/ks-devops-values.yaml.j2 @@ -78,7 +78,7 @@ jenkins: cpu: "0.1" memory: "{{ devops.jenkinsMemoryReq }}" limits: - cpu: "1" + cpu: "2" memory: "{{ devops.jenkinsMemoryLim }}" JavaOpts: "{{ JavaOpts }}" Agent: