Commit Graph

16843 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
3245e8b355 Merge pull request #36767 from vishh/rename-cgroups-flags
Automatic merge from submit-queue

[kubelet] rename --cgroups-per-qos to --experimental-cgroups-per-qos

This reflects the true nature of "cgroups per qos" feature.

```release-note
 * Rename `--cgroups-per-qos` to `--experimental-cgroups-per-qos` in Kubelet
```
2016-11-14 17:35:19 -08:00
Kubernetes Submit Queue
9be1191aba Merge pull request #36686 from rkouj/check-gluster-fs-binaries
Automatic merge from submit-queue

Implement CanMount() for gfsMounter for linux

**What this PR does / why we need it**:
To implement CanMount() check for glusterfs. If mount binaries are not present on the underlying node, the mount will not proceed and return an error message stating so.

Related to issue : https://github.com/kubernetes/kubernetes/issues/36098


Related to similar change for NFS : 
https://github.com/kubernetes/kubernetes/pull/36280

**Release note**:
`Check binaries for GlusterFS on the underlying node before doing mount`





Sample output from testing in GCE/GCI:

rkouj@rkouj0:~/go/src/k8s.io/kubernetes$ kubectl describe pods
Name:		glusterfs
Namespace:	default
Node:		e2e-test-rkouj-minion-group-kjq3/10.240.0.3
Start Time:	Fri, 11 Nov 2016 17:22:04 -0800
Labels:		<none>
Status:		Pending
IP:		
Controllers:	<none>
Containers:
  glusterfs:
    Container ID:	
    Image:		gcr.io/google_containers/busybox
    Image ID:		
    Port:		
    QoS Tier:
      cpu:	Burstable
      memory:	BestEffort
    Requests:
      cpu:		100m
    State:		Waiting
      Reason:		ContainerCreating
    Ready:		False
    Restart Count:	0
    Environment Variables:
Conditions:
  Type		Status
  Initialized 	True 
  Ready 	False 
  PodScheduled 	True 
