Commit Graph

29125 Commits

Author SHA1 Message Date
k8s-merge-robot
bd8033e2b0 Merge pull request #25864 from jsafrane/devel/pv-fix-log
Automatic merge from submit-queue

volume controller: Fix method name in a log message

It's deleteVolume, not deleteClaim.

@kubernetes/sig-storage
2016-05-20 03:53:22 -07:00
k8s-merge-robot
e27f20780d Merge pull request #25679 from quinton-hoole/2016-05-16-update-googleapi-package
Automatic merge from submit-queue

Update vendor package google.golang.org/api/googleapi.
2016-05-20 03:53:18 -07:00
k8s-merge-robot
9e23c551ba Merge pull request #24051 from aveshagarwal/master-downward-api-resources-limits-requests
Automatic merge from submit-queue

Downward API proposal for resources (cpu, memory) limits and requests

Proposal to address #9473
This PR proposes three approaches to expose values of resource limits and requests as env vars and volumes.This proposal has details about merits and demerits of each approach, and I am looking for community feedback regarding which one (or may more than one) we would like to go with. Also would like to know if there is any other approach.

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/24051)
<!-- Reviewable:end -->
2016-05-20 03:00:00 -07:00
Filip Grzadkowski
97d5a733d8 Merge pull request #25954 from wojtek-t/max_infligh_limit_logs
Log requests returning TooManyRequests error
2016-05-20 11:28:33 +02:00
Filip Grzadkowski
31c1825856 Merge pull request #25753 from dlorenc/nodecount
Add a flag that lets e2e tests be run against single-node clusters.
2016-05-20 10:30:12 +02:00
Filip Grzadkowski
782de9d024 Merge pull request #25732 from 249043822/249043822-patch-1
Update fake.go Unlock optimize
2016-05-20 10:29:26 +02:00
Filip Grzadkowski
2f2b7c8c97 Merge pull request #25734 from jszczepkowski/kac-test
Added enforcing of setting nodes numbers for cluster autoscaler.
2016-05-20 10:28:56 +02:00
Filip Grzadkowski
d1627111b3 Merge pull request #25767 from johscheuer/fix-hyperkube-makefile-2
Hyperkuber Makefile add support for OSX and Linux
2016-05-20 10:28:06 +02:00
Filip Grzadkowski
afea2e2f95 Merge pull request #25780 from andyzheng0831/test-case
e2e: simple pod HTTP proxy test should use amd64 kubectl for GCI
2016-05-20 10:27:17 +02:00
Filip Grzadkowski
d3522dd8d2 Merge pull request #24128 from smarterclayton/dns_test_change
Allow cluster DNS e2e verification to be overriden
2016-05-20 10:26:13 +02:00
Filip Grzadkowski
c4e239b314 Merge pull request #25918 from smarterclayton/init_annotation_mutation
Conversions were mutating the internal object
2016-05-20 10:25:36 +02:00
Wojciech Tyczynski
f3c70ffeeb Log requests returning TooManyRequests error 2016-05-20 10:18:05 +02:00
Filip Grzadkowski
ab10484330 Merge pull request #25741 from fgrzadkowski/unschedulable_pod
Stop setting Message when updating PodScheduled condition
2016-05-20 10:02:13 +02:00
Filip Grzadkowski
0bc2f47ac8 Merge pull request #25951 from kubernetes/revert-25843-container-v1-3-v20160517
Revert "Bump GCE ContainerVM to container-v1-3-v20160517 (Docker 1.11.1)"
2016-05-20 09:05:58 +02:00
Wojciech Tyczynski
b294979d00 Revert "Bump GCE ContainerVM to container-v1-3-v20160517 (Docker 1.11.1)" 2016-05-20 09:02:11 +02:00
Daniel Smith
4a78db6137 Merge pull request #25947 from lavalamp/gctest
emergency gc test fix--be extra safe
2016-05-19 22:07:40 -07:00
Daniel Smith
785f1c31a6 emergency gc test fix--be extra safe 2016-05-19 22:04:50 -07:00
Daniel Smith
e8ff608901 Merge pull request #25943 from lavalamp/gctest
emergency gc test fix
2016-05-19 21:45:45 -07:00
Daniel Smith
8e7b7a2f9a emergency gc test fix 2016-05-19 21:44:31 -07:00
Avesh Agarwal
0f3a8bd061 Downward API proposal for resources (cpu, memory) limits and requests 2016-05-19 22:57:24 -04:00
k8s-merge-robot
505fb85726 Merge pull request #25920 from wonderfly/use_base_image
Automatic merge from submit-queue

Jenkins: start using base images for Trusty tests

@spxtr Can you review this XS change?

cc/ @kubernetes/goog-image
2016-05-19 17:13:27 -07:00
k8s-merge-robot
53b5b41abb Merge pull request #17688 from derekwaynecarr/systemd_nodespec
Automatic merge from submit-queue

