MCPcopy Index your code
hub / github.com/kubernetes/autoscaler

github.com/kubernetes/autoscaler @cluster-autoscaler-chart-9.58.0 sqlite

repository ↗ · DeepWiki ↗ · release cluster-autoscaler-chart-9.58.0 ↗
52,420 symbols 129,597 edges 4,092 files 32,528 documented · 62%
README

Kubernetes Autoscaler

Release Charts CA Tests VPA Tests GoDoc Widget

This repository contains autoscaling-related components for Kubernetes.

What's inside

Cluster Autoscaler - a component that automatically adjusts the size of a Kubernetes Cluster so that all pods have a place to run and there are no unneeded nodes. Supports several public cloud providers. Version 1.0 (GA) was released with kubernetes 1.8.

Cluster Autoscaler Helm Chart - Supported Helm chart for Cluster Autoscaler.

Vertical Pod Autoscaler - a set of components that automatically adjust the amount of CPU and memory requested by pods running in the Kubernetes Cluster. Current state - beta.

Vertical Pod Autoscaler Helm Chart - Supported Helm chart for Vertical Pod Autoscaler.

Addon Resizer - a simplified version of vertical pod autoscaler that modifies resource requests of a deployment based on the number of nodes in the Kubernetes Cluster. Current state - beta.

Contact Info

Interested in autoscaling? Want to talk? Have questions, concerns or great ideas?

Please join us on #sig-autoscaling at https://kubernetes.slack.com/, or join one of our weekly meetings. See the Kubernetes Community Repo for more information.

Getting the Code

Fork the repository in the cloud: 1. Visit https://github.com/kubernetes/autoscaler 1. Click Fork button (top right) to establish a cloud-based fork.

The code must be checked out as a subdirectory of k8s.io, and not github.com.

mkdir -p $GOPATH/src/k8s.io
cd $GOPATH/src/k8s.io
# Replace "$YOUR_GITHUB_USERNAME" below with your github username
git clone https://github.com/$YOUR_GITHUB_USERNAME/autoscaler.git
cd autoscaler

Please refer to Kubernetes Github workflow guide for more details.

Extension points exported contracts — how you extend this code

PodLister (Interface)
PodLister lists all pods. To filter out scheduled, unschedulable, or unprocessed pods the helper method ArrangePodsBySch [86 …
cluster-autoscaler/utils/kubernetes/listers.go
BufferController (Interface)
BufferController performs updates on Buffers and convert them to pods to be injected [7 implementers]
cluster-autoscaler/capacitybuffer/controller/controller.go
CloudProvider (Interface)
CloudProvider contains configuration info and functions for interacting with cloud provider (GCE, AWS, etc). [36 implementers]
cluster-autoscaler/cloudprovider/cloud_provider.go
CapacityQuotaNamespaceLister (Interface)
CapacityQuotaNamespaceLister helps list and get CapacityQuotas. All objects returned here must be treated as read-only. [62 …
cluster-autoscaler/apis/capacityquota/client/listers/autoscaling.x-k8s.io/v1alpha1/capacityquota.go
CustomResourcesProcessor (Interface)
CustomResourcesProcessor is interface defining handling custom resources [7 implementers]
cluster-autoscaler/processors/customresources/custom_resources_processor.go
Rule (Interface)
Rule determines whether a given pod can be drained or not. [16 implementers]
cluster-autoscaler/simulator/drainability/rules/rules.go
Quota (Interface)
Quota is an interface for a single quota. [6 implementers]
cluster-autoscaler/resourcequotas/tracker.go
BalancerNamespaceLister (Interface)
BalancerNamespaceLister helps list and get Balancers. All objects returned here must be treated as read-only. [62 implementers]
balancer/pkg/client/listers/balancer.x-k8s.io/v1alpha1/balancer.go

Core symbols most depended-on inside this repo

Join
called by 2552
cluster-autoscaler/cloudprovider/magnum/gophercloud/provider_client.go
RetryPolicy
called by 2068
cluster-autoscaler/cloudprovider/oci/vendor-internal/github.com/oracle/oci-go-sdk/v65/common/retry.go
parameterToString
called by 1824
cluster-autoscaler/cloudprovider/ionoscloud/ionos-cloud-sdk-go/client.go
Add
called by 1706
cluster-autoscaler/cloudprovider/brightbox/go-cache/cache.go
Error
called by 1631
cluster-autoscaler/cloudprovider/magnum/gophercloud/errors.go
New
called by 1604
cluster-autoscaler/cloudprovider/alicloud/metadata/metadata.go
Get
called by 1563
cluster-autoscaler/cloudprovider/azure/azure_client.go
String
called by 1222
vertical-pod-autoscaler/pkg/recommender/util/histogram.go

Shape

Method 31,263
Function 10,275
Struct 9,124
TypeAlias 1,078
Interface 579
FuncType 100
Class 1

Languages

Go100%
Python1%

Modules by API surface

cluster-autoscaler/cloudprovider/tencentcloud/tencentcloud-sdk-go/vpc/v20170312/models.go2,631 symbols
cluster-autoscaler/cloudprovider/exoscale/internal/github.com/exoscale/egoscale/v2/oapi/oapi.gen.go1,914 symbols
cluster-autoscaler/cloudprovider/tencentcloud/tencentcloud-sdk-go/vpc/v20170312/client.go1,255 symbols
cluster-autoscaler/cloudprovider/tencentcloud/tencentcloud-sdk-go/cvm/v20170312/models.go822 symbols
cluster-autoscaler/cloudprovider/oci/vendor-internal/github.com/oracle/oci-go-sdk/v65/core/core_virtualnetwork_client.go523 symbols
cluster-autoscaler/cloudprovider/tencentcloud/tencentcloud-sdk-go/as/v20180419/models.go442 symbols
cluster-autoscaler/cloudprovider/tencentcloud/tencentcloud-sdk-go/cvm/v20170312/client.go379 symbols
cluster-autoscaler/cloudprovider/volcengine/volcengine-go-sdk/service/ecs/interface_ecs.go313 symbols
cluster-autoscaler/cloudprovider/externalgrpc/protos/externalgrpc.pb.go277 symbols
cluster-autoscaler/cloudprovider/hetzner/hcloud-go/hcloud/zz_schema.go270 symbols
cluster-autoscaler/cloudprovider/oci/vendor-internal/github.com/oracle/oci-go-sdk/v65/core/core_compute_client.go243 symbols
cluster-autoscaler/cloudprovider/hetzner/hcloud-go/hcloud/schema_gen.go220 symbols

Dependencies from manifests, versioned

cel.dev/exprv0.25.1 · 1×
cloud.google.com/go/auth/oauth2adaptv0.2.8 · 1×
cloud.google.com/go/compute/metadatav0.9.0 · 1×
cyphar.com/go-pathrsv0.2.2 · 1×
dario.cat/mergov1.0.1 · 1×
github.com/Azure/azure-sdk-for-go-extensionsv0.1.6 · 1×
github.com/Azure/azure-sdk-for-go/sdk/azcorev1.21.0 · 1×
github.com/Azure/azure-sdk-for-go/sdk/azidentityv1.13.1 · 1×
github.com/Azure/azure-sdk-for-go/sdk/internalv1.11.2 · 1×
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/authorization/armauthorization/v2v2.2.0 · 1×
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v5v5.7.0 · 1×

For agents

$ claude mcp add autoscaler \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact