Skip to content

SIG Autoscaling Charter and sigs.yaml updates #2425

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

Merged
merged 2 commits into from
Dec 7, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion sig-autoscaling/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ To understand how this file is generated, see https://git.k8s.io/community/gener

Covers development and maintenance of components for automated scaling in Kubernetes. This includes automated vertical and horizontal pod autoscaling, initial resource estimation, cluster-proportional system component autoscaling, and autoscaling of Kubernetes clusters themselves.

The [charter](charter.md) defines the scope and governance of the Autoscaling Special Interest Group.

## Meetings
* Regular SIG Meeting: [Mondays at 14:00 UTC](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit) (biweekly/triweekly). [Convert to your timezone](http://www.thetimezoneconverter.com/?t=14:00&tz=UTC).
* [Meeting notes and Agenda](https://docs.google.com/document/d/1RvhQAEIrVLHbyNnuaT99-6u9ZUMp7BfkPupT2LAZK7w/edit).
Expand All @@ -20,7 +22,7 @@ Covers development and maintenance of components for automated scaling in Kubern
The Chairs of the SIG run operations and processes governing the SIG.

* Marcin Wielgus (**[@mwielgus](https://github.com/mwielgus)**), Google
* Solly Ross (**[@directxman12](https://github.com/directxman12)**), Red Hat
* Solly Ross (**[@directxman12](https://github.com/directxman12)**), Google

## Contact
* [Slack](https://kubernetes.slack.com/messages/sig-autoscaling)
Expand Down
85 changes: 85 additions & 0 deletions sig-autoscaling/charter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# SIG Autoscaling Charter

This charter adheres to the conventions described in the [Kubernetes Charter README] and uses
the Roles and Organization Management outlined in [sig-governance].

## Scope

Covers development and maintenance of Kubernetes components for automated
scaling in Kubernetes. This includes automated vertical and horizontal
pod autoscaling, initial resource estimation, cluster-proportional system
component autoscaling, and autoscaling of Kubernetes clusters themselves.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently cluster proportional autoscaling is not owned by sig-autoscaling:

  • addon-resizer is maintained by sig-instrumentation (AFAIK it's primarily used for heapster and metrics-server)
  • kube-dns-autoscaler is maintained by sig-networking

Ideally sig-autoscaling should take ownership of this use-case, but we're not there yet.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh, do we not own the addon-resizer? I thought it was under our purview from the pre-sig-instrumentation Heapster days, and I didn't think it got transferred over, since it's an autoscaler.

We probably should own those, at any rate. @kubernetes/sig-instrumentation-misc

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addon-resizer is maintained by sig-instrumentation (AFAIK it's primarily used for heapster and metrics-server)

I was not aware of this, and it's also not in our sig components. I was under the impression that sig-autoscaling own it.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I mean no-one is really doing much work on addon-resizer, but I believe @kawych and @x13n are the ones maintaining it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Every kubernetes piece of code needs to be owned by a SIG. I think it makes sense for us to own it, especially since it doesn't fall under the responsibilities of SIG instrumentation normally. @kawych and @x13n can continue to be the ones to work on it, and we can list them as the owners of the subproject, but it'll fall under the purview of sig autoscaling.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@DirectXMan12’s suggestion sounds good to me.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kubernetes/sig-network-misc the cluster-proportional-autoscaler doesn't seem to be listed under sigs.yaml (unless my searching is failing me). I think it makes some amount of sense for it to be a subproject of sig-autoscaling (no change in ownership necessary, but it should fall under a sig umbrella), so I'd appreciate your opinions.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@DirectXMan12 what you suggested sounds great. Also wanted to point out yet another component that might fall under this same umbrella: cluster-proportional-vertical-autoscaler.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cool, thanks for the heads up. I'll update sigs.yaml with all of those

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this SIG owns an incubator project, unless it was created by SIG members who want it to be within the scope of the SIG...


### In scope

- Autoscaling-related API objects, such as the HorizontalPodAutoscaler and
VerticalPodAutoscaler

- Autoscaling-related tools, such as the cluster autoscaler,
single-component scaling tools (e.g. pod-nanny), and
cluster-proportional scaling tools

- Ensuring API interfaces (the scale subresource) are available and usable
to enable other SIGs to write autoscalable objects, and enable people to
interact with those interfaces.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd argue this goes requires a lot of apimachinery know-how, which is not too closely related to anything else we do in sig. I suspect you're the only one who actually knows how the polymorphic scale client actually works.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, but we're responsible for maintaining the HPA, and the HPA can't work w/o the scale subresource, and the scale subresource's object is part of the autoscaling API group.

@kubernetes/sig-api-machinery-misc any opinions?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general, api-machinery owns mechanisms, specific sigs own specific APIs.

In this case, I'd expect api-machinery to own the apiserver code that enables subresources, and autoscaling to own the in-tree scale subresource implementations, the autoscaling/v1 Scale API types, and custom code in the scale client.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ack, that's more-or-less what I expected


[Link to SIG section in sigs.yaml][sigs.yaml]

#### Code, Binaries and Services

- Components and utilities that take automated action to scale a component
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are all kind of vague, pointers to actual repos/folders?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was under the impression that concrete folders is what sigs.yaml was supposed to be for, and that this was more of "conceptually, what do you cover". That being said, I can certainly provide some examples here, or actually links if my impression was incorrection.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed to mention the actual subproject names

on the cluster (e.g. the horizontal-pod-autoscaler or addon-resizer
subproject)

- Components and utilities that take automated action to scale the cluster
itself (e.g. the cluster-autoscaler subproject)

- Special parts of client-go for interacting with with the scaling
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Definitely need a pointer into the project here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done -- mentioned the specific subproject. Actual folder definitions are in sigs.yaml

interfaces used by the HPA (e.g. the scale-client subproject)

#### Cross-cutting and Externally Facing Processes

- Reviewing implementations of the scale subresource to ensure that
autoscaling behaves properly

- Coordinating with SIG Instrumentation to ensure that metrics APIs are
suitable for autoscaling on.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add coordinating with sig-scheduling to ensure new scheduling features are compatible with cluster autoscaling?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ack


- Coordinating with SIG Scheduling to make sure scheduling decisions can
interact well with the cluster autoscaler

- Coordinating with SIG Cluster Lifecycle on integration between the
cluster autoscaler and cluster API

- Coordinating with SIG Node around Kubelet requirements for vertical
scaling of pods

### Out of scope

- Testing general cluster performance at scale (this falls under the
purview of [SIG Scalability]).

- Owning metrics APIs (this falls under the purview of [SIG
Instrumentation]). SIG Autoscaling should collaborate with [SIG
Instrumentation] to ensure that metrics APIs are suitable for using in
autoscaling.

## Roles and Organization Management

This sig follows adheres to the Roles and Organization Management outlined in [sig-governance]
and opts-in to updates and modifications to [sig-governance].

### Deviations from [sig-governance]

- SIG Autoscaling does not have chairs as a separate entity from tech
leads. The tech leads have the responsibility of chairs.

### Subproject Creation

SIG Technical Leads

[sig-governance]: https://github.com/kubernetes/community/blob/master/committee-steering/governance/sig-governance.md
[sigs.yaml]: https://github.com/kubernetes/community/blob/master/sigs.yaml#L305
[Kubernetes Charter README]: https://github.com/kubernetes/community/blob/master/committee-steering/governance/README.md
[SIG Scalability]: https://github.com/kubernetes/community/blob/master/sig-scalability
[SIG Instrumentation]: https://github.com/kubernetes/community/blob/master/sig-instrumentation
2 changes: 1 addition & 1 deletion sig-list.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ When the need arises, a [new SIG can be created](sig-creation-procedure.md)
|[Apps](sig-apps/README.md)|apps|* [Matt Farina](https://github.com/mattfarina), Samsung SDS<br>* [Adnan Abdulhussein](https://github.com/prydonius), Bitnami<br>* [Kenneth Owens](https://github.com/kow3ns), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-apps)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-apps)|* Regular SIG Meeting: [Mondays at 9:00 PT (Pacific Time) (weekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Architecture](sig-architecture/README.md)|architecture|* [Brian Grant](https://github.com/bgrant0607), Google<br>* [Jaice Singer DuMars](https://github.com/jdumars), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-architecture)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-architecture)|* Regular SIG Meeting: [Thursdays at 19:00 UTC (weekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Auth](sig-auth/README.md)|auth|* [Mike Danese](https://github.com/mikedanese), Google<br>* [Mo Khan](https://github.com/enj), Red Hat<br>* [Tim Allclair](https://github.com/tallclair), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-auth)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-auth)|* Regular SIG Meeting: [Wednesdays at 11:00 PT (Pacific Time) (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Autoscaling](sig-autoscaling/README.md)|autoscaling|* [Marcin Wielgus](https://github.com/mwielgus), Google<br>* [Solly Ross](https://github.com/directxman12), Red Hat<br>|* [Slack](https://kubernetes.slack.com/messages/sig-autoscaling)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-autoscaling)|* Regular SIG Meeting: [Mondays at 14:00 UTC (biweekly/triweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Autoscaling](sig-autoscaling/README.md)|autoscaling|* [Marcin Wielgus](https://github.com/mwielgus), Google<br>* [Solly Ross](https://github.com/directxman12), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-autoscaling)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-autoscaling)|* Regular SIG Meeting: [Mondays at 14:00 UTC (biweekly/triweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[AWS](sig-aws/README.md)|aws|* [Justin Santa Barbara](https://github.com/justinsb)<br>* [Kris Nova](https://github.com/kris-nova), Heptio<br>* [Nishi Davidson](https://github.com/d-nishi), AWS<br>|* [Slack](https://kubernetes.slack.com/messages/sig-aws)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-aws)|* Regular SIG Meeting: [Fridays at 9:00 PT (Pacific Time) (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Azure](sig-azure/README.md)|azure|* [Stephen Augustus](https://github.com/justaugustus), Red Hat<br>* [Dave Strebel](https://github.com/dstrebel), Microsoft<br>|* [Slack](https://kubernetes.slack.com/messages/sig-azure)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-azure)|* Regular SIG Meeting: [Wednesdays at 16:00 UTC (biweekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
|[Big Data](sig-big-data/README.md)|big-data|* [Anirudh Ramanathan](https://github.com/foxish), Rockset<br>* [Erik Erlandson](https://github.com/erikerlandson), Red Hat<br>* [Yinan Li](https://github.com/liyinan926), Google<br>|* [Slack](https://kubernetes.slack.com/messages/sig-big-data)<br>* [Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-big-data)|* Regular SIG Meeting: [Wednesdays at 17:00 UTC (weekly)](https://docs.google.com/document/d/1FQx0BPlkkl1Bn0c9ocVBxYIKojpmrS1CFP5h0DI68AE/edit)<br>
Expand Down
3 changes: 2 additions & 1 deletion sigs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -425,6 +425,7 @@ sigs:
Kubernetes. This includes automated vertical and horizontal pod
autoscaling, initial resource estimation, cluster-proportional system
component autoscaling, and autoscaling of Kubernetes clusters themselves.
charter_link: charter.md
label: autoscaling
leadership:
chairs:
Expand All @@ -433,7 +434,7 @@ sigs:
company: Google
- name: Solly Ross
github: directxman12
company: Red Hat
company: Google
meetings:
- description: Regular SIG Meeting
day: Monday
Expand Down