Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Memory Configurations for Argo Operator #1139

Closed
daixiang0 opened this issue Dec 25, 2018 · 5 comments · Fixed by #2972
Closed

Memory Configurations for Argo Operator #1139

daixiang0 opened this issue Dec 25, 2018 · 5 comments · Fixed by #2972
Assignees

Comments

@daixiang0
Copy link

daixiang0 commented Dec 25, 2018

In docs/workflow-controller-configmap.yaml:

    # executorResources specifies the resource requirements that will be used for the executor
    # sidecar/init container. This is useful in clusters which require resources to be specified as
    # part of admission control.
    executorResources:
      requests:
        cpu: 0.1 
        memory: 64Mi
      limits:
        cpu: 0.5 
        memory: 512Mi

Do those resource settings work for almost scenes, right?
Also, above setting is for executor, not operator.
Is there any practice about resource setting for operator?
Or for ~100 jobs, how much resources need i set for operator?

@daixiang0
Copy link
Author

I'm looking for documentation how to configure and/or calculate the memory (RAM) used by argo operator.

@daixiang0 daixiang0 changed the title questions about resource setting Memory Configurations for Argo Operator Dec 26, 2018
@daixiang0
Copy link
Author

could anyone help me?

@nikhilk
Copy link

nikhilk commented Jan 4, 2019

+1 ... would be interesting to understand what to specify for both controller as well.

Is there any more insight into those limits of 0.1 CPU + 64Mi memory for executor? Is this fixed, in which case, can it be smaller? Or should this in some way be correlated to a particular step of a workflow?

@daixiang0
Copy link
Author

any update?

@jessesuen
Copy link
Member

The memory configuration required by the controller are actually dependent on how many running workflows are in your system, so there's no one size fits all. The controller uses a Kubernetes informer cache to operate on workflows and the more running workflows, then more memory is required.

As for executor resources, this also sometimes depends on the size of artifacts being downloaded. For example, it's been reported for very large artifacts (tens of GB), the memory usage is large. See:
#1322

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants