diff --git a/.github/workflows/chart-preview.yml b/.github/workflows/chart-preview.yml index 7b45d60f..eabac54d 100644 --- a/.github/workflows/chart-preview.yml +++ b/.github/workflows/chart-preview.yml @@ -92,7 +92,6 @@ jobs: sed -i "s/name: ${{env.CHART_REPO}}/name: ${{ env.CHART_PREFIX }}-${{env.CHART_REPO}}/" charts/${{env.CHART_REPO}}/Chart.yaml sed -i "s/description: .*/description: ${flatBranchName}/g" charts/${{env.CHART_REPO}}/Chart.yaml # sed -i "s/version: \(.*\)/version: \1-${flatBranchName}/" charts/${{env.CHART_REPO}}/Chart.yaml - helm package --sign --key "$CR_KEY" --keyring $CR_KEYRING --passphrase-file "$CR_PASSPHRASE_FILE" charts/$CHART_REPO -u -d ${{ env.EXPORT_DIR }}/${{env.CHART_REPO}}/charts cp charts/${{env.CHART_REPO}}/README.md ${{ env.EXPORT_DIR }}/${{env.CHART_REPO}}/${{env.CHART_REPO}}.md helm repo index ${{ env.EXPORT_DIR }}/${{env.CHART_REPO}} diff --git a/.github/workflows/chart-releaser.yml b/.github/workflows/chart-releaser.yml index 30d45e4d..81547cba 100644 --- a/.github/workflows/chart-releaser.yml +++ b/.github/workflows/chart-releaser.yml @@ -162,4 +162,3 @@ jobs: git push fi - diff --git a/.gitignore b/.gitignore index 3a4745cd..4653df4b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ test-helm.yaml */local-values.yaml test.yaml test-*.yaml +charts/plane-ce/charts diff --git a/charts/plane-ce/Chart.yaml b/charts/plane-ce/Chart.yaml index db24f691..0cda0481 100644 --- a/charts/plane-ce/Chart.yaml +++ b/charts/plane-ce/Chart.yaml @@ -5,7 +5,7 @@ description: Meet Plane. An open-source software development tool to manage issu type: application -version: 1.1.4 +version: 1.2.0 appVersion: "0.27.1" home: https://plane.so diff --git a/charts/plane-ce/README.md b/charts/plane-ce/README.md index c09656ac..138947ef 100644 --- a/charts/plane-ce/README.md +++ b/charts/plane-ce/README.md @@ -147,10 +147,14 @@ | Setting | Default | Required | Description | |---|:---:|:---:|---| | web.replicas | 1 | Yes | Kubernetes helps you with scaling up/down the deployments. You can run 1 or more pods for each deployment. This key helps you setting up number of replicas you want to run for this deployment. It must be >=1 | -| web.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| web.cpuRequest | 100m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| web.memoryRequest | 200Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| | web.cpuLimit | 500m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| -| web.memoryRequest | 50Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| -| web.cpuRequest | 50m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| web.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| web.autoscaling.minReplicas | 1 | | Minimum number of replicas for the Horizontal Pod Autoscaler | +| web.autoscaling.maxReplicas | 5 | | Maximum number of replicas for the Horizontal Pod Autoscaler | +| web.autoscaling.targetCPUUtilizationPercentage | 90 | | Target CPU utilization percentage for the Horizontal Pod Autoscaler | +| web.autoscaling.targetMemoryUtilizationPercentage | 90 | | Target memory utilization percentage for the Horizontal Pod Autoscaler | | web.image| artifacts.plane.so/makeplane/plane-frontend | | This deployment needs a preconfigured docker image to function. Docker image name is provided by the owner and must not be changed for this deployment | | web.pullPolicy | Always | | Using this key, user can set the pull policy for the deployment of `web`. | | web.assign_cluster_ip | false | | Set it to `true` if you want to assign `ClusterIP` to the service | @@ -160,10 +164,14 @@ | Setting | Default | Required | Description | |---|:---:|:---:|---| | space.replicas | 1 | Yes | Kubernetes helps you with scaling up/down the deployments. You can run 1 or more pods for each deployment. This key helps you setting up number of replicas you want to run for this deployment. It must be >=1 | -| space.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| space.cpuRequest | 100m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| space.memoryRequest | 200Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| | space.cpuLimit | 500m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| -| space.memoryRequest | 50Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| -| space.cpuRequest | 50m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| space.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| space.autoscaling.minReplicas | 1 | | Minimum number of replicas for the Horizontal Pod Autoscaler | +| space.autoscaling.maxReplicas | 5 | | Maximum number of replicas for the Horizontal Pod Autoscaler | +| space.autoscaling.targetCPUUtilizationPercentage | 90 | | Target CPU utilization percentage for the Horizontal Pod Autoscaler | +| space.autoscaling.targetMemoryUtilizationPercentage | 90 | | Target memory utilization percentage for the Horizontal Pod Autoscaler | | space.image| artifacts.plane.so/makeplane/plane-space| | This deployment needs a preconfigured docker image to function. Docker image name is provided by the owner and must not be changed for this deployment | | space.pullPolicy | Always | | Using this key, user can set the pull policy for the deployment of `space`. | | space.assign_cluster_ip | false | | Set it to `true` if you want to assign `ClusterIP` to the service | @@ -173,10 +181,14 @@ | Setting | Default | Required | Description | |---|:---:|:---:|---| | admin.replicas | 1 | Yes | Kubernetes helps you with scaling up/down the deployments. You can run 1 or more pods for each deployment. This key helps you setting up number of replicas you want to run for this deployment. It must be >=1 | -| admin.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| admin.cpuRequest | 100m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| admin.memoryRequest | 200Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| | admin.cpuLimit | 500m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| -| admin.memoryRequest | 50Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| -| admin.cpuRequest | 50m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| admin.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| admin.autoscaling.minReplicas | 1 | | Minimum number of replicas for the Horizontal Pod Autoscaler | +| admin.autoscaling.maxReplicas | 5 | | Maximum number of replicas for the Horizontal Pod Autoscaler | +| admin.autoscaling.targetCPUUtilizationPercentage | 90 | | Target CPU utilization percentage for the Horizontal Pod Autoscaler | +| admin.autoscaling.targetMemoryUtilizationPercentage | 90 | | Target memory utilization percentage for the Horizontal Pod Autoscaler | | admin.image| artifacts.plane.so/makeplane/plane-admin | | This deployment needs a preconfigured docker image to function. Docker image name is provided by the owner and must not be changed for this deployment | | admin.pullPolicy | Always | | Using this key, user can set the pull policy for the deployment of `admin`. | | admin.assign_cluster_ip | false | | Set it to `true` if you want to assign `ClusterIP` to the service | @@ -186,10 +198,14 @@ | Setting | Default | Required | Description | |---|:---:|:---:|---| | live.replicas | 1 | Yes | Kubernetes helps you with scaling up/down the deployments. You can run 1 or more pods for each deployment. This key helps you setting up number of replicas you want to run for this deployment. It must be >=1 | -| live.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| -| live.cpuLimit | 500m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| -| live.memoryRequest | 50Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| -| live.cpuRequest | 50m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| live.cpuRequest | 500m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| live.memoryRequest | 1000Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| +| live.cpuLimit | 1000m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| +| live.memoryLimit | 2000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| live.autoscaling.minReplicas | 1 | | Minimum number of replicas for the Horizontal Pod Autoscaler | +| live.autoscaling.maxReplicas | 5 | | Maximum number of replicas for the Horizontal Pod Autoscaler | +| live.autoscaling.targetCPUUtilizationPercentage | 90 | | Target CPU utilization percentage for the Horizontal Pod Autoscaler | +| live.autoscaling.targetMemoryUtilizationPercentage | 90 | | Target memory utilization percentage for the Horizontal Pod Autoscaler | | live.image| artifacts.plane.so/makeplane/plane-live | | This deployment needs a preconfigured docker image to function. Docker image name is provided by the owner and must not be changed for this deployment | | live.pullPolicy | Always | | Using this key, user can set the pull policy for the deployment of `live`. | | env.live_sentry_dsn | | | (optional) Live service deployment comes with some of the preconfigured integration. Sentry is one among those. Here user can set the Sentry provided DSN for this integration.| @@ -202,10 +218,14 @@ | Setting | Default | Required | Description | |---|:---:|:---:|---| | api.replicas | 1 | Yes | Kubernetes helps you with scaling up/down the deployments. You can run 1 or more pods for each deployment. This key helps you setting up number of replicas you want to run for this deployment. It must be >=1 | -| api.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| -| api.cpuLimit | 500m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| -| api.memoryRequest | 50Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| -| api.cpuRequest | 50m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| api.cpuRequest | 1000m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| api.memoryRequest | 1000Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| +| api.cpuLimit | 2000m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| +| api.memoryLimit | 2000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| api.autoscaling.minReplicas | 1 | | Minimum number of replicas for the Horizontal Pod Autoscaler | +| api.autoscaling.maxReplicas | 5 | | Maximum number of replicas for the Horizontal Pod Autoscaler | +| api.autoscaling.targetCPUUtilizationPercentage | 90 | | Target CPU utilization percentage for the Horizontal Pod Autoscaler | +| api.autoscaling.targetMemoryUtilizationPercentage | 90 | | Target memory utilization percentage for the Horizontal Pod Autoscaler | | api.image| artifacts.plane.so/makeplane/plane-backend | | This deployment needs a preconfigured docker image to function. Docker image name is provided by the owner and must not be changed for this deployment | | api.pullPolicy | Always | | Using this key, user can set the pull policy for the deployment of `api`. | | env.sentry_dsn | | | (optional) API service deployment comes with some of the preconfigured integration. Sentry is one among those. Here user can set the Sentry provided DSN for this integration.| @@ -218,10 +238,14 @@ | Setting | Default | Required | Description | |---|:---:|:---:|---| | worker.replicas | 1 | Yes | Kubernetes helps you with scaling up/down the deployments. You can run 1 or more pods for each deployment. This key helps you setting up number of replicas you want to run for this deployment. It must be >=1 | -| worker.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| -| worker.cpuLimit | 500m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| -| worker.memoryRequest | 50Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| -| worker.cpuRequest | 50m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| worker.cpuRequest | 500m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| worker.memoryRequest | 2000Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| +| worker.cpuLimit | 1000m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| +| worker.memoryLimit | 4000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| worker.autoscaling.minReplicas | 1 | | Minimum number of replicas for the Horizontal Pod Autoscaler | +| worker.autoscaling.maxReplicas | 5 | | Maximum number of replicas for the Horizontal Pod Autoscaler | +| worker.autoscaling.targetCPUUtilizationPercentage | 90 | | Target CPU utilization percentage for the Horizontal Pod Autoscaler | +| worker.autoscaling.targetMemoryUtilizationPercentage | 90 | | Target memory utilization percentage for the Horizontal Pod Autoscaler | | worker.image| artifacts.plane.so/makeplane/plane-backend | | This deployment needs a preconfigured docker image to function. Docker image name is provided by the owner and must not be changed for this deployment | ### Beat-Worker deployment @@ -229,10 +253,14 @@ | Setting | Default | Required | Description | |---|:---:|:---:|---| | beatworker.replicas | 1 | Yes | Kubernetes helps you with scaling up/down the deployments. You can run 1 or more pods for each deployment. This key helps you setting up number of replicas you want to run for this deployment. It must be >=1 | -| beatworker.memoryLimit | 1000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| -| beatworker.cpuLimit | 500m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| -| beatworker.memoryRequest | 50Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| -| beatworker.cpuRequest | 50m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| beatworker.cpuRequest | 500m | | Every deployment in kubernetes can be set to use minimum cpu they are allowed to use. This key sets the cpu request for this deployment to use.| +| beatworker.memoryRequest | 1000Mi | | Every deployment in kubernetes can be set to use minimum memory they are allowed to use. This key sets the memory request for this deployment to use.| +| beatworker.cpuLimit | 1000m | | Every deployment in kubernetes can be set to use maximum cpu they are allowed to use. This key sets the cpu limit for this deployment to use.| +| beatworker.memoryLimit | 2000Mi | | Every deployment in kubernetes can be set to use maximum memory they are allowed to use. This key sets the memory limit for this deployment to use.| +| beatworker.autoscaling.minReplicas | 1 | | Minimum number of replicas for the Horizontal Pod Autoscaler | +| beatworker.autoscaling.maxReplicas | 5 | | Maximum number of replicas for the Horizontal Pod Autoscaler | +| beatworker.autoscaling.targetCPUUtilizationPercentage | 90 | | Target CPU utilization percentage for the Horizontal Pod Autoscaler | +| beatworker.autoscaling.targetMemoryUtilizationPercentage | 90 | | Target memory utilization percentage for the Horizontal Pod Autoscaler | | beatworker.image| artifacts.plane.so/makeplane/plane-backend | | This deployment needs a preconfigured docker image to function. Docker image name is provided by the owner and must not be changed for this deployment | ### Ingress and SSL Setup diff --git a/charts/plane-ce/questions.yml b/charts/plane-ce/questions.yml index 330d44a0..d9dfa76f 100644 --- a/charts/plane-ce/questions.yml +++ b/charts/plane-ce/questions.yml @@ -16,7 +16,7 @@ questions: - variable: dockerRegistry.password label: "Password/Token" type: password - + - variable: planeVersion label: Plane Version (Docker Image Tag) type: string @@ -43,26 +43,42 @@ questions: label: "Default Replica Count" type: int default: 1 - - variable: web.memoryLimit - label: "Memory Limit" + - variable: web.cpuRequest + label: "CPU Request" type: string - default: 1000Mi + default: 100m + - variable: web.memoryRequest + label: "Memory Request" + type: string + default: 200Mi - variable: web.cpuLimit label: "CPU Limit" type: string default: 500m + - variable: web.memoryLimit + label: "Memory Limit" + type: string + default: 1000Mi - variable: web.assign_cluster_ip label: "Assign Cluster IP" type: boolean default: false - - variable: web.memoryRequest - label: "Memory Request" - type: string - default: 50Mi - - variable: web.cpuRequest - label: "CPU Request" - type: string - default: 50m + - variable: web.autoscaling.minReplicas + label: "Minimum Replica Count" + type: int + default: 1 + - variable: web.autoscaling.maxReplicas + label: "Maximum Replica Count" + type: int + default: 5 + - variable: web.autoscaling.targetCPUUtilizationPercentage + label: "Target CPU Utilization Percentage" + type: int + default: 90 + - variable: web.autoscaling.targetMemoryUtilizationPercentage + label: "Target Memory Utilization Percentage" + type: int + default: 90 - variable: space.image label: Space Docker Image @@ -83,22 +99,38 @@ questions: label: "Default Replica Count" type: int default: 1 - - variable: space.memoryLimit - label: "Memory Limit" + - variable: space.cpuRequest + label: "CPU Request" type: string - default: 1000Mi + default: 100m + - variable: space.memoryRequest + label: "Memory Request" + type: string + default: 200Mi - variable: space.cpuLimit label: "CPU Limit" type: string default: 500m - - variable: space.memoryRequest - label: "Memory Request" - type: string - default: 50Mi - - variable: space.cpuRequest - label: "CPU Request" + - variable: space.memoryLimit + label: "Memory Limit" type: string - default: 50m + default: 1000Mi + - variable: space.autoscaling.minReplicas + label: "Minimum Replica Count" + type: int + default: 1 + - variable: space.autoscaling.maxReplicas + label: "Maximum Replica Count" + type: int + default: 5 + - variable: space.autoscaling.targetCPUUtilizationPercentage + label: "Target CPU Utilization Percentage" + type: int + default: 90 + - variable: space.autoscaling.targetMemoryUtilizationPercentage + label: "Target Memory Utilization Percentage" + type: int + default: 90 - variable: space.assign_cluster_ip label: "Assign Cluster IP" type: boolean @@ -123,26 +155,43 @@ questions: label: "Default Replica Count" type: int default: 1 - - variable: admin.memoryLimit - label: "Memory Limit" + - variable: admin.cpuRequest + label: "CPU Request" type: string - default: 1000Mi + default: 100m + - variable: admin.memoryRequest + label: "Memory Request" + type: string + default: 200Mi - variable: admin.cpuLimit label: "CPU Limit" type: string default: 500m + - variable: admin.memoryLimit + label: "Memory Limit" + type: string + default: 1000Mi + - variable: admin.autoscaling.minReplicas + label: "Minimum Replica Count" + type: int + default: 1 + - variable: admin.autoscaling.maxReplicas + label: "Maximum Replica Count" + type: int + default: 5 + - variable: admin.autoscaling.targetCPUUtilizationPercentage + label: "Target CPU Utilization Percentage" + type: int + default: 90 + - variable: admin.autoscaling.targetMemoryUtilizationPercentage + label: "Target Memory Utilization Percentage" + type: int + default: 90 - variable: admin.assign_cluster_ip label: "Assign Cluster IP" type: boolean default: true - - variable: admin.memoryRequest - label: "Memory Request" - type: string - default: 50Mi - - variable: admin.cpuRequest - label: "CPU Request" - type: string - default: 50m + - variable: live.image label: Live Docker Image type: string @@ -163,26 +212,42 @@ questions: label: "Default Replica Count" type: int default: 1 - - variable: live.memoryLimit - label: "Memory Limit" + - variable: live.cpuRequest + label: "CPU Request" + type: string + default: 500m + - variable: live.memoryRequest + label: "Memory Request" type: string default: 1000Mi - variable: live.cpuLimit label: "CPU Limit" type: string - default: 500m + default: 1000m + - variable: live.memoryLimit + label: "Memory Limit" + type: string + default: 2000Mi + - variable: live.autoscaling.minReplicas + label: "Minimum Replica Count" + type: int + default: 1 + - variable: live.autoscaling.maxReplicas + label: "Maximum Replica Count" + type: int + default: 5 + - variable: live.autoscaling.targetCPUUtilizationPercentage + label: "Target CPU Utilization Percentage" + type: int + default: 90 + - variable: live.autoscaling.targetMemoryUtilizationPercentage + label: "Target Memory Utilization Percentage" + type: int + default: 90 - variable: live.assign_cluster_ip label: "Assign Cluster IP" type: boolean default: false - - variable: live.memoryRequest - label: "Memory Request" - type: string - default: 50Mi - - variable: live.cpuRequest - label: "CPU Request" - type: string - default: 50m - variable: env.live_sentry_dsn label: "Live Sentry DSN" type: string @@ -216,26 +281,42 @@ questions: label: "Default Replica Count" type: int default: 1 - - variable: api.memoryLimit - label: "Memory Limit" + - variable: api.cpuRequest + label: "CPU Request" + type: string + default: 1000m + - variable: api.memoryRequest + label: "Memory Request" type: string default: 1000Mi - variable: api.cpuLimit label: "CPU Limit" type: string - default: 500m + default: 2000m + - variable: api.memoryLimit + label: "Memory Limit" + type: string + default: 2000Mi + - variable: api.autoscaling.minReplicas + label: "Minimum Replica Count" + type: int + default: 1 + - variable: api.autoscaling.maxReplicas + label: "Maximum Replica Count" + type: int + default: 5 + - variable: api.autoscaling.targetCPUUtilizationPercentage + label: "Target CPU Utilization Percentage" + type: int + default: 90 + - variable: api.autoscaling.targetMemoryUtilizationPercentage + label: "Target Memory Utilization Percentage" + type: int + default: 90 - variable: api.assign_cluster_ip label: "Assign Cluster IP" type: boolean default: false - - variable: api.memoryRequest - label: "Memory Request" - type: string - default: 50Mi - - variable: api.cpuRequest - label: "CPU Request" - type: string - default: 50m - variable: env.cors_allowed_origins label: "CORS Allowed Origins" type: string @@ -264,44 +345,78 @@ questions: default: 1 group: "Worker Setup" subquestions: - - variable: worker.memoryLimit - label: "Memory Limit" - type: string - default: 1000Mi - - variable: worker.cpuLimit - label: "CPU Limit" + - variable: worker.cpuRequest + label: "CPU Request" type: string default: 500m - variable: worker.memoryRequest label: "Memory Request" type: string - default: 50Mi - - variable: worker.cpuRequest - label: "CPU Request" + default: 2000Mi + - variable: worker.cpuLimit + label: "CPU Limit" + type: string + default: 1000m + - variable: worker.memoryLimit + label: "Memory Limit" type: string - default: 50m + default: 4000Mi + - variable: worker.autoscaling.minReplicas + label: "Minimum Replica Count" + type: int + default: 1 + - variable: worker.autoscaling.maxReplicas + label: "Maximum Replica Count" + type: int + default: 5 + - variable: worker.autoscaling.targetCPUUtilizationPercentage + label: "Target CPU Utilization Percentage" + type: int + default: 90 + - variable: worker.autoscaling.targetMemoryUtilizationPercentage + label: "Target Memory Utilization Percentage" + type: int + default: 90 + - variable: beatworker.replicas label: "Default Replica Count" type: int default: 1 group: "Beat Worker Setup" subquestions: - - variable: beatworker.memoryLimit - label: "Memory Limit" - type: string - default: 1000Mi - - variable: beatworker.cpuLimit - label: "CPU Limit" + - variable: beatworker.cpuRequest + label: "CPU Request" type: string default: 500m - variable: beatworker.memoryRequest label: "Memory Request" type: string - default: 50Mi - - variable: beatworker.cpuRequest - label: "CPU Request" + default: 1000Mi + - variable: beatworker.cpuLimit + label: "CPU Limit" type: string - default: 50m + default: 1000m + - variable: beatworker.memoryLimit + label: "Memory Limit" + type: string + default: 2000Mi + - variable: beatworker.autoscaling.minReplicas + label: "Minimum Replica Count" + type: int + default: 1 + - variable: beatworker.autoscaling.maxReplicas + label: "Maximum Replica Count" + type: int + default: 5 + - variable: beatworker.autoscaling.targetCPUUtilizationPercentage + label: "Target CPU Utilization Percentage" + type: int + default: 90 + - variable: beatworker.autoscaling.targetMemoryUtilizationPercentage + label: "Target Memory Utilization Percentage" + type: int + default: 90 + - variable: redis.local_setup label: "Install Redis" type: boolean diff --git a/charts/plane-ce/templates/_helpers.tpl b/charts/plane-ce/templates/_helpers.tpl index b33a3714..d510b98a 100644 --- a/charts/plane-ce/templates/_helpers.tpl +++ b/charts/plane-ce/templates/_helpers.tpl @@ -1,3 +1,12 @@ {{- define "imagePullSecret" }} {{- printf "{\"auths\":{\"%s\":{\"username\":\"%s\",\"password\":\"%s\"}}}" .Values.dockerRegistry.host .Values.dockerRegistry.loginid .Values.dockerRegistry.password | b64enc }} +{{- end }} + +{{- define "enable.hpa" -}} +{{- $metrics := lookup "rbac.authorization.k8s.io/v1" "ClusterRole" "" "system:metrics-server" }} +{{- if not $metrics }} +false +{{- else }} +true +{{- end }} {{- end }} \ No newline at end of file diff --git a/charts/plane-ce/templates/workloads/admin.deployment.yaml b/charts/plane-ce/templates/workloads/admin.deployment.yaml index 01722d15..004f1da6 100644 --- a/charts/plane-ce/templates/workloads/admin.deployment.yaml +++ b/charts/plane-ce/templates/workloads/admin.deployment.yaml @@ -1,4 +1,3 @@ - apiVersion: v1 kind: Service metadata: @@ -45,12 +44,21 @@ spec: stdin: true tty: true resources: + {{- if eq (include "enable.hpa" . | trim) "true" }} requests: - memory: {{ .Values.admin.memoryRequest | default "50Mi" | quote }} - cpu: {{ .Values.admin.cpuRequest | default "50m" | quote }} + cpu: {{ .Values.admin.cpuRequest | default "100m" | quote }} + memory: {{ .Values.admin.memoryRequest | default "200Mi" | quote }} limits: + cpu: {{ .Values.admin.cpuLimit | default "500m" | quote}} memory: {{ .Values.admin.memoryLimit | default "1000Mi" | quote }} + {{- else }} + requests: + cpu: {{ .Values.admin.cpuRequest | default "50m" | quote }} + memory: {{ .Values.admin.memoryRequest | default "50Mi" | quote }} + limits: cpu: {{ .Values.admin.cpuLimit | default "500m" | quote}} + memory: {{ .Values.admin.memoryLimit | default "1000Mi" | quote }} + {{- end }} command: - node args: @@ -59,4 +67,41 @@ spec: serviceAccount: {{ .Release.Name }}-srv-account serviceAccountName: {{ .Release.Name }}-srv-account ---- \ No newline at end of file +--- + +{{- if eq (include "enable.hpa" . | trim) "true" }} +apiVersion: autoscaling/v2 +kind: HorizontalPodAutoscaler +metadata: + name: {{ .Release.Name }}-admin-hpa + namespace: {{ .Release.Namespace }} + labels: + app.name: {{ .Release.Namespace }}-{{ .Release.Name }}-admin-hpa +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ .Release.Name }}-admin-wl + minReplicas: {{ .Values.admin.autoscaling.minReplicas | default 1 }} + maxReplicas: {{ .Values.admin.autoscaling.maxReplicas | default 5 }} + {{- if or .Values.admin.autoscaling.targetCPUUtilizationPercentage .Values.admin.autoscaling.targetMemoryUtilizationPercentage }} + metrics: + {{- if .Values.admin.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + target: + type: Utilization + averageUtilization: {{ .Values.admin.autoscaling.targetCPUUtilizationPercentage | default 90 }} + {{- end }} + {{- if .Values.admin.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + target: + type: Utilization + averageUtilization: {{ .Values.admin.autoscaling.targetMemoryUtilizationPercentage | default 90 }} + {{- end }} + {{- end }} +{{- end }} +--- diff --git a/charts/plane-ce/templates/workloads/api.deployment.yaml b/charts/plane-ce/templates/workloads/api.deployment.yaml index 0eb76c66..bedb0056 100644 --- a/charts/plane-ce/templates/workloads/api.deployment.yaml +++ b/charts/plane-ce/templates/workloads/api.deployment.yaml @@ -45,12 +45,21 @@ spec: stdin: true tty: true resources: + {{- if eq (include "enable.hpa" . | trim) "true" }} + requests: + cpu: {{ .Values.api.cpuRequest | default "1000m" | quote }} + memory: {{ .Values.api.memoryRequest | default "1000Mi" | quote }} + limits: + cpu: {{ .Values.api.cpuLimit | default "2000m" | quote}} + memory: {{ .Values.api.memoryLimit | default "2000Mi" | quote }} + {{- else }} requests: - memory: {{ .Values.api.memoryRequest | default "50Mi" | quote }} cpu: {{ .Values.api.cpuRequest | default "50m" | quote }} + memory: {{ .Values.api.memoryRequest | default "50Mi" | quote }} limits: - memory: {{ .Values.api.memoryLimit | default "1000Mi" | quote }} cpu: {{ .Values.api.cpuLimit | default "500m" | quote}} + memory: {{ .Values.api.memoryLimit | default "1000Mi" | quote }} + {{- end }} command: - ./bin/docker-entrypoint-api.sh envFrom: @@ -76,4 +85,41 @@ spec: serviceAccount: {{ .Release.Name }}-srv-account serviceAccountName: {{ .Release.Name }}-srv-account +--- +{{- if eq (include "enable.hpa" . | trim) "true" }} + +apiVersion: autoscaling/v2 +kind: HorizontalPodAutoscaler +metadata: + name: {{ .Release.Name }}-api-hpa + namespace: {{ .Release.Namespace }} + labels: + app.name: {{ .Release.Namespace }}-{{ .Release.Name }}-api-hpa +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ .Release.Name }}-api-wl + minReplicas: {{ .Values.api.autoscaling.minReplicas | default 1 }} + maxReplicas: {{ .Values.api.autoscaling.maxReplicas | default 5 }} + {{- if or .Values.api.autoscaling.targetCPUUtilizationPercentage .Values.api.autoscaling.targetMemoryUtilizationPercentage }} + metrics: + {{- if .Values.api.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + target: + type: Utilization + averageUtilization: {{ .Values.api.autoscaling.targetCPUUtilizationPercentage | default 90 }} + {{- end }} + {{- if .Values.api.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + target: + type: Utilization + averageUtilization: {{ .Values.api.autoscaling.targetMemoryUtilizationPercentage | default 90 }} + {{- end }} + {{- end }} +{{- end }} --- \ No newline at end of file diff --git a/charts/plane-ce/templates/workloads/beat-worker.deployment.yaml b/charts/plane-ce/templates/workloads/beat-worker.deployment.yaml index 396d8b5d..9be17a21 100644 --- a/charts/plane-ce/templates/workloads/beat-worker.deployment.yaml +++ b/charts/plane-ce/templates/workloads/beat-worker.deployment.yaml @@ -23,12 +23,21 @@ spec: stdin: true tty: true resources: + {{- if eq (include "enable.hpa" . | trim) "true" }} + requests: + cpu: {{ .Values.beatworker.cpuRequest | default "500m" | quote }} + memory: {{ .Values.beatworker.memoryRequest | default "1000Mi" | quote }} + limits: + cpu: {{ .Values.beatworker.cpuLimit | default "1000m" | quote}} + memory: {{ .Values.beatworker.memoryLimit | default "2000Mi" | quote }} + {{- else }} requests: - memory: {{ .Values.beatworker.memoryRequest | default "50Mi" | quote }} cpu: {{ .Values.beatworker.cpuRequest | default "50m" | quote }} + memory: {{ .Values.beatworker.memoryRequest | default "50Mi" | quote }} limits: - memory: {{ .Values.beatworker.memoryLimit | default "1000Mi" | quote }} cpu: {{ .Values.beatworker.cpuLimit | default "500m" | quote}} + memory: {{ .Values.beatworker.memoryLimit | default "1000Mi" | quote }} + {{- end }} command: - ./bin/docker-entrypoint-beat.sh envFrom: @@ -46,4 +55,40 @@ spec: serviceAccount: {{ .Release.Name }}-srv-account serviceAccountName: {{ .Release.Name }}-srv-account ---- \ No newline at end of file +--- +{{- if eq (include "enable.hpa" . | trim) "true" }} +apiVersion: autoscaling/v2 +kind: HorizontalPodAutoscaler +metadata: + name: {{ .Release.Name }}-beat-worker-hpa + namespace: {{ .Release.Namespace }} + labels: + app.name: {{ .Release.Namespace }}-{{ .Release.Name }}-beat-worker-hpa +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ .Release.Name }}-beat-worker-wl + minReplicas: {{ .Values.beatworker.autoscaling.minReplicas | default 1 }} + maxReplicas: {{ .Values.beatworker.autoscaling.maxReplicas | default 5 }} + {{- if or .Values.beatworker.autoscaling.targetCPUUtilizationPercentage .Values.beatworker.autoscaling.targetMemoryUtilizationPercentage }} + metrics: + {{- if .Values.beatworker.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + target: + type: Utilization + averageUtilization: {{ .Values.beatworker.autoscaling.targetCPUUtilizationPercentage | default 90 }} + {{- end }} + {{- if .Values.beatworker.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + target: + type: Utilization + averageUtilization: {{ .Values.beatworker.autoscaling.targetMemoryUtilizationPercentage | default 90 }} + {{- end }} + {{- end }} +{{- end }} +--- diff --git a/charts/plane-ce/templates/workloads/live.deployment.yaml b/charts/plane-ce/templates/workloads/live.deployment.yaml index a86f263b..24d645d6 100644 --- a/charts/plane-ce/templates/workloads/live.deployment.yaml +++ b/charts/plane-ce/templates/workloads/live.deployment.yaml @@ -45,12 +45,21 @@ spec: stdin: true tty: true resources: + {{- if eq (include "enable.hpa" . | trim) "true" }} + requests: + cpu: {{ .Values.live.cpuRequest | default "500m" | quote }} + memory: {{ .Values.live.memoryRequest | default "1000Mi" | quote }} + limits: + cpu: {{ .Values.live.cpuLimit | default "1000m" | quote}} + memory: {{ .Values.live.memoryLimit | default "2000Mi" | quote }} + {{- else }} requests: - memory: {{ .Values.live.memoryRequest | default "50Mi" | quote }} cpu: {{ .Values.live.cpuRequest | default "50m" | quote }} + memory: {{ .Values.live.memoryRequest | default "50Mi" | quote }} limits: - memory: {{ .Values.live.memoryLimit | default "1000Mi" | quote }} cpu: {{ .Values.live.cpuLimit | default "500m" | quote}} + memory: {{ .Values.live.memoryLimit | default "1000Mi" | quote }} + {{- end }} command: - node args: @@ -66,3 +75,40 @@ spec: serviceAccountName: {{ .Release.Name }}-srv-account --- + +{{- if eq (include "enable.hpa" . | trim) "true" }} +apiVersion: autoscaling/v2 +kind: HorizontalPodAutoscaler +metadata: + name: {{ .Release.Name }}-live-hpa + namespace: {{ .Release.Namespace }} + labels: + app.name: {{ .Release.Namespace }}-{{ .Release.Name }}-live-hpa +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ .Release.Name }}-live-wl + minReplicas: {{ .Values.live.autoscaling.minReplicas | default 1 }} + maxReplicas: {{ .Values.live.autoscaling.maxReplicas | default 5 }} + {{- if or .Values.live.autoscaling.targetCPUUtilizationPercentage .Values.live.autoscaling.targetMemoryUtilizationPercentage }} + metrics: + {{- if .Values.live.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + target: + type: Utilization + averageUtilization: {{ .Values.live.autoscaling.targetCPUUtilizationPercentage | default 90 }} + {{- end }} + {{- if .Values.live.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + target: + type: Utilization + averageUtilization: {{ .Values.live.autoscaling.targetMemoryUtilizationPercentage | default 90 }} + {{- end }} + {{- end }} +{{- end }} +--- diff --git a/charts/plane-ce/templates/workloads/space.deployment.yaml b/charts/plane-ce/templates/workloads/space.deployment.yaml index 4f5bc217..403d3d91 100644 --- a/charts/plane-ce/templates/workloads/space.deployment.yaml +++ b/charts/plane-ce/templates/workloads/space.deployment.yaml @@ -45,12 +45,21 @@ spec: stdin: true tty: true resources: + {{- if eq (include "enable.hpa" . | trim) "true" }} requests: - memory: {{ .Values.space.memoryRequest | default "50Mi" | quote }} - cpu: {{ .Values.space.cpuRequest | default "50m" | quote }} + cpu: {{ .Values.space.cpuRequest | default "100m" | quote }} + memory: {{ .Values.space.memoryRequest | default "200Mi" | quote }} limits: + cpu: {{ .Values.space.cpuLimit | default "500m" | quote}} memory: {{ .Values.space.memoryLimit | default "1000Mi" | quote }} + {{- else }} + requests: + cpu: {{ .Values.space.cpuRequest | default "50m" | quote }} + memory: {{ .Values.space.memoryRequest | default "50Mi" | quote }} + limits: cpu: {{ .Values.space.cpuLimit | default "500m" | quote}} + memory: {{ .Values.space.memoryLimit | default "1000Mi" | quote }} + {{- end }} command: - node args: @@ -59,4 +68,40 @@ spec: serviceAccount: {{ .Release.Name }}-srv-account serviceAccountName: {{ .Release.Name }}-srv-account ---- \ No newline at end of file +--- +{{- if eq (include "enable.hpa" . | trim) "true" }} +apiVersion: autoscaling/v2 +kind: HorizontalPodAutoscaler +metadata: + name: {{ .Release.Name }}-space-hpa + namespace: {{ .Release.Namespace }} + labels: + app.name: {{ .Release.Namespace }}-{{ .Release.Name }}-space-hpa +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ .Release.Name }}-space-wl + minReplicas: {{ .Values.space.autoscaling.minReplicas | default 1 }} + maxReplicas: {{ .Values.space.autoscaling.maxReplicas | default 5 }} + {{- if or .Values.space.autoscaling.targetCPUUtilizationPercentage .Values.space.autoscaling.targetMemoryUtilizationPercentage }} + metrics: + {{- if .Values.space.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + target: + type: Utilization + averageUtilization: {{ .Values.space.autoscaling.targetCPUUtilizationPercentage | default 90 }} + {{- end }} + {{- if .Values.space.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + target: + type: Utilization + averageUtilization: {{ .Values.space.autoscaling.targetMemoryUtilizationPercentage | default 90 }} + {{- end }} + {{- end }} +{{- end }} +--- diff --git a/charts/plane-ce/templates/workloads/web.deployment.yaml b/charts/plane-ce/templates/workloads/web.deployment.yaml index 1b302ead..73356e5d 100644 --- a/charts/plane-ce/templates/workloads/web.deployment.yaml +++ b/charts/plane-ce/templates/workloads/web.deployment.yaml @@ -45,12 +45,21 @@ spec: stdin: true tty: true resources: + {{- if eq (include "enable.hpa" . | trim) "true" }} requests: - memory: {{ .Values.web.memoryRequest | default "50Mi" | quote }} - cpu: {{ .Values.web.cpuRequest | default "50m" | quote }} + cpu: {{ .Values.web.cpuRequest | default "100m" | quote }} + memory: {{ .Values.web.memoryRequest | default "200Mi" | quote }} limits: + cpu: {{ .Values.web.cpuLimit | default "500m" | quote}} memory: {{ .Values.web.memoryLimit | default "1000Mi" | quote }} + {{- else }} + requests: + cpu: {{ .Values.web.cpuRequest | default "50m" | quote }} + memory: {{ .Values.web.memoryRequest | default "50Mi" | quote }} + limits: cpu: {{ .Values.web.cpuLimit | default "500m" | quote}} + memory: {{ .Values.web.memoryLimit | default "1000Mi" | quote }} + {{- end }} command: - node args: @@ -59,4 +68,40 @@ spec: serviceAccount: {{ .Release.Name }}-srv-account serviceAccountName: {{ .Release.Name }}-srv-account +--- +{{- if eq (include "enable.hpa" . | trim) "true" }} +apiVersion: autoscaling/v2 +kind: HorizontalPodAutoscaler +metadata: + name: {{ .Release.Name }}-web-hpa + namespace: {{ .Release.Namespace }} + labels: + app.name: {{ .Release.Namespace }}-{{ .Release.Name }}-web-hpa +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ .Release.Name }}-web-wl + minReplicas: {{ .Values.web.autoscaling.minReplicas | default 1 }} + maxReplicas: {{ .Values.web.autoscaling.maxReplicas | default 5 }} + {{- if or .Values.web.autoscaling.targetCPUUtilizationPercentage .Values.web.autoscaling.targetMemoryUtilizationPercentage }} + metrics: + {{- if .Values.web.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + target: + type: Utilization + averageUtilization: {{ .Values.web.autoscaling.targetCPUUtilizationPercentage | default 90 }} + {{- end }} + {{- if .Values.web.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + target: + type: Utilization + averageUtilization: {{ .Values.web.autoscaling.targetMemoryUtilizationPercentage | default 90 }} + {{- end }} + {{- end }} +{{- end }} --- \ No newline at end of file diff --git a/charts/plane-ce/templates/workloads/worker.deployment.yaml b/charts/plane-ce/templates/workloads/worker.deployment.yaml index 5d462012..499f9921 100644 --- a/charts/plane-ce/templates/workloads/worker.deployment.yaml +++ b/charts/plane-ce/templates/workloads/worker.deployment.yaml @@ -23,12 +23,21 @@ spec: stdin: true tty: true resources: + {{- if eq (include "enable.hpa" . | trim) "true" }} + requests: + cpu: {{ .Values.worker.cpuRequest | default "500m" | quote }} + memory: {{ .Values.worker.memoryRequest | default "2000Mi" | quote }} + limits: + cpu: {{ .Values.worker.cpuLimit | default "1000m" | quote}} + memory: {{ .Values.worker.memoryLimit | default "4000Mi" | quote }} + {{- else }} requests: - memory: {{ .Values.worker.memoryRequest | default "50Mi" | quote }} cpu: {{ .Values.worker.cpuRequest | default "50m" | quote }} + memory: {{ .Values.worker.memoryRequest | default "50Mi" | quote }} limits: - memory: {{ .Values.worker.memoryLimit | default "1000Mi" | quote }} cpu: {{ .Values.worker.cpuLimit | default "500m" | quote}} + memory: {{ .Values.worker.memoryLimit | default "1000Mi" | quote }} + {{- end }} command: - ./bin/docker-entrypoint-worker.sh envFrom: @@ -45,4 +54,40 @@ spec: serviceAccount: {{ .Release.Name }}-srv-account serviceAccountName: {{ .Release.Name }}-srv-account +--- +{{- if eq (include "enable.hpa" . | trim) "true" }} +apiVersion: autoscaling/v2 +kind: HorizontalPodAutoscaler +metadata: + name: {{ .Release.Name }}-worker-hpa + namespace: {{ .Release.Namespace }} + labels: + app.name: {{ .Release.Namespace }}-{{ .Release.Name }}-worker-hpa +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ .Release.Name }}-worker-wl + minReplicas: {{ .Values.worker.autoscaling.minReplicas | default 1 }} + maxReplicas: {{ .Values.worker.autoscaling.maxReplicas | default 5 }} + {{- if or .Values.worker.autoscaling.targetCPUUtilizationPercentage .Values.worker.autoscaling.targetMemoryUtilizationPercentage }} + metrics: + {{- if .Values.worker.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + target: + type: Utilization + averageUtilization: {{ .Values.worker.autoscaling.targetCPUUtilizationPercentage | default 90 }} + {{- end }} + {{- if .Values.worker.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + target: + type: Utilization + averageUtilization: {{ .Values.worker.autoscaling.targetMemoryUtilizationPercentage | default 90 }} + {{- end }} + {{- end }} +{{- end }} --- \ No newline at end of file diff --git a/charts/plane-ce/values.yaml b/charts/plane-ce/values.yaml index b35bc8a1..924e4ec1 100644 --- a/charts/plane-ce/values.yaml +++ b/charts/plane-ce/values.yaml @@ -12,7 +12,7 @@ ingress: minioHost: "" rabbitmqHost: "" ingressClass: "nginx" - ingress_annotations: {"nginx.ingress.kubernetes.io/proxy-body-size": "5m"} + ingress_annotations: { "nginx.ingress.kubernetes.io/proxy-body-size": "5m" } # SSL Configuration - Valid only if ingress.enabled is true ssl: @@ -67,79 +67,114 @@ minio: volumeSize: 1Gi assign_cluster_ip: false env: - minio_endpoint_ssl: false + minio_endpoint_ssl: false web: replicas: 1 - memoryLimit: 1000Mi + cpuRequest: 100m + memoryRequest: 200Mi cpuLimit: 500m - cpuRequest: 50m - memoryRequest: 50Mi + memoryLimit: 1000Mi image: artifacts.plane.so/makeplane/plane-frontend pullPolicy: Always assign_cluster_ip: false + autoscaling: + minReplicas: 1 + maxReplicas: 5 + targetCPUUtilizationPercentage: 90 + targetMemoryUtilizationPercentage: 90 space: replicas: 1 - memoryLimit: 1000Mi + cpuRequest: 100m + memoryRequest: 200Mi cpuLimit: 500m - cpuRequest: 50m - memoryRequest: 50Mi + memoryLimit: 1000Mi image: artifacts.plane.so/makeplane/plane-space pullPolicy: Always assign_cluster_ip: false + autoscaling: + minReplicas: 1 + maxReplicas: 5 + targetCPUUtilizationPercentage: 90 + targetMemoryUtilizationPercentage: 90 admin: replicas: 1 - memoryLimit: 1000Mi + cpuRequest: 100m + memoryRequest: 200Mi cpuLimit: 500m - cpuRequest: 50m - memoryRequest: 50Mi + memoryLimit: 1000Mi image: artifacts.plane.so/makeplane/plane-admin pullPolicy: Always assign_cluster_ip: false + autoscaling: + minReplicas: 1 + maxReplicas: 5 + targetCPUUtilizationPercentage: 90 + targetMemoryUtilizationPercentage: 90 live: replicas: 1 - memoryLimit: 1000Mi - cpuLimit: 500m - cpuRequest: 50m - memoryRequest: 50Mi + cpuRequest: 500m + memoryRequest: 1000Mi + cpuLimit: 1000m + memoryLimit: 2000Mi image: artifacts.plane.so/makeplane/plane-live pullPolicy: Always assign_cluster_ip: false + autoscaling: + minReplicas: 1 + maxReplicas: 5 + targetCPUUtilizationPercentage: 90 + targetMemoryUtilizationPercentage: 90 api: replicas: 1 - memoryLimit: 1000Mi - cpuLimit: 500m - cpuRequest: 50m - memoryRequest: 50Mi + cpuRequest: 1000m + memoryRequest: 1000Mi + cpuLimit: 2000m + memoryLimit: 2000Mi image: artifacts.plane.so/makeplane/plane-backend pullPolicy: Always assign_cluster_ip: false + autoscaling: + minReplicas: 1 + maxReplicas: 5 + targetCPUUtilizationPercentage: 90 + targetMemoryUtilizationPercentage: 90 worker: replicas: 1 - memoryLimit: 1000Mi - cpuLimit: 500m - cpuRequest: 50m - memoryRequest: 50Mi + cpuRequest: 500m + memoryRequest: 2000Mi + cpuLimit: 1000m + memoryLimit: 4000Mi image: artifacts.plane.so/makeplane/plane-backend pullPolicy: Always + autoscaling: + minReplicas: 1 + maxReplicas: 5 + targetCPUUtilizationPercentage: 90 + targetMemoryUtilizationPercentage: 90 beatworker: replicas: 1 - memoryLimit: 1000Mi - cpuLimit: 500m - cpuRequest: 50m - memoryRequest: 50Mi + cpuRequest: 500m + memoryRequest: 1000Mi + cpuLimit: 1000m + memoryLimit: 2000Mi image: artifacts.plane.so/makeplane/plane-backend pullPolicy: Always + autoscaling: + minReplicas: 1 + maxReplicas: 5 + targetCPUUtilizationPercentage: 90 + targetMemoryUtilizationPercentage: 90 external_secrets: # Name of the existing Kubernetes Secret resource; see README for more details - rabbitmq_existingSecret: '' + rabbitmq_existingSecret: '' pgdb_existingSecret: '' doc_store_existingSecret: '' app_env_existingSecret: '' @@ -150,7 +185,7 @@ env: # NEXT_PUBLIC_DEPLOY_URL: "" # REDIS remote_redis_url: "" #INCASE OF REMOTE REDIS ONLY - + # POSTGRES DB VALUES pgdb_username: plane pgdb_password: plane