Commit Graph

12322 Commits

Author SHA1 Message Date
k8s-merge-robot
4d69e2c26a Merge pull request #25475 from soltysh/scheduledjob_client
Automatic merge from submit-queue

ScheduledJob client 

@erictune SheduledJob part 2, based on #24970 so first two commits doesn't count. 
This is still WIP, but it's here so you know :)

```release-note
Introducing ScheduledJobs as described in [the proposal](https://github.com/kubernetes/kubernetes/blob/master/docs/proposals/scheduledjob.md) as part of `batch/v2alpha1` version (experimental feature).
```
[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-21 14:10:41 -07:00
k8s-merge-robot
4bb085c927 Merge pull request #25772 from derekwaynecarr/eviction-max-grace
Automatic merge from submit-queue

Add support for limiting grace period during soft eviction

Adds eviction manager support in kubelet for max pod graceful termination period when a soft eviction is met.

```release-note
Kubelet evicts pods when available memory falls below configured eviction thresholds
```

/cc @vishh
2016-05-21 12:43:45 -07:00
k8s-merge-robot
682c188fc8 Merge pull request #25738 from wojtek-t/default_protobuf
Automatic merge from submit-queue

Use protobufs by default to communicate with apiserver (still store JSONs in etcd)

@lavalamp @kubernetes/sig-api-machinery
2016-05-21 11:48:25 -07:00
k8s-merge-robot
346f965871 Merge pull request #25694 from cjcullen/authncache
Automatic merge from submit-queue

Cache Webhook Authentication responses

Add a simple LRU cache w/ 2 minute TTL to the webhook authenticator.

Kubectl is a little spammy, w/ >= 4 API requests per command. This also prevents a single unauthenticated user from being able to DOS the remote authenticator.
2016-05-21 10:48:38 -07:00
k8s-merge-robot
d6d0a6eb83 Merge pull request #25656 from tmrts/godep-update/rkt-1.6.0
Automatic merge from submit-queue

Update rkt API version to 1.6.0

Updates coreos/rkt container runtime dependency to `1.6.0`

Fixes #25430
2016-05-21 09:56:52 -07:00
k8s-merge-robot
d06fe0caf7 Merge pull request #25638 from caseydavenport/cd-network-policy-api
Automatic merge from submit-queue

Add NetworkPolicy API Resource

API implementation of https://github.com/kubernetes/kubernetes/pull/24154

Still to do:
- [x] Get it working (See comments)
- [x] Make sure user-facing comments are correct.
- [x] Update naming in response to #24154
- [x] kubectl / client support
- [x] Release note.

```release-note
Implement NetworkPolicy v1beta1 API object / client support.
```

Next Steps:
- UTs in separate PR.
- e2e test in separate PR.
- make `Ports` + `From` pointers to slices (TODOs in code - to be done when auto-gen is fixed)

CC @thockin 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-21 08:51:28 -07:00
k8s-merge-robot
c05c1d24ae Merge pull request #25540 from krousey/discovery_mapper
Automatic merge from submit-queue

Adding support objects for integrating dynamic client the kubectl builder

Kubectl will try to decode into `runtime.VersionedObjects`, so the `UnstructuredJSONScheme` needs to handle that intelligently.

Kubectl's builder also needs a `meta.RESTMapper` and `runtime.Typer`. The `meta.RESTMapper` requires a `runtime.ObjectConvertor` (spelling?) that works with `runtime.Unstructured`. The mapper and typer required discovery info, so I just put that in the kubectl util package since it didn't really seem to fit anywhere else. 

Subsequent PRs will be using these in kubectl.

cc @kubernetes/sig-api-machinery @smarterclayton @liggitt @lavalamp
2016-05-21 07:13:49 -07:00
Maciej Szulik
6510eb54d8 ScheduledJob client 2016-05-21 15:48:40 +02:00
Maciej Szulik
adc890a57e ScheduledJob validation & defaults 2016-05-21 15:48:40 +02:00
Maciej Szulik
5c9b4bfee5 ScheduledJob api leftovers - generated 2016-05-21 15:48:40 +02:00
Maciej Szulik
70e5456118 ScheduledJob api leftovers 2016-05-21 15:48:39 +02:00
k8s-merge-robot
9c9bdb2494 Merge pull request #25502 from swagiaal/attach-interface-pvc
Automatic merge from submit-queue

Add support for PersistentVolumeClaim in Attacher/Detacher interface

The attach detach interface does not support volumes which are referenced through PVCs. This PR adds that support
2016-05-21 06:25:34 -07:00
k8s-merge-robot
68ab865e75 Merge pull request #25328 from resouer/sort-images
Automatic merge from submit-queue

Only expose top N images in `NodeStatus`

Fix #25209

Sorted the image and only pick set top 50 sized images in node status.

cc @vishh
2016-05-21 04:43:30 -07:00
k8s-merge-robot
eb733cbf45 Merge pull request #25285 from ingvagabund/extend-secrets-volumes-with-path-control
Automatic merge from submit-queue

Extend secrets volumes with path control

As per [1] this PR extends secrets mapped into volume with:

* key-to-path mapping the same way as is for configmap. E.g.

```
{
 "apiVersion": "v1",
 "kind": "Pod",
  "metadata": {
    "name": "mypod",
    "namespace": "default"
  },
  "spec": {
    "containers": [{
      "name": "mypod",
      "image": "redis",
      "volumeMounts": [{
        "name": "foo",
        "mountPath": "/etc/foo",
        "readOnly": true
      }]
    }],
    "volumes": [{
      "name": "foo",
      "secret": {
        "secretName": "mysecret",
        "items": [{
          "key": "username",
          "path": "my-username"
        }]
      }
    }]
  }
}
```

Here the ``spec.volumes[0].secret.items`` added changing original target ``/etc/foo/username`` to ``/etc/foo/my-username``.

* secondly, refactoring ``pkg/volumes/secrets/secrets.go`` volume plugin to use ``AtomicWritter`` to project a secret into file.

[1] https://github.com/kubernetes/kubernetes/blob/master/docs/design/configmap.md#changes-to-secret
2016-05-21 03:55:13 -07:00
Wojciech Tyczynski
0f881d6120 Use protobufs by default to communicate with apiserver 2016-05-21 11:38:32 +02:00
k8s-merge-robot
62a8394eb4 Merge pull request #25263 from jsafrane/devel/adopt-recycle-pod
Automatic merge from submit-queue

volume recycler: Don't start a new recycler pod if one already exists.

Recycling is a long duration process and when the recycler controller is restarted in the meantime, it should not start a new recycler pod if there is one already running.

This means that the recycler pod must have deterministic name based on name of the recycled PV, we then get name conflicts when creating the pod.

Two things need to be changed:

- recycler controller and recycler plugins must pass the PV.Name to place, where the pod is created. This is most of the patch and it should be pretty straightforward.

- create recycler pod with deterministic name and check "already exists" error.

When at it, remove useless 'resourceVersion' argument and make log messages starting with lowercase.

There is an unit test to check the behavior + there is an e2e test that checks that regular recycling is not broken (it does not try to run two recycler pods in parallel as the recycler is single-threaded now).
2016-05-21 02:28:26 -07:00
k8s-merge-robot
423a4154be Merge pull request #25062 from dcbw/kubenet-rkt
Automatic merge from submit-queue

Hook rkt kubelet runtime up to network plugins
2016-05-21 00:45:19 -07:00
k8s-merge-robot
cf6b3063b5 Merge pull request #25992 from hongchaodeng/comp
Automatic merge from submit-queue

etcd3/compactor: fix logging endpoints

Missed a logging.
2016-05-20 22:58:09 -07:00
k8s-merge-robot
46504c2042 Merge pull request #14943 from vishh/qos
Automatic merge from submit-queue

Updaing QoS policy to be at the pod level

Quality of Service will be derived from an entire Pod Spec, instead of being derived from resource specifications of individual resources per-container.
A Pod is `Guaranteed` iff all its containers have limits == requests for all the first-class resources (cpu, memory as of now).
A Pod is `BestEffort` iff requests & limits are not specified for any resource across all containers.
A Pod is `Burstable` otherwise. 

Note: Existing pods might be more susceptible to OOM Kills on the node due to this PR! To protect pods from being OOM killed on the node, set `limits` for all resources across all containers in a pod.

<!-- 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/14943)
<!-- Reviewable:end -->
2016-05-20 22:58:04 -07:00
Mike Danese
fbf6bbc49a Merge pull request #25596 from derekparker/inotify
kubelet: Optionally, have kubelet exit if lock file contention is observed, using --exit-on-lock-contention flag
2016-05-20 16:40:10 -07:00
Mike Danese
63b7c05bc4 Merge pull request #24743 from pmorie/kill-pod-errs
Clearly identify errors killing pods in events and logs
2016-05-20 16:38:51 -07:00
Mike Danese
ae7809d71a Merge pull request #25698 from euank/update-log-stuff
rkt: Don't warn on empty pod logs
2016-05-20 15:03:20 -07:00
Hongchao Deng
ae6166f97d etcd3/compactor: fix logging endpoints 2016-05-20 14:35:42 -07:00
Vishnu kannan
f884180deb Update kubelet to use per-pod QoS policy.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-05-20 11:52:17 -07:00
Vishnu kannan
f48c83600c Updating QoS policy to be per-pod instead of per-resource.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-05-20 11:52:16 -07:00
k8s-merge-robot
f935507235 Merge pull request #19242 from mqliang/node-controller
Automatic merge from submit-queue

add CIDR allocator for NodeController

This PR:

* use pkg/controller/framework to watch nodes and	reduce lists when allocate CIDR for node
* decouple the cidr allocation logic from monitoring status logic

<!-- 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/19242)
<!-- Reviewable:end -->
2016-05-20 09:45:05 -07:00
derekwaynecarr
2a1d3faf08 kubelet support for max grace period during soft eviction 2016-05-20 11:30:08 -04:00
k8s-merge-robot
2c471bce4e Merge pull request #25509 from janetkuo/kubectl-set-image
Automatic merge from submit-queue

Add 'kubectl set image'

```release-note
Add "kubectl set image" for easier updating container images (for pods or resources with pod templates). 
```

**Usage:**
```
kubectl set image (-f FILENAME | TYPE NAME) CONTAINER_NAME_1=CONTAINER_IMAGE_1 ... CONTAINER_NAME_N=CONTAINER_IMAGE_N
```
**Example:**
```console 
# Set a deployment's nginx container image to 'nginx:1.9.1', and its busybox container image to 'busybox'.
$ kubectl set image deployment/nginx busybox=busybox nginx=nginx:1.9.1

# Update all deployments' nginx container's image to 'nginx:1.9.1'
$ kubectl set image deployments nginx=nginx:1.9.1 --all

# Update image of all containers of daemonset abc to 'nginx:1.9.1'
$ kubectl set image daemonset abc *=nginx:1.9.1

# Print result (in yaml format) of updating nginx container image from local file, without hitting the server 
$ kubectl set image -f path/to/file.yaml nginx=nginx:1.9.1 --local -o yaml
```

I abandoned the `--container=xxx --image=xxx` flags in the [deploy proposal](https://github.com/kubernetes/kubernetes/blob/master/docs/proposals/deploy.md#kubectl-set) since it's much easier to use with just KEY=VALUE (CONTAINER_NAME=CONTAINER_IMAGE) pairs. 

Ref #21648 
@kubernetes/kubectl @bgrant0607 @kubernetes/sig-config 


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-20 07:13:45 -07:00
k8s-merge-robot
4ea034c284 Merge pull request #25896 from yujuhong/inspect_error
Automatic merge from submit-queue

kubelet: Don't attempt to apply the oom score if container exited already

Containers could terminate before kubelet applies the oom score. This is normal
and the function should not error out.

This addresses #25844 partially.

/cc @smarterclayton @Random-Liu
2016-05-20 06:22:57 -07:00
mqliang
552a247639 update auto generation files 2016-05-20 20:44:40 +08:00
mqliang
17d5a302bb make podcidr mask size configurable 2016-05-20 20:44:40 +08:00
mqliang
cf7a3475f3 Don't allow node controller to allocate into service CIDR range 2016-05-20 20:44:40 +08:00
mqliang
69b8453fa0 cidr allocator 2016-05-20 20:44:40 +08:00
k8s-merge-robot
b7a31ad261 Merge pull request #25690 from fabianofranz/fixes_panic_on_roundtripper_when_tls_under_proxy
Automatic merge from submit-queue

Fixes panic on round tripper when TLS under a proxy

When under a proxy with a valid cert from a trusted authority, the `SpdyRoundTripper` will likely not have a `*tls.Config` (no cert verification nor `InsecureSkipVerify` happened), which will result in a panic. So we have to create a new `*tls.Config` to be able to create a TLS client right after. If `RootCAs` in that new config is nil, the system pool will be used.

@ncdc PTAL 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-20 05:31:42 -07:00
k8s-merge-robot
3b0a6dac1f Merge pull request #25571 from gmarek/nodecontroller
Automatic merge from submit-queue

NodeController doesn't evict Pods if no Nodes are Ready

Fix #13412 #24597

When NodeControllers don't see any Ready Node it goes into "network segmentation mode". In this mode it cancels all evictions and don't evict any Pods.

It leaves network segmentation mode when it sees at least one Ready Node. When leaving it resets all timers, so each Node has full grace period to reconnect to the cluster.

cc @lavalamp @davidopp @mml @wojtek-t @fgrzadkowski
2016-05-20 05:31:34 -07:00
k8s-merge-robot
d0ed68f89b Merge pull request #25904 from Random-Liu/fix-init-container-waiting-state
Automatic merge from submit-queue

Properly handle init containers in convertToAPIContainerStatuses

Fix https://github.com/kubernetes/kubernetes/issues/25879
Fix https://github.com/kubernetes/kubernetes/issues/25844

This PR changed `convertToAPIContainerStatuses` to only generate waiting state when the init container really needs to be restarted.
Addresses https://github.com/kubernetes/kubernetes/issues/25844#issuecomment-220418068

Will send a better fix and add unit test later.
/cc @yujuhong @smarterclayton
2016-05-20 04:42:08 -07:00
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
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
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
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
Casey Davenport
47248f3698 v1beta1 NetworkPolicy API definition and client support 2016-05-19 19:02:54 -07:00
Random-Liu
f9203e6813 Add unit test for generateAPIPodStatus for normal containers and init containers 2016-05-19 17:12:29 -07:00
Random-Liu
38b188aa94 Properly handle init containers in convertToAPIContainerStatuses 2016-05-19 17:03:25 -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
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
Yu-Ju Hong
b57fbee557 check pid in oomscoreadj 2016-05-19 12:21:27 -07:00
Yu-Ju Hong
e3e1c7a6a1 kubelet: Don't attempt to apply the oom score if the container is not running
Containers could terminate before kubelet applies the oom score. This is normal
and the function should not error out.
2016-05-19 11:32:36 -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