Volumes:
  glusterfs:
    Type:		Glusterfs (a Glusterfs mount on the host that shares a pod's lifetime)
    EndpointsName:	glusterfs-cluster
    Path:		kube_vol
    ReadOnly:		true
  default-token-2zcao:
    Type:	Secret (a volume populated by a Secret)
    SecretName:	default-token-2zcao
Events:
  FirstSeen	LastSeen	Count	From						SubobjectPath	Type		Reason		Message
  ---------	--------	-----	----						-------------	--------	------		-------
  8s		8s		1	{default-scheduler }						Normal		Scheduled	Successfully assigned glusterfs to e2e-test-rkouj-minion-group-kjq3
  7s		4s		4	{kubelet e2e-test-rkouj-minion-group-kjq3}			Warning		FailedMount	Unable to mount volume kubernetes.io/glusterfs/6bb04587-a876-11e6-a712-42010af00002-glusterfs (spec.Name: glusterfs) on pod glusterfs (UID: 6bb04587-a876-11e6-a712-42010af00002). Verify that your node machine has the required components before attempting to mount this volume type. Required binary /sbin/mount.glusterfs is missing
2016-11-14 15:40:45 -08:00
Kubernetes Submit Queue
c5c461df38 Merge pull request #36664 from yujuhong/fix_comments
Automatic merge from submit-queue

dockershim: clean up comments
2016-11-14 14:26:51 -08:00
Vishnu kannan
9066253491 [kubelet] rename --cgroups-per-qos to --experimental-cgroups-per-qos to reflect the true nature of that feature
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-11-14 14:06:39 -08:00
Kubernetes Submit Queue
61a5d23e0f Merge pull request #36603 from fabianofranz/fix_lists_in_convert
Automatic merge from submit-queue

Fix handling lists in kubectl convert

Fixes https://github.com/kubernetes/kubernetes/issues/36722

When handling multiple objects in `kubectl convert` (for example in `kubectl convert -f .` with multiple files in current directory) the objects must be managed as a list instead of individually, otherwise `-o yaml|json` will generate invalid format (just multiple json/yaml objects concatenated) which can't be fed to `kubectl create` like in `kubectl convert -f . | kubectl create -f -`.


```release-note
NONE
```
2016-11-14 12:21:16 -08:00
rkouj
b85ac95143 Implement CanMount() for gfsMounter for linux 2016-11-14 12:18:06 -08:00
Yu-Ju Hong
b73dfe02b5 dockershim: clean up comments 2016-11-14 12:03:00 -08:00
Kubernetes Submit Queue
c76fe8dcda Merge pull request #31169 from pweil-/userns-experimental
Automatic merge from submit-queue

Default host user namespace via experimental flag

@vishh @ncdc @pmorie @smarterclayton @thockin 

Initial thought on the implementation https://github.com/kubernetes/kubernetes/pull/30684#issuecomment-241523425 wasn't quite right.  Since we need to dereference a PVC in some cases the defaulting code didn't fit nicely in the docker manager code (would've coupled it with a kube client and would've been messy).  I think passing this in via the runtime config turned out cleaner.  PTAL
2016-11-14 11:04:48 -08:00
deads2k
baa2418b11 let printer update unstructured list 2016-11-14 10:42:28 -05:00
pweil-
d0d78f478c experimental host user ns defaulting 2016-11-14 10:16:03 -05:00
Kubernetes Submit Queue
5c21cc892c Merge pull request #36581 from wojtek-t/fix_service_alloc
Automatic merge from submit-queue

Fix TestServiceAlloc test

Fix #32028
2016-11-14 05:35:00 -08:00
Kubernetes Submit Queue
38cc6df7b3 Merge pull request #36712 from hongchaodeng/e5
Automatic merge from submit-queue

cacher test: fix leftover v2 test server

I think this was dismissed in #30890

@timothysc @wojtek-t
2016-11-14 01:58:18 -08:00
Kubernetes Submit Queue
c964641fb3 Merge pull request #36635 from hongchaodeng/e2
Automatic merge from submit-queue

etcd3: remove stale comments in test
2016-11-14 01:15:20 -08:00
Wojciech Tyczynski
03b9be982f Fix TestServiceAlloc test 2016-11-14 10:11:37 +01:00
Kubernetes Submit Queue
d5014c3f21 Merge pull request #36696 from brendandburns/azure
Automatic merge from submit-queue

Add support for service load balancer source ranges to Azure load balancers.

@colemickens @kubernetes/sig-network
2016-11-13 21:00:38 -08:00
Hongchao Deng
32a96b7dc0 pkg/storage: update bazel 2016-11-13 18:34:55 -08:00
Hongchao Deng
1972270f7b cacher test: fix leftover v2 test server 2016-11-13 16:22:24 -08:00
Brendan Burns
610f38cb4a Add support for service address ranges to Azure load balancers. 2016-11-12 20:59:45 -08:00
Hongchao Deng
5da4028aff etcd3: remove stale comments in test 2016-11-12 14:41:47 -08:00
Kubernetes Submit Queue
68a7c2c6b5 Merge pull request #36678 from ymqytw/fix_bug_in_patch
Automatic merge from submit-queue

fix bug when compare version

Fix a small bug when compare version in `patch` which is introduced by my PR #35647 today.

This blocks #36672.

cc: @janetkuo
2016-11-11 23:12:13 -08:00
Kubernetes Submit Queue
76f99d726c Merge pull request #36561 from liggitt/etcd3-watch-zero
Automatic merge from submit-queue

Fix watching from resourceVersion=0 in etcd3 watcher

Fixes https://github.com/kubernetes/kubernetes/issues/36545

* Makes etcd3 consistent with watch cache behavior (all synthetic events sent for the initial list of items result in ADDED events)
* Fixes errors if previous values of initial items had been compacted away
* Removes fan-out Get() for previous values of initial items

Should be fixed before making etcd3 the default (https://github.com/kubernetes/kubernetes/pull/36229)
2016-11-11 22:33:20 -08:00
Kubernetes Submit Queue
b85acd957a Merge pull request #36579 from kargakis/restore-events-for-tests
Automatic merge from submit-queue

Restore event messages for replica sets in the deployment controller

Needed to unblock release upgrade tests (see https://github.com/kubernetes/kubernetes/issues/36453)

@kubernetes/deployment ptal
2016-11-11 15:50:31 -08:00
ymqytw
af8fbc327d fix bug when compare version 2016-11-11 15:20:15 -08:00
Kubernetes Submit Queue
3e169be887 Merge pull request #35647 from ymqytw/patch_primitive_list
Automatic merge from submit-queue

Fix strategic patch for list of primitive type with merge sementic

Fix strategic patch for list of primitive type when the patch strategy is `merge`.
Before: we cannot replace or delete an item in a list of primitive, e.g. string, when the patch strategy is `merge`. It will always append new items to the list.
This patch will generate a map to update the list of primitive type.
The server with this patch will accept either a new patch or an old patch.
The client will found out the APIserver version before generate the patch.

Fixes #35163, #32398

cc: @pwittrock @fabianofranz 

``` release-note
Fix strategic patch for list of primitive type when patch strategy is `merge` to remove deleted objects.
```
2016-11-11 14:36:44 -08:00
Kubernetes Submit Queue
2822e4fd78 Merge pull request #36651 from mwielgus/evict-from-b1
Automatic merge from submit-queue

Switch pod eviction client from v1alpha1 to v1beta

Generated client 1.5 has a function to evict a pod. The function uses v1alpha1.Eviction object instead of v1beta1. This pr changes the api version that is being used.

cc: @davidopp @caesarxuchao
2016-11-11 12:22:34 -08:00
Kubernetes Submit Queue
8b37baa926 Merge pull request #36616 from jingxu97/Nov/reconstruct-fix
Automatic merge from submit-queue

fix issue in reconstruct volume data when kubelet restarts

During state reconstruction when kubelet restarts, outerVolueSpecName
cannot be recovered by scanning the disk directories. But this
information is used by volume manager to check whether pod's volume is
mounted or not. There are two possible cases:
1. pod is not deleted during kubelet restarts so that desired state
should have the information. reconciler.updateState() will use this
inforamtion to update.
2. pod is deleted during this period, reconciler has to use
InnerVolumeSpecName, but it should be ok since this information will not
be used for volume cleanup (umount)
2016-11-11 11:38:59 -08:00
Jordan Liggitt
7f61d37996 Fix watching from resourceVersion=0 in etcd3 watcher 2016-11-11 11:35:53 -08:00
Marcin
324368ea98 Switch pod eviction client from v1alpha1 to v1beta. 2016-11-11 19:34:29 +01:00
Kubernetes Submit Queue
868f6e1c5c Merge pull request #36585 from jszczepkowski/hpa-unittest2
Automatic merge from submit-queue

More unittests for HPA.
2016-11-11 09:17:06 -08:00
Kubernetes Submit Queue
a0dadf16f9 Merge pull request #36316 from derekwaynecarr/pvc_quota_use_informers
Automatic merge from submit-queue

Improve quota performance for pvc by using shared informer

This avoids a list call for each namespace in the resource quota controller when syncing quota.
2016-11-11 05:34:30 -08:00
Michail Kargakis
9afe2c3a7c Do not emit event for AlreadyExists errors 2016-11-11 10:49:05 +01:00
Kubernetes Submit Queue
dbb4def470 Merge pull request #36608 from bprashanth/svc_leak
Automatic merge from submit-queue

Ensure health check exists before creating target pool

We already couple health check deletion with target pool deletion in deleteTargetPools, do the inverse in createTargetPools. See https://github.com/kubernetes/kubernetes/issues/35282#issuecomment-259317589 for why this is necessary. Fixes https://github.com/kubernetes/kubernetes/issues/35282, but the test won't go green till I relieve quota on the project.
2016-11-10 20:43:46 -08:00
Kubernetes Submit Queue
850f2bf1fd Merge pull request #35382 from jbeda/nits
Automatic merge from submit-queue

Expand documentation and TODOs in a few packages

I was reading through unfamiliar code and mostly added TODOs and expanded and clarified documentations.

There are a couple of things that are real code changes:
- Removed some unused constants
- Changed `workqueue.Parallize` to clamp the number of worker goroutines to the number of items to be processed.
- Added another unit test to `workqueue.queue`.  I thought I found a bug (I was wrong) and wrote a unit test to isolate.  I figure the extra test is worth keeping.
2016-11-10 17:48:06 -08:00
Kubernetes Submit Queue
6ec02394ab Merge pull request #36448 from jonboulle/criclean
Automatic merge from submit-queue

CRI: general grammar/spelling/consistency cleanup

No semantic changes, but a lot of shuffling of docstrings to make things
more consistent. In particular, standardise on the zeroth-article (i.e.
prefer `// Version` to `// The version`) and ending all docstrings with
periods.


(This knowingly conflicts with #36446 and intentionally omits changing the
Annotations field - I'll rebase this or that respectively as necessary.)
2016-11-10 17:10:12 -08:00
bprashanth
a71abdc36d Ensure health check exists before creating target pool 2016-11-10 16:58:45 -08:00
Jing Xu
c124830278 fix issue in reconstruct volume data when kubelet restarts
During state reconstruction when kubelet restarts, outerVolueSpecName
cannot be recovered by scanning the disk directories. But this
information is used by volume manager to check whether pod's volume is
mounted or not. There are two possible cases:
1. pod is not deleted during kubelet restarts so that desired state
should have the information. reconciler.updateState() will use this
inforamtion to update.
2. pod is deleted during this period, reconciler has to use
InnerVolumeSpecName, but it should be ok since this information will not
be used for volume cleanup (umount)
2016-11-10 16:23:55 -08:00
Kubernetes Submit Queue
620854b685 Merge pull request #36557 from brendandburns/azure
Automatic merge from submit-queue

Add support for SourceIP preservation in Azure LBs

@thockin @colemickens now that we are setting DSR for Azure LBs this should "just work"
2016-11-10 15:27:38 -08:00
Kubernetes Submit Queue
89ebb2af43 Merge pull request #36551 from timstclair/cvm-system
Automatic merge from submit-queue

Fix getting cgroup pids

Fixes https://github.com/kubernetes/kubernetes/issues/35214, https://github.com/kubernetes/kubernetes/issues/33232

Verified manually, but I didn't have time to run all the e2e's yet (will check it in the morning).

This should be cherry-picked into 1.4, and merged into 1.5 (/cc @saad-ali )

```release-note
Fix fetching pids running in a cgroup, which caused problems with OOM score adjustments & setting the /system cgroup ("misc" in the summary API).
```

/cc @kubernetes/sig-node
2016-11-10 14:50:11 -08:00
Tim St. Clair
3aaa6fca88 BUILD changes for cgroup pids 2016-11-10 13:08:39 -08:00
Tim St. Clair
cb588e823c Fix getting cgroup pids 2016-11-10 13:08:17 -08:00
Fabiano Franz
8965fcaf10 Fix handling lists in kubectl convert 2016-11-10 18:19:30 -02:00
Brendan Burns
8b9348e176 Add support for SourceIP preservation in Azure LBs 2016-11-10 10:03:04 -08:00
Kubernetes Submit Queue
f70c2ef20e Merge pull request #36584 from kargakis/add-more-logging-in-the-deployment-controller
Automatic merge from submit-queue

Do not handle AlreadyExists errors yet

Until we fix https://github.com/kubernetes/kubernetes/issues/29735 (use a new hashing algo) we should not handle AlreadyExists (was added recently in the perma-failed PR).

@kubernetes/deployment
2016-11-10 09:53:27 -08:00
Kubernetes Submit Queue
44f672e5e2 Merge pull request #34877 from resouer/e2e-log-path
Automatic merge from submit-queue

Add e2e node test for log path

fixes #34661

A node e2e test to check if container logs files are properly created with right content.

Since the log files under `/var/log/containers` are actually symbolic of docker containers log files, we can not use a pod to mount them in and do check (symbolic doesn't supported by docker volume).

cc @Random-Liu
2016-11-10 08:35:59 -08:00
Jerzy Szczepkowski
f843aff083 More unittests for HPA.
Added more unittests for HPA. Fixed inconsistency in replica calculator when usageRatio == 1.0.
2016-11-10 17:30:23 +01:00
Michail Kargakis
8cd4459b6c Do not handle AlreadyExists errors yet 2016-11-10 15:45:56 +01:00
Michail Kargakis
8ef6fdde72 Restore event messages for replica sets in the deployment controller 2016-11-10 14:34:40 +01:00
Kubernetes Submit Queue
5098a48aac Merge pull request #36451 from yujuhong/disable_keepalive
Automatic merge from submit-queue

Disable keep-alive for SSH tunnel health checks

We don't reuse the http client across health checks. Disabling the keep-alive to
properly close the connections.

This fixes #35207
2016-11-10 04:24:54 -08:00
Kubernetes Submit Queue
cc51dc56a1 Merge pull request #36436 from jszczepkowski/hpa-events-fix
Automatic merge from submit-queue

HPA: removed duplicated events, added events in all execution paths.
2016-11-10 03:48:57 -08:00
Kubernetes Submit Queue
a551dff534 Merge pull request #35901 from justinsb/kubectl_show_labels
Automatic merge from submit-queue

kubectl: show node label if defined

We are moving towards marking master nodes as tainted, and not
necessarily unschedulable.  Further now we encourage users to taint
nodes, marking them unschedulable.

Thus the reliance on "Unschedulable" is not really a great indicator for
the master.

Instead, recognize the existing node 'role' markers, and surface them
where Unschedulable is (in the status).

We recognize:

 * a kubernetes.io/role label
 * a kubeadm.alpha.kubernetes.io/role label
~a taint with Key 'dedicated'~

Fix #33533
2016-11-10 03:12:33 -08:00