autoscaler

module
Version: v0.0.0-...-386b7fa Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2019 License: Apache-2.0

README

Kubernetes Autoscaler

Build Status 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. Works with GCP, AWS and Azure. Version 1.0 (GA) was released with kubernetes 1.8.

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.

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
  2. 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.

Directories

Path Synopsis
nanny
Package nanny implements logic to poll the k8s apiserver for cluster status, and update a deployment based on that status.
Package nanny implements logic to poll the k8s apiserver for cluster status, and update a deployment based on that status.
_override/github.com/Azure/azure-sdk-for-go/services/containerservice/mgmt/2018-03-31/containerservice
Package containerservice implements the Azure ARM Containerservice service API version .
Package containerservice implements the Azure ARM Containerservice service API version .
_override/github.com/Azure/go-autorest/autorest
Package autorest implements an HTTP request pipeline suitable for use across multiple go-routines and provides the shared routines relied on by AutoRest (see https://github.com/Azure/autorest/) generated Go code.
Package autorest implements an HTTP request pipeline suitable for use across multiple go-routines and provides the shared routines relied on by AutoRest (see https://github.com/Azure/autorest/) generated Go code.
_override/github.com/Azure/go-autorest/autorest/azure
Package azure provides Azure-specific implementations used with AutoRest.
Package azure provides Azure-specific implementations used with AutoRest.
_override/github.com/Azure/go-autorest/autorest/date
Package date provides time.Time derivatives that conform to the Swagger.io (https://swagger.io/) defined date formats: Date and DateTime.
Package date provides time.Time derivatives that conform to the Swagger.io (https://swagger.io/) defined date formats: Date and DateTime.
_override/github.com/Azure/go-autorest/autorest/to
Package to provides helpers to ease working with pointer values of marshalled structures.
Package to provides helpers to ease working with pointer values of marshalled structures.
_override/github.com/Azure/go-autorest/autorest/validation
Package validation provides methods for validating parameter value using reflection.
Package validation provides methods for validating parameter value using reflection.
cloudprovider/baiducloud/baiducloud-sdk-go/bce
Package bce defined a set of core data structure and functions for Baidu Cloud API.
Package bce defined a set of core data structure and functions for Baidu Cloud API.
cloudprovider/baiducloud/baiducloud-sdk-go/util
Package util implements a set of util functions.
Package util implements a set of util functions.
cloudprovider/magnum/gophercloud
Package gophercloud provides a multi-vendor interface to OpenStack-compatible clouds.
Package gophercloud provides a multi-vendor interface to OpenStack-compatible clouds.
cloudprovider/magnum/gophercloud/openstack
Package openstack contains resources for the individual OpenStack projects supported in Gophercloud.
Package openstack contains resources for the individual OpenStack projects supported in Gophercloud.
cloudprovider/magnum/gophercloud/openstack/blockstorage/extensions/volumeactions
Package volumeactions provides information and interaction with volumes in the OpenStack Block Storage service.
Package volumeactions provides information and interaction with volumes in the OpenStack Block Storage service.
cloudprovider/magnum/gophercloud/openstack/blockstorage/v1/volumes
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
cloudprovider/magnum/gophercloud/openstack/blockstorage/v2/volumes
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
cloudprovider/magnum/gophercloud/openstack/blockstorage/v3/volumes
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
cloudprovider/magnum/gophercloud/openstack/common/extensions
Package extensions provides information and interaction with the different extensions available for an OpenStack service.
Package extensions provides information and interaction with the different extensions available for an OpenStack service.
cloudprovider/magnum/gophercloud/openstack/compute/v2/extensions/attachinterfaces
Package attachinterfaces provides the ability to retrieve and manage network interfaces through Nova.
Package attachinterfaces provides the ability to retrieve and manage network interfaces through Nova.
cloudprovider/magnum/gophercloud/openstack/compute/v2/extensions/volumeattach
Package volumeattach provides the ability to attach and detach volumes from servers.
Package volumeattach provides the ability to attach and detach volumes from servers.
cloudprovider/magnum/gophercloud/openstack/compute/v2/flavors
Package flavors provides information and interaction with the flavor API in the OpenStack Compute service.
Package flavors provides information and interaction with the flavor API in the OpenStack Compute service.
cloudprovider/magnum/gophercloud/openstack/compute/v2/images
Package images provides information and interaction with the images through the OpenStack Compute service.
Package images provides information and interaction with the images through the OpenStack Compute service.
cloudprovider/magnum/gophercloud/openstack/compute/v2/servers
Package servers provides information and interaction with the server API resource in the OpenStack Compute service.
Package servers provides information and interaction with the server API resource in the OpenStack Compute service.
cloudprovider/magnum/gophercloud/openstack/containerinfra/v1/clusters
Package clusters contains functionality for working with Magnum Cluster resources.
Package clusters contains functionality for working with Magnum Cluster resources.
cloudprovider/magnum/gophercloud/openstack/identity/v2/tenants
Package tenants provides information and interaction with the tenants API resource for the OpenStack Identity service.
Package tenants provides information and interaction with the tenants API resource for the OpenStack Identity service.
cloudprovider/magnum/gophercloud/openstack/identity/v2/tokens
Package tokens provides information and interaction with the token API resource for the OpenStack Identity service.
Package tokens provides information and interaction with the token API resource for the OpenStack Identity service.
cloudprovider/magnum/gophercloud/openstack/identity/v3/extensions/trusts
Package trusts enables management of OpenStack Identity Trusts.
Package trusts enables management of OpenStack Identity Trusts.
cloudprovider/magnum/gophercloud/openstack/identity/v3/tokens
Package tokens provides information and interaction with the token API resource for the OpenStack Identity service.
Package tokens provides information and interaction with the token API resource for the OpenStack Identity service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/external
Package external provides information and interaction with the external extension for the OpenStack Networking service.
Package external provides information and interaction with the external extension for the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/layer3/floatingips
package floatingips enables management and retrieval of Floating IPs from the OpenStack Networking service.
package floatingips enables management and retrieval of Floating IPs from the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/layer3/routers
Package routers enables management and retrieval of Routers from the OpenStack Networking service.
Package routers enables management and retrieval of Routers from the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/lbaas_v2/l7policies
Package l7policies provides information and interaction with L7Policies and Rules of the LBaaS v2 extension for the OpenStack Networking service.
Package l7policies provides information and interaction with L7Policies and Rules of the LBaaS v2 extension for the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/lbaas_v2/listeners
Package listeners provides information and interaction with Listeners of the LBaaS v2 extension for the OpenStack Networking service.
Package listeners provides information and interaction with Listeners of the LBaaS v2 extension for the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/lbaas_v2/loadbalancers
Package loadbalancers provides information and interaction with Load Balancers of the LBaaS v2 extension for the OpenStack Networking service.
Package loadbalancers provides information and interaction with Load Balancers of the LBaaS v2 extension for the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/lbaas_v2/monitors
Package monitors provides information and interaction with Monitors of the LBaaS v2 extension for the OpenStack Networking service.
Package monitors provides information and interaction with Monitors of the LBaaS v2 extension for the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/lbaas_v2/pools
Package pools provides information and interaction with Pools and Members of the LBaaS v2 extension for the OpenStack Networking service.
Package pools provides information and interaction with Pools and Members of the LBaaS v2 extension for the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/security/groups
Package groups provides information and interaction with Security Groups for the OpenStack Networking service.
Package groups provides information and interaction with Security Groups for the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/extensions/security/rules
Package rules provides information and interaction with Security Group Rules for the OpenStack Networking service.
Package rules provides information and interaction with Security Group Rules for the OpenStack Networking service.
cloudprovider/magnum/gophercloud/openstack/networking/v2/networks
Package networks contains functionality for working with Neutron network resources.
Package networks contains functionality for working with Neutron network resources.
cloudprovider/magnum/gophercloud/openstack/networking/v2/ports
Package ports contains functionality for working with Neutron port resources.
Package ports contains functionality for working with Neutron port resources.
cloudprovider/magnum/gophercloud/openstack/orchestration/v1/stackresources
Package stackresources provides operations for working with stack resources.
Package stackresources provides operations for working with stack resources.
cloudprovider/magnum/gophercloud/openstack/orchestration/v1/stacks
Package stacks provides operation for working with Heat stacks.
Package stacks provides operation for working with Heat stacks.
cloudprovider/magnum/gophercloud/pagination
Package pagination contains utilities and convenience structs that implement common pagination idioms within OpenStack APIs.
Package pagination contains utilities and convenience structs that implement common pagination idioms within OpenStack APIs.
cloudprovider/magnum/gophercloud/testhelper
Package testhelper container methods that are useful for writing unit tests.
Package testhelper container methods that are useful for writing unit tests.
vertical-pod-autoscaler
pkg/apis/autoscaling.k8s.io/v1beta1
Package v1beta1 contains definitions of Vertical Pod Autoscaler related objects.
Package v1beta1 contains definitions of Vertical Pod Autoscaler related objects.
pkg/apis/autoscaling.k8s.io/v1beta2
Package v1beta2 contains definitions of Vertical Pod Autoscaler related objects.
Package v1beta2 contains definitions of Vertical Pod Autoscaler related objects.
pkg/apis/poc.autoscaling.k8s.io/v1alpha1
Package v1alpha1 contains definitions of Vertical Pod Autoscaler related objects.
Package v1alpha1 contains definitions of Vertical Pod Autoscaler related objects.
pkg/client/clientset/versioned
This package has the automatically generated clientset.
This package has the automatically generated clientset.
pkg/client/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
pkg/client/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
pkg/client/clientset/versioned/typed/autoscaling.k8s.io/v1beta1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
pkg/client/clientset/versioned/typed/autoscaling.k8s.io/v1beta1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
pkg/client/clientset/versioned/typed/autoscaling.k8s.io/v1beta2
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
pkg/client/clientset/versioned/typed/autoscaling.k8s.io/v1beta2/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
pkg/client/clientset/versioned/typed/poc.autoscaling.k8s.io/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
pkg/client/clientset/versioned/typed/poc.autoscaling.k8s.io/v1alpha1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
pkg/utils/metrics
Package metrics - common code for metrics of all 3 VPA components
Package metrics - common code for metrics of all 3 VPA components
pkg/utils/metrics/admission
Package admission (aka metrics_admission) - code for metrics of VPA Admission Controller plugin
Package admission (aka metrics_admission) - code for metrics of VPA Admission Controller plugin
pkg/utils/metrics/recommender
Package recommender (aka metrics_recommender) - code for metrics of VPA Recommender
Package recommender (aka metrics_recommender) - code for metrics of VPA Recommender
pkg/utils/metrics/updater
Package updater (aka metrics_updater) - code for metrics of VPA Updater
Package updater (aka metrics_updater) - code for metrics of VPA Updater

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL