kubernetes: Kube-apiserver high memory usage on pending pods storm

What happened: The kube-apiserver consumed memory spiked to ~90G the moment we upscaled the cluster with +400 nodes while having thousands of pending pods. image This resulted in OOM kill of the kube-apiserver pods causing outage. Example: image

What you expected to happen: The kube-apiserver should not consume that much memory resulting in OOM. I understand that under the presented conditions there could be performance penalties on kube-apiserver or kube-scheduler delaying the pods’ startup, but it should not lead to OOM kill.

How to reproduce it (as minimally and precisely as possible):

  1. Have a deployment with pods requesting for 4CPU and 4G MEM
  2. Scale the deployment to a huge number of replicas: 2000
  3. Prevent the CA to autoscale the cluster (i.e. uninstall the cluster-autoscaler/scale it to 0 replicas)
  4. Wait for ~30min-1h (there is no pattern here, it could happen even faster)
  5. Manually scale the cluster out to 400 nodes
  6. Monitor the kube-apiserver MEM usage

Anything else we need to know?: This in conjunction with cilium and contour+envoy could lead to ingress failures.

Environment:

  • Kubernetes version (use kubectl version):
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2", GitCommit:"c97fe5036ef3df2967d086711e6c0c405941e14b", GitTreeState:"clean", BuildDate:"2019-10-15T23:41:55Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.14", GitCommit:"89182bdd065fbcaffefec691908a739d161efc03", GitTreeState:"clean", BuildDate:"2020-12-18T12:02:35Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}
  • Cloud provider or hardware configuration: AWS
  • OS (e.g: cat /etc/os-release):
# cat /etc/os-release
NAME="Flatcar Container Linux by Kinvolk"
ID=flatcar
ID_LIKE=coreos
VERSION=2605.10.0
VERSION_ID=2605.10.0
BUILD_ID=2020-12-15-1904
PRETTY_NAME="Flatcar Container Linux by Kinvolk 2605.10.0 (Oklo)"
ANSI_COLOR="38;5;75"
HOME_URL="https://flatcar-linux.org/"
BUG_REPORT_URL="https://issues.flatcar-linux.org"
FLATCAR_BOARD="amd64-usr"
  • Kernel (e.g. uname -a):
# uname -a
Linux ip-10-79-147-99 5.4.83-flatcar #1 SMP Tue Dec 15 18:31:34 -00 2020 x86_64 Intel(R) Xeon(R) Platinum 8275CL CPU @ 3.00GHz GenuineIntel GNU/Linux
  • Install tools:
  • Network plugin and version (if this is a network-related bug):
  • Others:

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 19
  • Comments: 25 (14 by maintainers)

Most upvoted comments

This is unfortunatly one of the known problems when you have a large number of objects in your cluster and will be addresses in teh following kep

https://github.com/kubernetes/enhancements/tree/master/keps/sig-api-machinery/3157-watch-list#motivation

/close

Hi! Here is some interesting data I managed to collect with pprof:

Before

Kubectl top && docker stats

doalexan-macOS:~ doalexan$ ks top pods | grep kube-apiser
kube-apiserver-ip-10-79-145-80.ec2.internal             86m          1058Mi          
kube-apiserver-ip-10-79-146-35.ec2.internal             191m         938Mi           
kube-apiserver-ip-10-79-147-109.ec2.internal            33m          704Mi       
# docker ps | grep kube-api 
df44e0090d2c        f17e261f4c8a                                                                                                               "kube-apiserver --ad…"   25 minutes ago      Up 25 minutes                           k8s_kube-apiserver_kube-apiserver-ip-10-79-145-80.ec2.internal_kube-system_6d847789ef6120d1c63413afeca010e8_2
# docker stats df44e0090d2c
CONTAINER ID        NAME                                                                                                            CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
df44e0090d2c        k8s_kube-apiserver_kube-apiserver-ip-10-79-145-80.ec2.internal_kube-system_6d847789ef6120d1c63413afeca010e8_2   6.09%               1.052GiB / 124.4GiB   0.85%               0B / 0B             786kB / 1.07MB      38

Top heap

$ go tool pprof -top http://127.0.0.1:8080/debug/pprof/heap
Fetching profile over HTTP from http://127.0.0.1:8080/debug/pprof/heap
Saved profile in /Users/doalexan/pprof/pprof.kube-apiserver.alloc_objects.alloc_space.inuse_objects.inuse_space.014.pb.gz
File: kube-apiserver
Type: inuse_space
Time: Feb 4, 2021 at 4:54pm (EET)
Showing nodes accounting for 372.99MB, 84.61% of 440.84MB total
Dropped 581 nodes (cum <= 2.20MB)
      flat  flat%   sum%        cum   cum%
   62.27MB 14.13% 14.13%    62.27MB 14.13%  k8s.io/kubernetes/vendor/go.uber.org/zap/zapcore.newCounters
   33.14MB  7.52% 21.64%    33.14MB  7.52%  bytes.makeSlice
   22.34MB  5.07% 26.71%    22.34MB  5.07%  k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport.newBufWriter
   14.04MB  3.19% 29.90%    14.04MB  3.19%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*FieldsV1).Unmarshal
   13.82MB  3.14% 33.03%    30.36MB  6.89%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*ObjectMeta).Unmarshal
   12.89MB  2.93% 35.96%    12.89MB  2.93%  bufio.NewReaderSize
   12.51MB  2.84% 38.79%    12.51MB  2.84%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*ResourceRequirements).Unmarshal
   12.51MB  2.84% 41.63%    15.01MB  3.40%  k8s.io/kubernetes/vendor/k8s.io/kube-openapi/pkg/schemaconv.(*convert).VisitKind
   11.06MB  2.51% 44.14%    11.06MB  2.51%  k8s.io/kubernetes/vendor/github.com/json-iterator/go.(*frozenConfig).Marshal
   10.50MB  2.38% 46.52%    10.50MB  2.38%  encoding/json.(*decodeState).literalStore
    9.69MB  2.20% 48.72%     9.69MB  2.20%  k8s.io/kubernetes/vendor/github.com/golang/protobuf/proto.Marshal
    9.50MB  2.16% 50.87%     9.50MB  2.16%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.DeepCopyJSONValue
    8.01MB  1.82% 52.69%     8.01MB  1.82%  reflect.unsafe_NewArray
       8MB  1.81% 54.51%        8MB  1.81%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*ContainerImage).Unmarshal
    7.50MB  1.70% 56.21%     7.50MB  1.70%  reflect.New
    7.50MB  1.70% 57.91%    37.02MB  8.40%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*PodSpec).Unmarshal
    6.50MB  1.48% 59.39%     6.50MB  1.48%  reflect.mapassign
       6MB  1.36% 60.75%        6MB  1.36%  k8s.io/kubernetes/vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.autoConvert_v1beta1_JSONSchemaProps_To_apiextensions_JSONSchemaProps
    5.29MB  1.20% 61.95%     7.96MB  1.81%  compress/flate.NewWriter
       5MB  1.13% 63.08%    26.01MB  5.90%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Container).Unmarshal
       5MB  1.13% 64.22%        8MB  1.81%  encoding/json.(*decodeState).objectInterface
    4.52MB  1.03% 65.24%     4.52MB  1.03%  regexp.onePassCopy
       4MB  0.91% 66.15%     4.50MB  1.02%  k8s.io/kubernetes/vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.(*JSONSchemaProps).Unmarshal
    3.54MB   0.8% 66.95%     3.54MB   0.8%  regexp/syntax.(*compiler).inst
    3.51MB   0.8% 67.75%     3.51MB   0.8%  bufio.NewWriterSize
    3.50MB  0.79% 68.55%     4.50MB  1.02%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Secret).Unmarshal
    3.50MB  0.79% 69.34%    11.51MB  2.61%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*NodeStatus).Unmarshal
    3.50MB  0.79% 70.13%     6.21MB  1.41%  k8s.io/kubernetes/vendor/github.com/json-iterator/go.(*Iterator).ReadString
    3.48MB  0.79% 70.92%     5.20MB  1.18%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*ConfigMap).Unmarshal
    3.09MB   0.7% 71.62%     3.09MB   0.7%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.newCacheWatcher
       3MB  0.68% 72.31%        6MB  1.36%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*EnvVar).Unmarshal
       3MB  0.68% 72.99%     3.50MB  0.79%  k8s.io/kubernetes/pkg/printers/internalversion.AddHandlers
    2.71MB  0.62% 73.60%     2.71MB  0.62%  k8s.io/kubernetes/vendor/github.com/json-iterator/go.(*Iterator).readStringSlowPath
    2.67MB  0.61% 74.21%     2.67MB  0.61%  compress/flate.(*compressor).initDeflate

Top allocs

$ go tool pprof -top http://127.0.0.1:8080/debug/pprof/allocs
Fetching profile over HTTP from http://127.0.0.1:8080/debug/pprof/allocs
Saved profile in /Users/doalexan/pprof/pprof.kube-apiserver.alloc_objects.alloc_space.inuse_objects.inuse_space.015.pb.gz
File: kube-apiserver
Type: alloc_space
Time: Feb 4, 2021 at 4:55pm (EET)
Showing nodes accounting for 14303.71MB, 74.30% of 19252.27MB total
Dropped 2888 nodes (cum <= 96.26MB)
      flat  flat%   sum%        cum   cum%
 1715.61MB  8.91%  8.91%  1715.61MB  8.91%  bytes.makeSlice
 1323.81MB  6.88% 15.79%  1323.81MB  6.88%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/mvcc/mvccpb.(*KeyValue).Unmarshal
 1323.07MB  6.87% 22.66%  1325.57MB  6.89%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*parser).recvMsg
 1284.11MB  6.67% 29.33%  1287.11MB  6.69%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Unknown).Unmarshal
  811.90MB  4.22% 33.55%  2121.29MB 11.02%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*PodSpec).Unmarshal
  603.56MB  3.14% 36.68%   603.56MB  3.14%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*FieldsV1).Unmarshal
  548.68MB  2.85% 39.53%  1157.38MB  6.01%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Container).Unmarshal
  491.31MB  2.55% 42.08%   491.31MB  2.55%  math/big.nat.make
  447.44MB  2.32% 44.41%   447.44MB  2.32%  math/big.basicSqr
  395.19MB  2.05% 46.46%   399.69MB  2.08%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*ResourceRequirements).Unmarshal
  367.80MB  1.91% 48.37%   367.80MB  1.91%  reflect.New
  326.58MB  1.70% 50.07%   419.69MB  2.18%  encoding/json.(*decodeState).objectInterface
  291.04MB  1.51% 51.58%   708.85MB  3.68%  k8s.io/kubernetes/vendor/github.com/json-iterator/go.(*sortKeysMapEncoder).Encode
  257.57MB  1.34% 52.92%   257.57MB  1.34%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.DeepCopyJSONValue
  250.16MB  1.30% 54.22%   904.73MB  4.70%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*ObjectMeta).Unmarshal
  245.85MB  1.28% 55.49%   245.85MB  1.28%  k8s.io/kubernetes/vendor/github.com/json-iterator/go.(*Stream).Write
  244.50MB  1.27% 56.76%   923.49MB  4.80%  encoding/json.Marshal
  197.44MB  1.03% 57.79%   243.75MB  1.27%  compress/flate.NewWriter
  196.52MB  1.02% 58.81%   196.52MB  1.02%  reflect.mapiterinit
  190.80MB  0.99% 59.80%   190.80MB  0.99%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_v1_PodSpec_To_core_PodSpec
  180.96MB  0.94% 60.74%   287.94MB  1.50%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.(*Serializer).doEncode
  179.51MB  0.93% 61.67%   179.51MB  0.93%  k8s.io/kubernetes/vendor/github.com/prometheus/client_golang/prometheus.(*histogram).Write
  165.12MB  0.86% 62.53%   165.12MB  0.86%  reflect.unsafe_NewArray
  150.07MB  0.78% 63.31%   150.07MB  0.78%  k8s.io/kubernetes/vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/validation.schemaHas
  147.04MB  0.76% 64.07%   276.06MB  1.43%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*PodStatus).Unmarshal
  140.40MB  0.73% 64.80%   143.95MB  0.75%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.(*RawSerializer).doEncode
  127.53MB  0.66% 65.47%   127.53MB  0.66%  reflect.copyVal
  121.20MB  0.63% 66.10%   121.20MB  0.63%  encoding/json.(*Decoder).refill
  115.33MB   0.6% 66.69%   115.33MB   0.6%  k8s.io/kubernetes/vendor/github.com/emicklei/go-restful.CurlyRouter.selectRoutes
  103.51MB  0.54% 67.23%   120.52MB  0.63%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*ContainerStatus).Unmarshal
  102.64MB  0.53% 67.76%   102.64MB  0.53%  net/http/httputil.(*ReverseProxy).copyBuffer
   92.01MB  0.48% 68.24%   420.43MB  2.18%  encoding/json.compact
   91.51MB  0.48% 68.72%   148.01MB  0.77%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*EnvVar).Unmarshal
   82.04MB  0.43% 69.14%   119.07MB  0.62%  k8s.io/kubernetes/vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.autoConvert_v1_JSONSchemaProps_To_apiextensions_JSONSchemaProps
   69.13MB  0.36% 69.50%  1355.02MB  7.04%  k8s.io/kubernetes/vendor/github.com/json-iterator/go.(*frozenConfig).Marshal
   68.87MB  0.36% 69.86%   182.43MB  0.95%  k8s.io/kubernetes/vendor/k8s.io/apiserver/plugin/pkg/audit/log.(*backend).logEvent
   68.50MB  0.36% 70.22%   145.04MB  0.75%  k8s.io/kubernetes/vendor/github.com/json-iterator/go.(*Iterator).ReadString
   68.10MB  0.35% 70.57%   137.14MB  0.71%  k8s.io/kubernetes/vendor/github.com/json-iterator/go.(*Iterator).Read.func2
   64.54MB  0.34% 70.91%   949.59MB  4.93%  encoding/json.mapEncoder.encode
   59.19MB  0.31% 71.21%    98.70MB  0.51%  reflect.deepValueEqual
   51.51MB  0.27% 71.48%   250.69MB  1.30%  encoding/json.Unmarshal
      49MB  0.25% 71.74%   155.51MB  0.81%  k8s.io/kubernetes/vendor/github.com/modern-go/reflect2.(*UnsafeMapType).UnsafeIterate
   40.51MB  0.21% 71.95%   320.71MB  1.67%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.structToUnstructured
   37.52MB  0.19% 72.14%   279.19MB  1.45%  k8s.io/kubernetes/vendor/github.com/go-openapi/spec.Schema.MarshalJSON
      34MB  0.18% 72.32%   143.51MB  0.75%  reflect.Value.MapKeys
      34MB  0.18% 72.49%   637.56MB  3.31%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*ManagedFieldsEntry).Unmarshal
   24.01MB  0.12% 72.62%   227.30MB  1.18%  k8s.io/kubernetes/vendor/github.com/prometheus/client_golang/prometheus.processMetric

After

Kubectl top && docker stats

$ ks top pods | grep kube-apiser
kube-apiserver-ip-10-79-145-80.ec2.internal             7795m        12363Mi         
kube-apiserver-ip-10-79-146-35.ec2.internal             8913m        12094Mi         
kube-apiserver-ip-10-79-147-109.ec2.internal            7553m        12083Mi    
CONTAINER ID        NAME                                                                                                            CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
df44e0090d2c        k8s_kube-apiserver_kube-apiserver-ip-10-79-145-80.ec2.internal_kube-system_6d847789ef6120d1c63413afeca010e8_2   601.41%             34.34GiB / 124.4GiB   27.61%              0B / 0B             4.34MB / 51.5MB     42
^C

Top heap

$ go tool pprof -top http://127.0.0.1:8080/debug/pprof/heap
Fetching profile over HTTP from http://127.0.0.1:8080/debug/pprof/heap
Saved profile in /Users/doalexan/pprof/pprof.kube-apiserver.alloc_objects.alloc_space.inuse_objects.inuse_space.001.pb.gz
File: kube-apiserver
Type: inuse_space
Time: Feb 4, 2021 at 5:20pm (EET)
Showing nodes accounting for 12386.83MB, 92.25% of 13427.33MB total
Dropped 1300 nodes (cum <= 67.14MB)
      flat  flat%   sum%        cum   cum%
 9254.54MB 68.92% 68.92%  9254.54MB 68.92%  bytes.makeSlice
  555.24MB  4.14% 73.06%   555.24MB  4.14%  reflect.unsafe_NewArray
  498.82MB  3.71% 76.77%   498.82MB  3.71%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_core_PodSpec_To_v1_PodSpec
  466.60MB  3.47% 80.25%   468.62MB  3.49%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*parser).recvMsg
  392.85MB  2.93% 83.17%   889.17MB  6.62%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_core_PodList_To_v1_PodList
  275.89MB  2.05% 85.23%   275.89MB  2.05%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/mvcc/mvccpb.(*KeyValue).Unmarshal
  206.88MB  1.54% 86.77%   206.88MB  1.54%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*FieldsV1).Unmarshal
  155.67MB  1.16% 87.93%   504.78MB  3.76%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*PodSpec).Unmarshal
  122.06MB  0.91% 88.84%   122.56MB  0.91%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*ResourceRequirements).Unmarshal
  109.54MB  0.82% 89.65%   294.60MB  2.19%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Container).Unmarshal
   96.53MB  0.72% 90.37%    97.03MB  0.72%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Unknown).Unmarshal
   75.33MB  0.56% 90.93%   294.70MB  2.19%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*ObjectMeta).Unmarshal
      60MB  0.45% 91.38%    86.51MB  0.64%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*EndpointAddress).Unmarshal
   38.51MB  0.29% 91.67%    78.02MB  0.58%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*PodStatus).Unmarshal
   30.50MB  0.23% 91.89%  3373.49MB 25.12%  encoding/json.compact
   18.36MB  0.14% 92.03%   104.87MB  0.78%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*EndpointSubset).Unmarshal
   11.50MB 0.086% 92.12%   628.90MB  4.68%  encoding/json.mapEncoder.encode
    8.50MB 0.063% 92.18%   215.38MB  1.60%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*ManagedFieldsEntry).Unmarshal
    3.01MB 0.022% 92.20%   277.38MB  2.07%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/etcdserver/etcdserverpb.(*RangeResponse).Unmarshal
       2MB 0.015% 92.22%   211.69MB  1.58%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.serveWatch
    1.50MB 0.011% 92.23%   945.75MB  7.04%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/conversion.(*Converter).doConversion
    1.50MB 0.011% 92.24%   207.18MB  1.54%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.(*WatchServer).ServeHTTP
    0.50MB 0.0037% 92.24% 12200.71MB 90.86%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.ListResource.func1
    0.50MB 0.0037% 92.25%   230.07MB  1.71%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.(*timeoutHandler).ServeHTTP
    0.50MB 0.0037% 92.25%  1207.15MB  8.99%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.(*Serializer).Decode
         0     0% 92.25%  3877.80MB 28.88%  bytes.(*Buffer).Write
         0     0% 92.25%   487.39MB  3.63%  bytes.(*Buffer).WriteByte
         0     0% 92.25%  4879.55MB 36.34%  bytes.(*Buffer).WriteString
         0     0% 92.25%  9254.54MB 68.92%  bytes.(*Buffer).grow
         0     0% 92.25%  9181.06MB 68.38%  encoding/json.(*Encoder).Encode
         0     0% 92.25%  9096.98MB 67.75%  encoding/json.(*encodeState).marshal
         0     0% 92.25%  9096.98MB 67.75%  encoding/json.(*encodeState).reflectValue
         0     0% 92.25%  3395.02MB 25.28%  encoding/json.(*encodeState).string
         0     0% 92.25%  9092.88MB 67.72%  encoding/json.arrayEncoder.encode
         0     0% 92.25%   296.55MB  2.21%  encoding/json.intEncoder
         0     0% 92.25%  3382.99MB 25.19%  encoding/json.marshalerEncoder
         0     0% 92.25%  9096.98MB 67.75%  encoding/json.ptrEncoder.encode
         0     0% 92.25%  9092.88MB 67.72%  encoding/json.sliceEncoder.encode
         0     0% 92.25%  3063.22MB 22.81%  encoding/json.stringEncoder
         0     0% 92.25%  9096.98MB 67.75%  encoding/json.structEncoder.encode
         0     0% 92.25%    72.15MB  0.54%  k8s.io/kubernetes/cmd/kube-apiserver/app.CreateKubeAPIServer
         0     0% 92.25%    76.91MB  0.57%  k8s.io/kubernetes/cmd/kube-apiserver/app.CreateServerChain
         0     0% 92.25%    92.52MB  0.69%  k8s.io/kubernetes/cmd/kube-apiserver/app.NewAPIServerCommand.func1
         0     0% 92.25%    92.52MB  0.69%  k8s.io/kubernetes/cmd/kube-apiserver/app.Run
         0     0% 92.25%   889.17MB  6.62%  k8s.io/kubernetes/pkg/apis/core/v1.Convert_core_PodList_To_v1_PodList
         0     0% 92.25%   498.82MB  3.71%  k8s.io/kubernetes/pkg/apis/core/v1.Convert_core_PodSpec_To_v1_PodSpec
         0     0% 92.25%   498.32MB  3.71%  k8s.io/kubernetes/pkg/apis/core/v1.Convert_core_Pod_To_v1_Pod
         0     0% 92.25%   889.17MB  6.62%  k8s.io/kubernetes/pkg/apis/core/v1.RegisterConversions.func248
         0     0% 92.25%   498.32MB  3.71%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_core_Pod_To_v1_Pod
         0     0% 92.25%    71.40MB  0.53%  k8s.io/kubernetes/pkg/master.completedConfig.New
         0     0% 92.25% 11804.74MB 87.92%  k8s.io/kubernetes/vendor/github.com/emicklei/go-restful.(*Container).Dispatch
         0     0% 92.25% 11815.88MB 88.00%  k8s.io/kubernetes/vendor/github.com/emicklei/go-restful.(*Container).dispatch
         0     0% 92.25%  1083.10MB  8.07%  k8s.io/kubernetes/vendor/github.com/gogo/protobuf/proto.Unmarshal
         0     0% 92.25%   744.45MB  5.54%  k8s.io/kubernetes/vendor/github.com/grpc-ecosystem/go-grpc-prometheus.(*ClientMetrics).UnaryClientInterceptor.func1
         0     0% 92.25%    91.52MB  0.68%  k8s.io/kubernetes/vendor/github.com/spf13/cobra.(*Command).Execute
         0     0% 92.25%    92.52MB  0.69%  k8s.io/kubernetes/vendor/github.com/spf13/cobra.(*Command).ExecuteC
         0     0% 92.25%    92.52MB  0.69%  k8s.io/kubernetes/vendor/github.com/spf13/cobra.(*Command).execute
         0     0% 92.25%   742.44MB  5.53%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/clientv3.(*kv).Do
         0     0% 92.25%   742.44MB  5.53%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/clientv3.(*kv).Get
         0     0% 92.25%   742.44MB  5.53%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/clientv3.(*retryKVClient).Range
         0     0% 92.25%   742.44MB  5.53%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/etcdserver/etcdserverpb.(*kVClient).Range
         0     0% 92.25%   744.45MB  5.54%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*ClientConn).Invoke
         0     0% 92.25%   748.51MB  5.57%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*clientStream).RecvMsg
         0     0% 92.25%   748.51MB  5.57%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*clientStream).RecvMsg.func1
         0     0% 92.25%   750.02MB  5.59%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*clientStream).withRetry
         0     0% 92.25%   748.51MB  5.57%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*csAttempt).recvMsg
         0     0% 92.25%   744.45MB  5.54%  k8s.io/kubernetes/vendor/google.golang.org/grpc.Invoke
         0     0% 92.25%   744.45MB  5.54%  k8s.io/kubernetes/vendor/google.golang.org/grpc.invoke
         0     0% 92.25%   747.51MB  5.57%  k8s.io/kubernetes/vendor/google.golang.org/grpc.recv
         0     0% 92.25%   468.62MB  3.49%  k8s.io/kubernetes/vendor/google.golang.org/grpc.recvAndDecompress
         0     0% 92.25%   278.89MB  2.08%  k8s.io/kubernetes/vendor/google.golang.org/grpc/encoding/proto.codec.Unmarshal
         0     0% 92.25%    77.71MB  0.58%  k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport.(*http2Client).handleData
         0     0% 92.25%    85.50MB  0.64%  k8s.io/kubernetes/vendor/google.golang.org/grpc/internal/transport.(*http2Client).reader
         0     0% 92.25%   106.87MB   0.8%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Endpoints).Unmarshal
         0     0% 92.25%   106.87MB   0.8%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Endpoints).XXX_Unmarshal
         0     0% 92.25%   845.15MB  6.29%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Pod).Unmarshal
         0     0% 92.25%   830.14MB  6.18%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Pod).XXX_Unmarshal
         0     0% 92.25%   945.75MB  7.04%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/conversion.(*Converter).Convert
         0     0% 92.25%   925.21MB  6.89%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Scheme).UnsafeConvertToVersion
         0     0% 92.25%   925.21MB  6.89%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Scheme).convertToVersion
         0     0% 92.25%   608.98MB  4.54%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.Decode
         0     0% 92.25%   227.54MB  1.69%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.WithoutVersionDecoder.Decode
         0     0% 92.25%   925.21MB  6.89%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.unsafeObjectConvertor.ConvertToVersion
         0     0% 92.25%  9181.06MB 68.38%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/json.(*Serializer).Encode
         0     0% 92.25%  9181.06MB 68.38%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/json.(*Serializer).doEncode
         0     0% 92.25%  1110.13MB  8.27%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.unmarshalToObject
         0     0% 92.25%   984.28MB  7.33%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/recognizer.(*decoder).Decode
         0     0% 92.25%    97.68MB  0.73%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/streaming.(*encoder).Encode
         0     0% 92.25%  1083.41MB  8.07%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning.(*codec).Decode
         0     0% 92.25% 10215.13MB 76.08%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning.(*codec).Encode
         0     0% 92.25% 10130.32MB 75.45%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning.(*codec).doEncode
         0     0% 92.25%   203.35MB  1.51%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/watch.(*StreamWatcher).receive
         0     0% 92.25% 11816.22MB 88.00%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints.restfulListResource.func1
         0     0% 92.25%  2393.90MB 17.83%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAudit.func1
         0     0% 92.25%  1670.44MB 12.44%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAuthentication.func1
         0     0% 92.25%  4199.92MB 31.28%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAuthorization.func1
         0     0% 92.25%  2819.02MB 20.99%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithImpersonation.func1
         0     0% 92.25%   145.37MB  1.08%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithRequestInfo.func1
         0     0% 92.25%   211.69MB  1.58%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.ListResource.func1.2
         0     0% 92.25% 10057.94MB 74.91%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.transformResponseObject
         0     0% 92.25% 10011.93MB 74.56%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers/responsewriters.SerializeObject
         0     0% 92.25% 10012.44MB 74.57%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers/responsewriters.WriteObjectNegotiated
         0     0% 92.25% 11822.24MB 88.05%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/metrics.InstrumentRouteFunc.func1
         0     0% 92.25%   211.69MB  1.58%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/metrics.RecordLongRunning
         0     0% 92.25%  1915.89MB 14.27%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*DryRunnableStorage).List
         0     0% 92.25%  1915.89MB 14.27%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*Store).List
         0     0% 92.25%  1915.89MB 14.27%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*Store).ListPredicate
         0     0% 92.25% 11008.78MB 81.99%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server.director.ServeHTTP
         0     0% 92.25%  1156.09MB  8.61%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.(*timeoutHandler).ServeHTTP.func1
         0     0% 92.25%   187.94MB  1.40%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.WithWaitGroup.func1
         0     0% 92.25%  5271.01MB 39.26%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/mux.(*PathRecorderMux).ServeHTTP
         0     0% 92.25%  9658.62MB 71.93%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/mux.(*pathHandler).ServeHTTP
         0     0% 92.25%  1915.89MB 14.27%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.(*Cacher).List
         0     0% 92.25%    92.02MB  0.69%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.(*cachingObject).CacheEncode
         0     0% 92.25%  1468.63MB 10.94%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*store).List
         0     0% 92.25%   407.22MB  3.03%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*watchChan).prepareObjs
         0     0% 92.25%   407.22MB  3.03%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*watchChan).processEvent
         0     0% 92.25%   407.22MB  3.03%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*watchChan).transform
         0     0% 92.25%   684.70MB  5.10%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.appendListItem
         0     0% 92.25%   407.22MB  3.03%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.decodeObj
         0     0% 92.25%   203.35MB  1.51%  k8s.io/kubernetes/vendor/k8s.io/client-go/rest/watch.(*Decoder).Decode
         0     0% 92.25%    83.75MB  0.62%  k8s.io/kubernetes/vendor/k8s.io/client-go/tools/cache.(*Reflector).ListAndWatch.func1.1
         0     0% 92.25%    84.75MB  0.63%  k8s.io/kubernetes/vendor/k8s.io/client-go/tools/cache.(*Reflector).ListAndWatch.func1.1.2
         0     0% 92.25%    84.25MB  0.63%  k8s.io/kubernetes/vendor/k8s.io/client-go/tools/pager.(*ListPager).List
         0     0% 92.25%    84.25MB  0.63%  k8s.io/kubernetes/vendor/k8s.io/client-go/tools/pager.SimplePageFunc.func1
         0     0% 92.25% 10245.92MB 76.31%  k8s.io/kubernetes/vendor/k8s.io/kube-aggregator/pkg/apiserver.(*proxyHandler).ServeHTTP
         0     0% 92.25%    91.02MB  0.68%  main.main
         0     0% 92.25%  3327.86MB 24.78%  net/http.HandlerFunc.ServeHTTP
         0     0% 92.25%   554.74MB  4.13%  reflect.MakeSlice
         0     0% 92.25%    93.57MB   0.7%  runtime.main

Top allocs

$ go tool pprof -top http://127.0.0.1:8080/debug/pprof/allocs
Fetching profile over HTTP from http://127.0.0.1:8080/debug/pprof/allocs
Saved profile in /Users/doalexan/pprof/pprof.kube-apiserver.alloc_objects.alloc_space.inuse_objects.inuse_space.003.pb.gz
File: kube-apiserver
Type: alloc_space
Time: Feb 4, 2021 at 5:23pm (EET)
Showing nodes accounting for 442953.75MB, 86.08% of 514579.49MB total
Dropped 3829 nodes (cum <= 2572.90MB)
      flat  flat%   sum%        cum   cum%
89934.87MB 17.48% 17.48% 89934.87MB 17.48%  bytes.makeSlice
45282.88MB  8.80% 26.28% 45347.38MB  8.81%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Unknown).Unmarshal
44910.10MB  8.73% 35.00% 44910.10MB  8.73%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/mvcc/mvccpb.(*KeyValue).Unmarshal
43089.29MB  8.37% 43.38% 43134.97MB  8.38%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*parser).recvMsg
34115.82MB  6.63% 50.01% 80813.60MB 15.70%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*PodSpec).Unmarshal
28440.25MB  5.53% 55.54% 28523.94MB  5.54%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.(*RawSerializer).doEncode
22848.37MB  4.44% 59.98% 22848.37MB  4.44%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*FieldsV1).Unmarshal
18897.37MB  3.67% 63.65% 40317.06MB  7.83%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Container).Unmarshal
14369.98MB  2.79% 66.44% 14574.48MB  2.83%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*ResourceRequirements).Unmarshal
 9937.19MB  1.93% 68.37%  9937.19MB  1.93%  reflect.New
 7644.32MB  1.49% 69.86% 10656.54MB  2.07%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.(*Serializer).doEncode
 7489.91MB  1.46% 71.31%  7489.91MB  1.46%  reflect.unsafe_NewArray
 7051.37MB  1.37% 72.68%  7051.37MB  1.37%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_v1_PodSpec_To_core_PodSpec
 6970.37MB  1.35% 74.04%  6970.37MB  1.35%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_core_PodSpec_To_v1_PodSpec
 6515.90MB  1.27% 75.30% 36227.92MB  7.04%  encoding/json.compact
 6304.85MB  1.23% 76.53% 30423.76MB  5.91%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*ObjectMeta).Unmarshal
 5474.03MB  1.06% 77.59%  9895.10MB  1.92%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*PodStatus).Unmarshal
 5245.71MB  1.02% 78.61% 11583.09MB  2.25%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_core_PodList_To_v1_PodList
 4124.78MB   0.8% 79.41%  4124.78MB   0.8%  reflect.copyVal
 3727.04MB  0.72% 80.14%  4077.56MB  0.79%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*ContainerStatus).Unmarshal
 3674.91MB  0.71% 80.85% 20702.33MB  4.02%  encoding/json.mapEncoder.encode
 3623.02MB   0.7% 81.56%  3623.02MB   0.7%  math/big.nat.make
 3496.41MB  0.68% 82.24%  3496.41MB  0.68%  math/big.basicSqr
 3355.81MB  0.65% 82.89%  3355.81MB  0.65%  reflect.mapiterinit
 2980.09MB  0.58% 83.47%  5038.65MB  0.98%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*EnvVar).Unmarshal
 2710.59MB  0.53% 83.99%  2710.59MB  0.53%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Toleration).Unmarshal
 2680.58MB  0.52% 84.51%  2680.58MB  0.52%  reflect.packEface
 1716.14MB  0.33% 84.85%  5802.92MB  1.13%  reflect.Value.MapKeys
 1382.63MB  0.27% 85.12%  3581.04MB   0.7%  k8s.io/kubernetes/pkg/apis/core.(*PodSpec).DeepCopyInto
  841.02MB  0.16% 85.28% 23689.39MB  4.60%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*ManagedFieldsEntry).Unmarshal
  667.15MB  0.13% 85.41%  2778.92MB  0.54%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1.(*ObjectMeta).DeepCopyInto
  557.34MB  0.11% 85.52% 15098.78MB  2.93%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*store).GuaranteedUpdate
  510.04MB 0.099% 85.62% 20725.17MB  4.03%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/conversion.(*Converter).doConversion
     510MB 0.099% 85.72%  6254.53MB  1.22%  k8s.io/kubernetes/pkg/apis/core.(*Pod).DeepCopy
  469.02MB 0.091% 85.81%    38984MB  7.58%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.(*WatchServer).ServeHTTP
  393.55MB 0.076% 85.88% 43267.95MB  8.41%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/etcdserver/etcdserverpb.(*RangeResponse).Unmarshal
  273.51MB 0.053% 85.94% 263762.79MB 51.26%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*store).List
  231.01MB 0.045% 85.98% 175203.55MB 34.05%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.(*Serializer).Decode
      64MB 0.012% 85.99% 165038.80MB 32.07%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning.(*codec).Encode
      45MB 0.0087% 86.00% 89979.88MB 17.49%  bytes.(*Buffer).grow
   41.50MB 0.0081% 86.01%  4219.15MB  0.82%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.UpdateResource.func1
      30MB 0.0058% 86.02% 431987.42MB 83.95%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server.director.ServeHTTP
   28.50MB 0.0055% 86.02% 32532.99MB  6.32%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.(*timeoutHandler).ServeHTTP
      26MB 0.0051% 86.03%  4132.36MB   0.8%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/etcdserver/etcdserverpb.(*watchWatchClient).Recv
      25MB 0.0049% 86.03%  4697.42MB  0.91%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.Encode
      24MB 0.0047% 86.04%  7396.65MB  1.44%  reflect.MakeSlice
   22.50MB 0.0044% 86.04%   121489MB 23.61%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers/responsewriters.SerializeObject
   18.50MB 0.0036% 86.05%  5757.02MB  1.12%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/authentication/group.(*AuthenticatedGroupAdder).AuthenticateRequest
   16.50MB 0.0032% 86.05% 84953.14MB 16.51%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/clientv3.(*retryKVClient).Range
   14.50MB 0.0028% 86.05% 14600.79MB  2.84%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*Store).Update
   14.50MB 0.0028% 86.05% 423830.60MB 82.36%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/mux.(*pathHandler).ServeHTTP
      12MB 0.0023% 86.06% 427184.99MB 83.02%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.ListResource.func1
      11MB 0.0021% 86.06%  3846.24MB  0.75%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.getResourceHandler.func1
      11MB 0.0021% 86.06% 434940.93MB 84.52%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/metrics.InstrumentRouteFunc.func1
      11MB 0.0021% 86.06%  6695.22MB  1.30%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*watchChan).transform
      10MB 0.0019% 86.06%  5780.02MB  1.12%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/authentication/request/union.(*unionAuthRequestHandler).AuthenticateRequest
       9MB 0.0017% 86.07% 435353.88MB 84.60%  k8s.io/kubernetes/vendor/github.com/emicklei/go-restful.(*Container).dispatch
    8.50MB 0.0017% 86.07%  5688.54MB  1.11%  crypto/x509.(*Certificate).buildChains
       8MB 0.0016% 86.07%  5680.03MB  1.10%  crypto/x509.(*Certificate).buildChains.func1
    7.50MB 0.0015% 86.07% 122084.07MB 23.73%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers/responsewriters.WriteObjectNegotiated
       6MB 0.0012% 86.07%    38992MB  7.58%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.serveWatch
       6MB 0.0012% 86.07% 84935.64MB 16.51%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/etcdserver/etcdserverpb.(*kVClient).Range
    5.50MB 0.0011% 86.07% 10441.45MB  2.03%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.UpdateResource.func1.3
       5MB 0.00097% 86.08%  6764.23MB  1.31%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*watchChan).prepareObjs
    4.50MB 0.00087% 86.08%  5705.81MB  1.11%  crypto/x509.(*Certificate).Verify
    4.50MB 0.00087% 86.08%  3248.79MB  0.63%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating.(*mutatingDispatcher).Dispatch
       3MB 0.00058% 86.08%  3426.43MB  0.67%  k8s.io/kubernetes/vendor/k8s.io/client-go/rest/watch.(*Decoder).Decode
    2.50MB 0.00049% 86.08%  2913.82MB  0.57%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.GetResource.func1
       2MB 0.00039% 86.08%  3323.31MB  0.65%  net/http.(*conn).serve
       2MB 0.00039% 86.08%  7540.47MB  1.47%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*Store).Update.func1
       2MB 0.00039% 86.08%  2958.81MB  0.57%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*store).Get
    1.50MB 0.00029% 86.08% 425891.12MB 82.76%  k8s.io/kubernetes/vendor/k8s.io/kube-aggregator/pkg/apiserver.(*proxyHandler).ServeHTTP
    1.50MB 0.00029% 86.08%    38993MB  7.58%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/metrics.RecordLongRunning
       1MB 0.00019% 86.08%  3245.35MB  0.63%  k8s.io/kubernetes/plugin/pkg/admission/security/podsecuritypolicy.(*Plugin).computeSecurityContext
    0.50MB 9.7e-05% 86.08% 162234.24MB 31.53%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning.(*codec).doEncode
    0.50MB 9.7e-05% 86.08% 268055.15MB 52.09%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.(*Cacher).List
         0     0% 86.08% 35705.68MB  6.94%  bytes.(*Buffer).Write
         0     0% 86.08%  6228.54MB  1.21%  bytes.(*Buffer).WriteByte
         0     0% 86.08% 46450.01MB  9.03%  bytes.(*Buffer).WriteString
         0     0% 86.08%  5808.76MB  1.13%  crypto/rsa.VerifyPKCS1v15
         0     0% 86.08%  5935.21MB  1.15%  crypto/rsa.encrypt
         0     0% 86.08%  5670.53MB  1.10%  crypto/x509.(*Certificate).CheckSignature
         0     0% 86.08%  5670.53MB  1.10%  crypto/x509.(*Certificate).CheckSignatureFrom
         0     0% 86.08%  5672.53MB  1.10%  crypto/x509.checkSignature
         0     0% 86.08% 109667.48MB 21.31%  encoding/json.(*Encoder).Encode
         0     0% 86.08% 107081.60MB 20.81%  encoding/json.(*encodeState).marshal
         0     0% 86.08% 107140.99MB 20.82%  encoding/json.(*encodeState).reflectValue
         0     0% 86.08% 27653.05MB  5.37%  encoding/json.(*encodeState).string
         0     0% 86.08% 102652.69MB 19.95%  encoding/json.arrayEncoder.encode
         0     0% 86.08% 41328.19MB  8.03%  encoding/json.marshalerEncoder
         0     0% 86.08% 105273.32MB 20.46%  encoding/json.ptrEncoder.encode
         0     0% 86.08% 102652.69MB 19.95%  encoding/json.sliceEncoder.encode
         0     0% 86.08% 26055.49MB  5.06%  encoding/json.stringEncoder
         0     0% 86.08% 105638.19MB 20.53%  encoding/json.structEncoder.encode
         0     0% 86.08%  5744.53MB  1.12%  k8s.io/kubernetes/pkg/apis/core.(*Pod).DeepCopyInto
         0     0% 86.08%  5448.06MB  1.06%  k8s.io/kubernetes/pkg/apis/core.(*Pod).DeepCopyObject
         0     0% 86.08% 11583.09MB  2.25%  k8s.io/kubernetes/pkg/apis/core/v1.Convert_core_PodList_To_v1_PodList
         0     0% 86.08%  6970.37MB  1.35%  k8s.io/kubernetes/pkg/apis/core/v1.Convert_core_PodSpec_To_v1_PodSpec
         0     0% 86.08%  6930.31MB  1.35%  k8s.io/kubernetes/pkg/apis/core/v1.Convert_core_Pod_To_v1_Pod
         0     0% 86.08%  7051.37MB  1.37%  k8s.io/kubernetes/pkg/apis/core/v1.Convert_v1_PodSpec_To_core_PodSpec
         0     0% 86.08%  7025.33MB  1.37%  k8s.io/kubernetes/pkg/apis/core/v1.Convert_v1_Pod_To_core_Pod
         0     0% 86.08% 11583.09MB  2.25%  k8s.io/kubernetes/pkg/apis/core/v1.RegisterConversions.func248
         0     0% 86.08%  7025.33MB  1.37%  k8s.io/kubernetes/pkg/apis/core/v1.RegisterConversions.func415
         0     0% 86.08%  6930.31MB  1.35%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_core_Pod_To_v1_Pod
         0     0% 86.08%  7025.33MB  1.37%  k8s.io/kubernetes/pkg/apis/core/v1.autoConvert_v1_Pod_To_core_Pod
         0     0% 86.08%  2971.04MB  0.58%  k8s.io/kubernetes/pkg/registry/core/pod/storage.(*StatusREST).Update
         0     0% 86.08% 435130.43MB 84.56%  k8s.io/kubernetes/vendor/github.com/emicklei/go-restful.(*Container).Dispatch
         0     0% 86.08% 125768.90MB 24.44%  k8s.io/kubernetes/vendor/github.com/gogo/protobuf/proto.Unmarshal
         0     0% 86.08% 86702.17MB 16.85%  k8s.io/kubernetes/vendor/github.com/grpc-ecosystem/go-grpc-prometheus.(*ClientMetrics).UnaryClientInterceptor.func1
         0     0% 86.08%  4106.35MB   0.8%  k8s.io/kubernetes/vendor/github.com/grpc-ecosystem/go-grpc-prometheus.(*monitoredClientStream).RecvMsg
         0     0% 86.08% 84966.64MB 16.51%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/clientv3.(*kv).Do
         0     0% 86.08% 84990.15MB 16.52%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/clientv3.(*kv).Get
         0     0% 86.08%  4132.36MB   0.8%  k8s.io/kubernetes/vendor/go.etcd.io/etcd/clientv3.(*watchGrpcStream).serveWatchClient
         0     0% 86.08% 86702.17MB 16.85%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*ClientConn).Invoke
         0     0% 86.08% 88610.15MB 17.22%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*clientStream).RecvMsg
         0     0% 86.08% 88520.12MB 17.20%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*clientStream).RecvMsg.func1
         0     0% 86.08% 89573.31MB 17.41%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*clientStream).withRetry
         0     0% 86.08% 88520.12MB 17.20%  k8s.io/kubernetes/vendor/google.golang.org/grpc.(*csAttempt).recvMsg
         0     0% 86.08% 86702.17MB 16.85%  k8s.io/kubernetes/vendor/google.golang.org/grpc.Invoke
         0     0% 86.08% 86649.66MB 16.84%  k8s.io/kubernetes/vendor/google.golang.org/grpc.invoke
         0     0% 86.08% 88519.12MB 17.20%  k8s.io/kubernetes/vendor/google.golang.org/grpc.recv
         0     0% 86.08% 43134.97MB  8.38%  k8s.io/kubernetes/vendor/google.golang.org/grpc.recvAndDecompress
         0     0% 86.08% 45384.16MB  8.82%  k8s.io/kubernetes/vendor/google.golang.org/grpc/encoding/proto.codec.Unmarshal
         0     0% 86.08% 120101.71MB 23.34%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Pod).Unmarshal
         0     0% 86.08% 120079.19MB 23.34%  k8s.io/kubernetes/vendor/k8s.io/api/core/v1.(*Pod).XXX_Unmarshal
         0     0% 86.08% 20687.65MB  4.02%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/conversion.(*Converter).Convert
         0     0% 86.08%     7885MB  1.53%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Scheme).Convert
         0     0% 86.08%  5821.28MB  1.13%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Scheme).New
         0     0% 86.08% 14154.70MB  2.75%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Scheme).UnsafeConvertToVersion
         0     0% 86.08% 14180.21MB  2.76%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.(*Scheme).convertToVersion
         0     0% 86.08%  9545.43MB  1.85%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.Decode
         0     0% 86.08%  4567.84MB  0.89%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.UseOrCreateObject
         0     0% 86.08%  2787.67MB  0.54%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.WithoutVersionDecoder.Decode
         0     0% 86.08% 14144.17MB  2.75%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime.unsafeObjectConvertor.ConvertToVersion
         0     0% 86.08% 109435.96MB 21.27%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/json.(*Serializer).Encode
         0     0% 86.08% 109489.41MB 21.28%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/json.(*Serializer).doEncode
         0     0% 86.08% 28523.94MB  5.54%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.(*RawSerializer).Encode
         0     0% 86.08% 10656.54MB  2.07%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.(*Serializer).Encode
         0     0% 86.08% 130339.24MB 25.33%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf.unmarshalToObject
         0     0% 86.08% 170922.83MB 33.22%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/recognizer.(*decoder).Decode
         0     0% 86.08% 30148.43MB  5.86%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/streaming.(*encoder).Encode
         0     0% 86.08% 184191.60MB 35.79%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/runtime/serializer/versioning.(*codec).Decode
         0     0% 86.08%  2601.68MB  0.51%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait.BackoffUntil
         0     0% 86.08%  2633.47MB  0.51%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1
         0     0% 86.08%  3426.43MB  0.67%  k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/watch.(*StreamWatcher).receive
         0     0% 86.08%  5971.78MB  1.16%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/admission.(*reinvoker).Admit
         0     0% 86.08%  5967.29MB  1.16%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/admission.auditHandler.Admit
         0     0% 86.08%  5986.28MB  1.16%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/admission.chainAdmissionHandler.Admit
         0     0% 86.08%  5999.80MB  1.17%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/admission/metrics.pluginHandlerWithMetrics.Admit
         0     0% 86.08%  3438.85MB  0.67%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/admission/plugin/webhook/generic.(*Webhook).Dispatch
         0     0% 86.08%  3308.29MB  0.64%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating.(*Plugin).Admit
         0     0% 86.08%  5695.52MB  1.11%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/authentication/request/x509.(*Authenticator).AuthenticateRequest
         0     0% 86.08%  3801.71MB  0.74%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints.restfulGetResource.func1
         0     0% 86.08% 425264.81MB 82.64%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints.restfulListResource.func1
         0     0% 86.08%  4219.15MB  0.82%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints.restfulUpdateResource.func1
         0     0% 86.08% 255982.82MB 49.75%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAudit.func1
         0     0% 86.08% 206832.46MB 40.19%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAuthentication.func1
         0     0% 86.08% 360981.82MB 70.15%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAuthorization.func1
         0     0% 86.08% 265142.97MB 51.53%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithImpersonation.func1
         0     0% 86.08% 30853.46MB  6.00%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithRequestInfo.func1
         0     0% 86.08%  3104.10MB   0.6%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.(*namedCreaterAdapter).Create
         0     0% 86.08%  4056.30MB  0.79%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.(*patcher).patchResource.func1
         0     0% 86.08%  3995.28MB  0.78%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.(*patcher).patchResource.func2
         0     0% 86.08% 38991.50MB  7.58%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.ListResource.func1.2
         0     0% 86.08% 10398.36MB  2.02%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.UpdateResource.func1.4
         0     0% 86.08%  4285.45MB  0.83%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.createHandler.func1.1
         0     0% 86.08%  9861.68MB  1.92%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.createHandler.func1.2
         0     0% 86.08% 24300.04MB  4.72%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.finishRequest.func1
         0     0% 86.08% 122339.54MB 23.77%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers.transformResponseObject
         0     0% 86.08%  2872.63MB  0.56%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager.(*FieldManager).Update
         0     0% 86.08%  2847.63MB  0.55%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager.(*FieldManager).UpdateNoErrors
         0     0% 86.08%  2896.26MB  0.56%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*DryRunnableStorage).Get
         0     0% 86.08% 15791.36MB  3.07%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*DryRunnableStorage).GuaranteedUpdate
         0     0% 86.08% 268078.23MB 52.10%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*DryRunnableStorage).List
         0     0% 86.08%  3072.58MB   0.6%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*Store).Create
         0     0% 86.08%  2923.74MB  0.57%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*Store).Get
         0     0% 86.08% 268083.23MB 52.10%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*Store).List
         0     0% 86.08% 268082.23MB 52.10%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/generic/registry.(*Store).ListPredicate
         0     0% 86.08%  5407.23MB  1.05%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/registry/rest.(*defaultUpdatedObjectInfo).UpdatedObject
         0     0% 86.08% 93512.24MB 18.17%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.(*timeoutHandler).ServeHTTP.func1
         0     0% 86.08% 33117.68MB  6.44%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.WithWaitGroup.func1
         0     0% 86.08% 383072.76MB 74.44%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/mux.(*PathRecorderMux).ServeHTTP
         0     0% 86.08%  2925.78MB  0.57%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.(*Cacher).Get
         0     0% 86.08% 14850.18MB  2.89%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.(*Cacher).GuaranteedUpdate
         0     0% 86.08%  6379.39MB  1.24%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.(*cachingObject).CacheEncode
         0     0% 86.08%  6148.16MB  1.19%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.(*cachingObject).CacheEncode.func1
         0     0% 86.08%  2574.70MB   0.5%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/cacher.(*cachingObject).GetObject
         0     0% 86.08%  7495.98MB  1.46%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*store).updateState
         0     0% 86.08%  6575.18MB  1.28%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.(*watchChan).processEvent
         0     0% 86.08% 177180.91MB 34.43%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.appendListItem
         0     0% 86.08%  4507.12MB  0.88%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.decode
         0     0% 86.08%  6763.23MB  1.31%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.decodeObj
         0     0% 86.08%  3987.39MB  0.77%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.getNewItemFunc.func2
         0     0% 86.08%  2948.54MB  0.57%  k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/storage/etcd3.growSlice
         0     0% 86.08%  3802.96MB  0.74%  k8s.io/kubernetes/vendor/sigs.k8s.io/structured-merge-diff/v3/typed.handleAtom
         0     0% 86.08%  6705.01MB  1.30%  math/big.(*Int).Exp
         0     0% 86.08%  6706.51MB  1.30%  math/big.nat.expNN
         0     0% 86.08%  4257.25MB  0.83%  math/big.nat.sqr
         0     0% 86.08% 317584.53MB 61.72%  net/http.HandlerFunc.ServeHTTP
         0     0% 86.08%  2834.25MB  0.55%  reflect.Value.MapIndex
         0     0% 86.08%  2680.58MB  0.52%  reflect.valueInterface
         0     0% 86.08%  6203.48MB  1.21%  sync.(*Once).Do
         0     0% 86.08%  6205.98MB  1.21%  sync.(*Once).doSlow