Make fetcher resource requests and limits configurable (#708)
This change allows fetcher container resource requests and limits to be configurable.
This commit is contained in:
@@ -240,6 +240,14 @@ spec:
|
||||
value: "{{ .Values.pullPolicy }}"
|
||||
- name: ENABLE_ISTIO
|
||||
value: "{{ .Values.enableIstio }}"
|
||||
- name: FETCHER_MINCPU
|
||||
value: {{ .Values.fetcherMinCpu | default "10m" | quote }}
|
||||
- name: FETCHER_MINMEM
|
||||
value: {{ .Values.fetcherMinMem | default "16Mi" | quote }}
|
||||
- name: FETCHER_MAXCPU
|
||||
value: {{ .Values.fetcherMaxCpu | default "40m" | quote }}
|
||||
- name: FETCHER_MAXMEM
|
||||
value: {{ .Values.fetcherMaxMem | default "128Mi" | quote }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: "/healthz"
|
||||
|
||||
@@ -226,6 +226,14 @@ spec:
|
||||
value: "{{ .Values.pullPolicy }}"
|
||||
- name: ENABLE_ISTIO
|
||||
value: "{{ .Values.enableIstio }}"
|
||||
- name: FETCHER_MINCPU
|
||||
value: {{ .Values.fetcherMinCpu | default "10m" | quote }}
|
||||
- name: FETCHER_MINMEM
|
||||
value: {{ .Values.fetcherMinMem | default "16Mi" | quote }}
|
||||
- name: FETCHER_MAXCPU
|
||||
value: {{ .Values.fetcherMaxCpu | default "40m" | quote }}
|
||||
- name: FETCHER_MAXMEM
|
||||
value: {{ .Values.fetcherMaxMem | default "128Mi" | quote }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: "/healthz"
|
||||
|
||||
+28
-21
@@ -17,34 +17,41 @@ limitations under the License.
|
||||
package util
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
"k8s.io/api/core/v1"
|
||||
"k8s.io/apimachinery/pkg/api/resource"
|
||||
)
|
||||
|
||||
var resources map[string]resource.Quantity
|
||||
|
||||
func init() {
|
||||
resources = make(map[string]resource.Quantity)
|
||||
mincpu, _ := resource.ParseQuantity("10m")
|
||||
resources["mincpu"] = mincpu
|
||||
minmem, _ := resource.ParseQuantity("16Mi")
|
||||
resources["minmem"] = minmem
|
||||
maxcpu, _ := resource.ParseQuantity("40m")
|
||||
resources["maxcpu"] = maxcpu
|
||||
maxmem, _ := resource.ParseQuantity("128Mi")
|
||||
resources["maxmem"] = maxmem
|
||||
}
|
||||
|
||||
func GetFetcherResources() (v1.ResourceRequirements, error) {
|
||||
fetcherResources := v1.ResourceRequirements{
|
||||
mincpu, err := resource.ParseQuantity(os.Getenv("FETCHER_MINCPU"))
|
||||
if err != nil {
|
||||
return v1.ResourceRequirements{}, err
|
||||
}
|
||||
|
||||
minmem, err := resource.ParseQuantity(os.Getenv("FETCHER_MINMEM"))
|
||||
if err != nil {
|
||||
return v1.ResourceRequirements{}, err
|
||||
}
|
||||
|
||||
maxcpu, err := resource.ParseQuantity(os.Getenv("FETCHER_MAXCPU"))
|
||||
if err != nil {
|
||||
return v1.ResourceRequirements{}, err
|
||||
}
|
||||
|
||||
maxmem, err := resource.ParseQuantity(os.Getenv("FETCHER_MAXMEM"))
|
||||
if err != nil {
|
||||
return v1.ResourceRequirements{}, err
|
||||
}
|
||||
|
||||
return v1.ResourceRequirements{
|
||||
Requests: map[v1.ResourceName]resource.Quantity{
|
||||
v1.ResourceCPU: resources["mincpu"],
|
||||
v1.ResourceMemory: resources["minmem"],
|
||||
v1.ResourceCPU: mincpu,
|
||||
v1.ResourceMemory: minmem,
|
||||
},
|
||||
Limits: map[v1.ResourceName]resource.Quantity{
|
||||
v1.ResourceCPU: resources["maxcpu"],
|
||||
v1.ResourceMemory: resources["maxmem"],
|
||||
v1.ResourceCPU: maxcpu,
|
||||
v1.ResourceMemory: maxmem,
|
||||
},
|
||||
}
|
||||
return fetcherResources, nil
|
||||
}, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user