systemd node spec proposal

The following outlines changes that I want to make to the ```kubelet``` in order to better integrate with ```systemd``` systems, and to better isolate containers in their own ```cgroup``` based on the qos tier.

I think this is a precursor to getting more intelligent low compute resource eviction.

/cc @smarterclayton @ncdc @pmorie @dchen1107 @vishh @bgrant0607

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/17688)
<!-- Reviewable:end -->
2016-05-19 17:13:21 -07:00
Daniel Smith
1a64ae88b7 Merge pull request #25843 from zmerlynn/container-v1-3-v20160517
Bump GCE ContainerVM to container-v1-3-v20160517 (Docker 1.11.1)
2016-05-19 16:57:13 -07:00
Daniel Smith
5448400b1c Merge pull request #25243 from smarterclayton/explore_quantity
Provide an int64 version of Quantity that is much faster
2016-05-19 16:56:48 -07:00
Daniel Wang
967b869c67 Jenkins: start using base images for Trusty tests 2016-05-19 15:23:30 -07:00
Clayton Coleman
997d55d796
Conversions were mutating the internal object
Internal objects can be shared, it is not allowed to mutate an internal
object in conversion.
2016-05-19 18:01:35 -04:00
k8s-merge-robot
1cce156597 Merge pull request #24801 from thockin/validation_pt8-4
Automatic merge from submit-queue

Make DNS validators return error strings

Part of the larger validation PR, broken out for easier review and merge.  Builds on previous PRs in the series.
2016-05-19 14:49:00 -07:00
k8s-merge-robot
ef952efb82 Merge pull request #25800 from ingvagabund/mounttest-use-stats-instead-of-lstat-to-read-symlinks
Automatic merge from submit-queue

gcr.io/google_containers/mounttest: use Stat instead of Lstat

The current ``mt.go`` implementation use ``os.Lstat`` instead of ``os.Stat`` which does not read symlinks. Since implementation of ``AtomicWriter`` (which relies on existence of symlinks), the updated implementation of secret volume using the ``AtomicWriter`` can not be tested for secret file permission. Replacing ``Lstat`` with ``Stat`` allows to read symlinks and return permissions of target file. The change affects ``--file_perm`` and ``--file_mode`` options only.

``mounttest`` image is currently used by:

##### downwardapi_volume.go
- e2e: Downward API volume
- version: 0.6
- args: --file_content, --break_on_expected_content, --retry_time, --file_content_in_loop

##### empty_dir.go
- e2e: EmptyDir volumes
- version: 0.5
- args: --file_perm, --file_perm, ...

##### host_path.go
- e2e: hostPath
- version: 0.6
- args: --file_mode, ...

##### configmap.go
- e2e: ConfigMap
- version: 0.6
- args: --file_content, --break_on_expected_content, --retry_time, --file_content_in_loop

##### service_accounts.go
- e2e: ServiceAccounts
- version: 0.2
- args: --file_content

Some of the e2e tests use at least one of the affected options. Locally, I have updated all version of mounttest images to 0.7. All e2e tests pass with the new image.
2016-05-19 13:15:24 -07:00
Tim Hockin
54a3efb364 Make IsDNS952Label return error strings 2016-05-19 08:57:49 -07:00
Tim Hockin
5862a60ae7 Make IsDNS1123Subdomain return error strings 2016-05-19 08:57:49 -07:00
Tim Hockin
77eff06a53 Make IsDNS1123Label return error strings 2016-05-19 08:57:49 -07:00
Clayton Coleman
2c9b83f291 Disable ppc64le for now 2016-05-19 10:19:35 -04:00
Wojciech Tyczynski
9784dff94e Merge pull request #25871 from smarterclayton/retry_on_error
Fix the Retry-After code path to work for clients, and send correct bodies
2016-05-19 16:18:18 +02:00
k8s-merge-robot
044d55ed7d Merge pull request #24142 from rrati/controller-sync-interval-23394
Automatic merge from submit-queue

Separated resync and relist functionality in reflector #23394

controller-manager #23394
2016-05-19 07:10:00 -07:00
k8s-merge-robot
d33fa39abf Merge pull request #23254 from jsafrane/devel/ulimited-aws-devices
Automatic merge from submit-queue

AWS: Move enforcement of attached AWS device limit from kubelet to scheduler

Limit of nr. of attached EBS volumes to a node is now enforced by scheduler. It can be adjusted by `KUBE_MAX_PD_VOLS` env. variable there. Therefore we don't need the same check in kubelet. If the system admin wants to attach more, we should allow it.

Kubelet limit is now 650 attached volumes ('ba'..'zz').

Note that the scheduler counts only *pods* assigned to a node. When a pod is deleted and a new pod is scheduled on a node, kubelet start (slowly) detaching the old volume and (slowly) attaching the new volume. Depending on AWS speed **it may happen that more than KUBE_MAX_PD_VOLS volumes are actually attached to a node for some time!** Kubelet will clean it up in few seconds / minutes (both attach/detach is quite slow).

Fixes #22994
2016-05-19 06:13:42 -07:00
k8s-merge-robot
d89d45a861 Merge pull request #25266 from smarterclayton/common_storage
Automatic merge from submit-queue

kube-apiserver options should be decoupled from impls

A few months ago we refactored options to keep it independent of the
implementations, so that it could be used in CLI tools to validate
config or to generate config, without pulling in the full dependency
tree of the master.  This change restores that by separating
server_run_options.go back to its own package.

Also, options structs should never contain non-serializable types, which
storagebackend.Config was doing with runtime.Codec. Split the codec out.

Fix a typo on the name of the etcd2.go storage backend.

Finally, move DefaultStorageMediaType to server_run_options.

@nikhiljindal as per my comment in #24454, @liggitt because you and I
discussed this last time
2016-05-19 06:13:38 -07:00
Clayton Coleman
eeb04e6826
Reset input buffer on retry
Retries were previously sending empty bodies to the server.
2016-05-19 09:08:57 -04:00
Clayton Coleman
a8ce27709c
Print more data about an error for debugging
Sometimes clients send unintelligible data to the server, provide a bit
more debugging in the returned error to make it easier to pin down where
the problem is from the user side.
2016-05-19 09:08:57 -04:00
Clayton Coleman
88b39cadf8
Have the service account controller force retry
Service account controller, when API token not found, now sends 500 with
Retry-After: 1s. Also change the apiserver to actually write the error.
2016-05-19 09:08:57 -04:00
Clayton Coleman
e5fbf86157
Allow StatusErrors to be modified after creation 2016-05-19 09:08:53 -04:00
Wojciech Tyczynski
f204a9f399 Merge pull request #25783 from zhouhaibing089/indexer-fix
Fix the Store to be Indexer in test/component/scheduler/perf
2016-05-19 14:55:24 +02:00
Clayton Coleman
e3c8c4c22b
Handle resource.Quantity changes in eviction thresholds 2016-05-19 08:41:43 -04:00
Clayton Coleman
5e4308f91d
Update use of Quantity in other classes 2016-05-19 08:41:43 -04:00
Clayton Coleman
b2a01d4d94
Add an int64 quantity implementation
Provides fast transformations of int64 scaled values with overflow to
inf.Dec as needed. Attempts to reduce allocations and expensive
operations in the critical path.

Alters the public signature of Quantity to encourage more efficient use
2016-05-19 08:41:39 -04:00
Robert Rati
e388c137bb Separate sync and list functionality in the reflector. #23394 2016-05-19 07:41:24 -04:00
Jan Safranek
61d630ddf7 volume controller: Fix method name in a log message
It's deleteVolume, not deleteClaim.
2016-05-19 12:54:17 +02:00
k8s-merge-robot
c63ac4e664 Merge pull request #24331 from jsafrane/devel/refactor-binder
Automatic merge from submit-queue

Refactor persistent volume controller

Here is complete persistent controller as designed in https://github.com/pmorie/pv-haxxz/blob/master/controller.go

It's feature complete and compatible with current binder/recycler/provisioner. No new features, it *should* be much more stable and predictable.

Testing
--
The unit test framework is quite complicated, still it was necessary to reach reasonable coverage (78% in `persistentvolume_controller.go`). The untested part are error cases, which are quite hard to test in reasonable way - sure, I can inject a VersionConflictError on any object update and check the error bubbles up to appropriate places, but the real test would be to run `syncClaim`/`syncVolume` again and check it recovers appropriately from the error in the next periodic sync. That's the hard part.

Organization
---
The PR starts with `rm -rf kubernetes/pkg/controller/persistentvolume`. I find it easier to read when I see only the new controller without old pieces scattered around.
[`types.go` from the old controller is reused to speed up matching a bit, the code looks solid and has 95% unit test coverage].

I tried to split the PR into smaller patches, let me know what you think.

~~TODO~~
--

* ~~Missing: provisioning, recycling~~.
* ~~Fix integration tests~~
* ~~Fix e2e tests~~

@kubernetes/sig-storage

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/24331)
<!-- Reviewable:end -->

Fixes #15632
2016-05-19 03:06:46 -07:00
k8s-merge-robot
4f09f51486 Merge pull request #24800 from thockin/validation_pt8-3
Automatic merge from submit-queue

Make name validators return string slices

Part of the larger validation PR, broken out for easier review and merge.  Builds on previous PRs in the series.
2016-05-19 02:15:27 -07:00
Daniel Smith
f538d6019d Merge pull request #25857 from kubernetes/revert-25425-real-gci
Revert "Add support for running GCI on the GCE cloud provider"
2016-05-18 21:31:56 -07:00
Daniel Smith
40f53b1765 Revert "Add support for running GCI on the GCE cloud provider" 2016-05-18 21:31:28 -07:00