Commit Graph

31911 Commits

Author SHA1 Message Date
k8s-merge-robot
b50e66c66e Merge pull request #28340 from ZTE-PaaS/zhangke-patch-007
Automatic merge from submit-queue

controller-manager support number of garbage collector workers to be configurable

The number of garbage collector workers of controller-manager is a fixed value 5 now, make it configurable should more properly
2016-07-13 12:54:15 -07:00
k8s-merge-robot
ec99d90b0f Merge pull request #28905 from mtaufen/codec_factory-fixup
Automatic merge from submit-queue

Fix typo in pkg/runtime/serializer/codec_factory.go
2016-07-13 12:17:24 -07:00
k8s-merge-robot
3dbc4db681 Merge pull request #28891 from wojtek-t/avoid_generator_annoying_logs
Automatic merge from submit-queue

Unify logging in generators and avoid annoying logs.

@thockin regarding our discussing in the morning

@lavalamp - FYI
2016-07-13 12:17:19 -07:00
Michael Taufen
d3f3bedbb7 Fix typo in pkg/runtime/serializer/codec_factory.go 2016-07-13 10:41:02 -07:00
k8s-merge-robot
2906a35c1a Merge pull request #28745 from justinsb/fix_28644
Automatic merge from submit-queue

kube-up: install new Docker pre-requisite (libltdl7) when not in image

Docker now has a dependency on libltdl7; we have to specify it manually
if we are installing docker using dpkg (vs using apt-get or similar,
which would pull it in automatically)

Fixes #28644
2016-07-13 10:17:15 -07:00
k8s-merge-robot
7823c5779d Merge pull request #28893 from wojtek-t/optimize_priorities_4
Automatic merge from submit-queue

More optimizations to scheduler throughput

Ref #28590

@davidopp @gmarek
2016-07-13 07:23:02 -07:00
k8s-merge-robot
7e6a856078 Merge pull request #28843 from gmarek/limiterPerZone
Automatic merge from submit-queue

Separate rate limiters for Pod evictions for different zones in NodeController

Ref. #28832

NodeController needs to be able to separately adjust rate-limits for eviction for different zones. This PR splits rate limiters.

cc @davidopp
2016-07-13 06:42:11 -07:00
k8s-merge-robot
af1891ca03 Merge pull request #28531 from dims/fix-issues-28314
Automatic merge from submit-queue

Add custom-columns and custom-template-file to --help text
2016-07-13 06:09:25 -07:00
Wojciech Tyczynski
16bf8c4008 Unify logging in generators and avoid annoying logs. 2016-07-13 15:06:44 +02:00
gmarek
5677a9845e Split NodeController rate limiters between zones 2016-07-13 14:09:19 +02:00
Wojciech Tyczynski
c929d95884 Cache Allocatable Resources 2016-07-13 12:57:18 +02:00
Wojciech Tyczynski
58c201834c Unify resources 2016-07-13 12:57:07 +02:00
k8s-merge-robot
89be039352 Merge pull request #28836 from wojtek-t/optimize_priorities_3
Automatic merge from submit-queue

Few more optimizations for scheduler

Ref #28590

@davidopp
2016-07-13 03:38:36 -07:00
k8s-merge-robot
6035d88881 Merge pull request #27277 from wojtek-t/cacher_index
Automatic merge from submit-queue

Implement first version of indexing in cacher

This PR adds a first version of indexing in cacher.

It has a really significant impact on performance - __in empty 2000-node cluster, apiserver cpu usage drops by ~75%.__

Not for 1.3, but we need this soon after 1.3 is done.

@lavalamp @mqliang @davidopp @gmarek @kubernetes/sig-scalability
2016-07-13 02:45:23 -07:00
Wojciech Tyczynski
ea1d797f98 Avoid computing ports multiple times 2016-07-13 11:02:26 +02:00
Wojciech Tyczynski
ae6b66207a Optimize selector spreading 2016-07-13 11:02:26 +02:00
Wojciech Tyczynski
b9d13c5dbd Avoid computing pod resources multiple times 2016-07-13 11:01:53 +02:00
Wojciech Tyczynski
1d9bc58328 Extend Filter interface with Trigger() and use it for pods and nodes 2016-07-13 08:45:18 +02:00
Wojciech Tyczynski
7f7ef0879f Change filter to interface in storage.Interface 2016-07-13 08:44:22 +02:00
k8s-merge-robot
eecbfb1a28 Merge pull request #25978 from thockin/dont-checkin-generated-code
Automatic merge from submit-queue

Don't check in generated code, part 1

This PR is a first step towards not commiting generated files, which make up a huge portion of "needs rebase" errors.  It only handles deep-copy generation and conversion generation.  More will come later, if the model passes muster.

This is a mega-PR.  Sorry.  It was necessary to do 2 generators to convince myself it worked, and the evolution of the techniques warranted multiple commits.  I have tried to keep the commits self-contained and reviewable.  

A quick summary of the major points in the series:

- Start by making everything call `make` rather than the various hack/* scripts.  The hack scripts still exist, but give a warning to use make instead, and then they do what they did before, so it should be compatible.

- Move deepcopy generation into the Makefile, so it is done automatically

- Move conversion generation into the Makefile, so it is done automatically

- Optimize makefile for faster rebuilds

- Make CI pass


Net result: if you run "make", it will rebuild any deepcopy or conversion files it needs.  It takes a few seconds to figure out there's nothing to do, but it should be a net savings.  There is more to do, and we can follow this up with other generators being converted, some of which are MUCH slower than these 2.


@wojtek-t @lavalamp @smarterclayton @bgrant0607 @mikedanese @madhusudancs
2016-07-12 23:29:46 -07:00
k8s-merge-robot
ec47f5c926 Merge pull request #28874 from kevin-wangzefeng/fix-interpod-antiaffinity
Automatic merge from submit-queue

check PodAntiAffinity even when pod has no AntiAffinity constraints

Hard inter-pod anti-affinity is designed to be symmetric, in other word, the algorithm should check if AntiAffinity constraints from both the pod to be scheduled and pods already running are satisfied during scheduling.

Current implementation skipped the checking when pod has no AntiAffinity constraints, ignored the anti-affinity constraints of existing pods , which is not correct. This PR is to fix it.
2016-07-12 22:33:57 -07:00
Ke Zhang
d74010211a controller-manager support number of garbage collector workers to be configurable 2016-07-13 13:13:20 +08:00
Tim Hockin
fef16dd541 Make update-generated-runtime work 2016-07-12 21:52:54 -07:00
Tim Hockin
0fc46afda6 Move make logic for generated files into a helper
This makes it a little easier to look at the main Makefile without getting
overwhelmed by code-generation stuff.
2016-07-12 21:52:54 -07:00
Tim Hockin
6ee6cc843a Add rules for all cmd/* subdirs
This is sort of gravy.  There's no good way to do this for arbitrary
directories because of the way Make works (we'd have to declare them all
PHONY).

If people hate using make directly we could wrap it in another level of
indirection, but I didn't yet.  E.g.

  build/make-all.sh -> make -> make-rules/all.sh -> go install

This would insulate people from 'make' atthe cost of custom build tools.  I
prefer being able to say 'make' and having it just work.
2016-07-12 21:52:54 -07:00
Tim Hockin
f0ef726813 Make debugging Makefile a bit easier 2016-07-12 21:52:54 -07:00
Tim Hockin
6e516e1c8a make Jenkins pass 2016-07-12 21:52:54 -07:00
Tim Hockin
23bbf477f8 Document test procedures for Makefile 2016-07-12 21:52:54 -07:00
Tim Hockin
08546e5016 Run code-gen in a batch
This makes code generation MUCH MUCH faster.
2016-07-12 21:52:54 -07:00
Tim Hockin
9dd337d119 s/deep_copy/deepcopy/
Just a naming nit that was too hard to fixup-and-rebase.
2016-07-12 21:52:54 -07:00
Tim Hockin
1bd3918c15 Overhaul deps on generator tools
This forces a regeneration if the generation tools are rebuilt.

Also clean up Makefile a bit.
2016-07-12 21:52:54 -07:00
Tim Hockin
a9f3ccdaa4 Fix Makefile deps to rebuild less often
This should only rebuild when ACTUALLY needed.
2016-07-12 21:52:54 -07:00
Tim Hockin
9613e15801 Make releases work 2016-07-12 21:52:54 -07:00
Tim Hockin
7e5b59b08c Include almost the whole tree in the build img 2016-07-12 21:52:54 -07:00
Tim Hockin
2a7b2fd37e Tighten up Makefile
Default SHELL and some other variables for max correctness.
2016-07-12 21:52:54 -07:00
Tim Hockin
9eb42ff108 Don't check in generated conversion code
Conversion is now generated by Makefile, on demand, rather than all at once.
Manually verified no net change in generated code.
2016-07-12 21:52:54 -07:00
Tim Hockin
db42d52be4 Add a clean_generated make rule
Easier to clean up the mess when needed.
2016-07-12 21:52:54 -07:00
Tim Hockin
58441e8775 Don't check in generated deep-copy code
This mostly takes the previously checked in files and removes them, and moves
the generation to be on-demand instead of manual.  Manually verified no change
in generated output.
2016-07-12 21:52:54 -07:00
Tim Hockin
881e21c2d5 Link _output/bin/ to real binaries for this arch
This makes followup commits easier wrt finding binaries during build.
2016-07-12 21:52:00 -07:00
Tim Hockin
faeef5c4ae Use make as the main build tool
This allows us to start building real dependencies into Makefile.

Leave old hack/* scripts in place but advise to use 'make'.  There are a few
rules that call things like 'go run' or 'build/*' that I left as-is for now.
2016-07-12 21:52:00 -07:00
k8s-merge-robot
708e753c72 Merge pull request #28679 from sttts/sttts-deepcopy-pointer-in
Automatic merge from submit-queue

Deepcopy: avoid struct copies and reflection Call

- make signature of generated deepcopy methods symmetric with `in *type, out *type`, avoiding copies of big structs on the stack
- switch to `in interface{}, out interface{}` which allows us to call them with without `reflect.Call`

The first change reduces runtime of BenchmarkPodCopy-4 from `> 3500ns` to around `2300ns`.

The second change reduces runtime to around `1900ns`.
2016-07-12 21:45:43 -07:00
k8s-merge-robot
47d06dd9c2 Merge pull request #28606 from dims/fix-issues-19636
Automatic merge from submit-queue

Fix kubectl run to print object on dry run

Originally Authored By tnachen in PR:
https://github.com/kubernetes/kubernetes/pull/25842

Fixes #19636
2016-07-12 21:05:58 -07:00
kevin-wangzefeng
ff6280fa5b update inter-pod affinity predicates, check PodAntiAffinity even when pod has no AntiAffinity constraints 2016-07-13 03:55:01 +00:00
k8s-merge-robot
23f0edb8b0 Merge pull request #27713 from kargakis/wait-for-synced-rs-in-recreate
Automatic merge from submit-queue

controller: wait for synced old replica sets on Recreate

Partially fixes https://github.com/kubernetes/kubernetes/issues/27362

Any other work on it should be handled in the replica set level (and/or kubelet if it's required)

@kubernetes/deployment PTAL
2016-07-12 20:30:12 -07:00
k8s-merge-robot
92630e1a5d Merge pull request #28677 from asalkeld/devel-e2e-doc
Automatic merge from submit-queue

Fix some errors in the e2e doc and make it more consistent


- "--tests" is not a valid argument
- use --ginko-skip to exclude (not focus)
- add "--check_node_count=false" to test against local cluster
- always use "--" for long args (there was a mix of "-" and "--" and it was a bit confusing)
2016-07-12 19:50:28 -07:00
k8s-merge-robot
aa9452d6cc Merge pull request #28645 from timstclair/dev
Automatic merge from submit-queue

Add development doc with go tips & tools

Encourage knowledge sharing among Kubernetes developers!
2016-07-12 19:06:18 -07:00
k8s-merge-robot
0cd93cfc53 Merge pull request #28708 from euank/node-e2e-image-conf
Automatic merge from submit-queue

node_e2e: configure gce images via config file

This file provides the abiliy to specify image project on a per-image
basis and is more extensible for future changes.

For backwards compatibility and local development convenience, the
existing flags are kept and should work.

The eventual goal is to be able to source some images, such as the CoreOS one (and possibly containervm one) from their upstream projects and do all new configuration changes via a cloud-init key added to the image config.

This PR is a first step there. A following PR will add a config key of `cloud-init` or `user-data` and migrate the CoreOS e2e to use that.

This motivation is driven by the fact that currently the changes needed for the CoreOS image can all be done quickly in cloud-init and this will make it much easier to update the image and ensure that changes are applied consistently.

/cc @timstclair @vishh @yifan-gu @pwittrock
2016-07-12 19:06:14 -07:00
k8s-merge-robot
0efd03810c Merge pull request #28801 from janetkuo/kubectl-run-silent
Automatic merge from submit-queue

Add --quiet to hide the 'waiting for pods to be running' message in kubectl run

Ref #28695  

@kubernetes/kubectl 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-07-12 16:37:22 -07:00
k8s-merge-robot
f2303edc36 Merge pull request #28751 from Random-Liu/use-patch-to-set-node-condition
Automatic merge from submit-queue

Change route controller to use patch to set node condition.

Change the route controller to use `PatchStatus` function in `NodeExpansion` to update node condition.
@caesarxuchao 

/cc @wojtek-t 


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-07-12 16:03:35 -07:00
k8s-merge-robot
5590553811 Merge pull request #28304 from ericchiang/fix-rbac-non-resource-url-rule-evaluation
Automatic merge from submit-queue

rbac authorizer: cleanups to rule evaluation for non-resource URLs

An few oversights in the RBAC authorizer. Fixes #28291 and permits non-resource URLs to use stars in the path. E.g. ("/apis/*").

cc @liggitt @kubernetes/sig-auth
2016-07-12 15:30:50 -07:00