Skip to content

calico-kube-controller list/watch pod frequent OOM #8155

@gongzixiangyuan

Description

@gongzixiangyuan

Expected Behavior

calico-kube-controller memory will not increase significantly with the number of pods

Current Behavior

  1. calico-kube-controller list/watch pod, memory limit 400M, when the cluster pod size exceeds 5000, frequent OOM
  2. GOGC is set to 50%

Possible Solution

  1. Is it possible not to cache the entire pod information?
  2. Can you cache only the fields actually used by NodeController such as pod name, IP, etc.
  3. Can you query the pod after the node is deleted?

Steps to Reproduce (for bugs)

  1. calico-kube-controller memory limit 400M
  2. The number of pods increases from 1000 to 5000(100 nodes)

Context

Your Environment

  • Calico version
  • Orchestrator version (e.g. kubernetes, mesos, rkt):
  • Operating System and version:
  • Link to your project (optional):

Calico version 3.25

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions