Commit Graph

29256 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
3d60b3cd67 Merge pull request #60490 from jsafrane/fix-aws-delete
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Volume deletion should be idempotent

- Describe* calls should return `aws.Error` so caller can handle individual errors. `aws.Error` already has enough context (`"InvalidVolume.NotFound: The volume 'vol-0a06cc096e989c5a2' does not exist"`)
- Deletion of already deleted volume should succeed.


**Release note**:


Fixes: #60778

```release-note
NONE
```

/sig storage
/sig aws

/assign @justinsb @gnufied
2018-03-05 12:42:22 -08:00
ravisantoshgudimetla
1c416b1c39 Change to fix logging 2018-03-05 11:15:33 -05:00
Slava Semushin
180535c1fc pkg/volume/nfs/nfs.go: correct error messages. 2018-03-05 12:12:51 +01:00
Michelle Au
f6d97b5d2b Add feature gate for subpath 2018-03-05 09:14:44 +01:00
Jan Safranek
5110db5087 Lock subPath volumes
Users must not be allowed to step outside the volume with subPath.
Therefore the final subPath directory must be "locked" somehow
and checked if it's inside volume.

On Windows, we lock the directories. On Linux, we bind-mount the final
subPath into /var/lib/kubelet/pods/<uid>/volume-subpaths/<container name>/<subPathName>,
it can't be changed to symlink user once it's bind-mounted.
2018-03-05 09:14:44 +01:00
Pengfei Ni
4321560619 Add unit tests for parseConfig 2018-03-05 16:04:46 +08:00
Pengfei Ni
b697251d9c Enable maximumLoadBalancerRuleCount config for azure yaml config file 2018-03-05 15:41:57 +08:00
Pengfei Ni
ff31ff1eaf Fix broken useManagedIdentityExtension for azure cloud provider 2018-03-05 15:37:25 +08:00
Pengfei Ni
cca4f97ba7 Update documentation for azure-shared-securityrule
Azure augmented rules for NSGs has been GA since 2018.1
2018-03-05 14:23:47 +08:00
Pengfei Ni
dd8a7d359d Code cleanup: group consts togather 2018-03-05 14:13:40 +08:00
Harry Zhang
4e5901f947 Fixe golints of equiv class 2018-03-04 17:12:09 -08:00
Harry Zhang
6380a75484 Update generated files 2018-03-04 14:37:20 -08:00
Harry Zhang
c292af8f7b Use const in equiv class 2018-03-04 14:35:57 -08:00
Jonathan Basseri
f5ab6d5ad4 [PATCH] Fix equiv. cache invalidation of Node condition.
Equivalence cache for CheckNodeConditionPred becomes invalid when
Node.Spec.Unschedulable changes. This can happen even if
Node.Status.Conditions does not change, so move the logic around.

This logic is covered by integration test
"test/integration/scheduler".TestUnschedulableNodes but equivalence
cache is currently skipped when test pods have no OwnerReference.

Add benchmark for equivalence hashing.

Change equivalence hash function.

This changes the equivalence class hashing function to use as inputs all
the Pod fields which are read by FitPredicates. Before we used a
combination of OwnerReference and PersistentVolumeClaim info, which was
a close approximation. The new method ensures that hashing remains
correct regardless of controller behavior.

The PVCSet field can be removed from equivalencePod because it is
implicitly included in the Volume list.

Tests are now broken.

Move equivalence class hash code.

This moves the equivalence hashing code from
algorithm/predicates/utils.go to core/equivalence_cache.go.

In the process, making the hashing function and hashing function factory
both injectable dependencies is removed.

Fix equivalence cache hash tests.

Co-authored-by: Jonathan Basseri <misterikkit@google.com>
Co-authored-by: Harry Zhang <resouer@gmail.com>
2018-03-04 13:02:28 -08:00
wenlxie
fd20c8b020 ignore the loopbackdevice error, or the rbd volume will not get detached 2018-03-04 23:03:57 +08:00
NickrenREN
fc78e5ce9e fix references and golint failures 2018-03-03 13:12:03 +08:00
Kubernetes Submit Queue
47e6463bbb Merge pull request #60159 from jingxu97/Feb/localephemeralBeta
Automatic merge from submit-queue (batch tested with PRs 60159, 60731, 60720, 60736, 60740). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Promote LocalStorageCapacityIsolation feature to beta

The LocalStorageCapacityIsolation feature added a new resource type ResourceEphemeralStorage "ephemeral-storage" so that this resource can be allocated, limited, and consumed as the same way as CPU/memory. All the features related to resource management (resource request/limit, quota, limitrange) are available for local ephemeral storage.

This local ephemeral storage represents the storage for root file system, which will be consumed by containers' writtable layer and logs. Some volumes such as emptyDir might also consume this storage.

Fixes issue #60160

This PR also fixes data race issues discovered after open the feature gate. Basically setNodeStatus function in kubelet could be called by multiple threads so the data needs lock protection. Put the fix with this PR for easy testing.

**Release note**:

```release-note
ACTION REQUIRED: LocalStorageCapacityIsolation feature is beta and enabled by default. 
```
2018-03-02 18:35:49 -08:00
Harry Zhang
009699fd22 Update generated types 2018-03-02 17:12:02 -08:00
Harry Zhang
b62d82422d Fix golints in extender 2018-03-02 17:12:02 -08:00
Harry Zhang
71603f2f85 Add preemption in scheduler extender
Add verb and preemption for scheduler extender

Update bazel

Use simple preemption in extender

Use node name instead of v1.Node

Fix support method

Fix preemption dup

Remove uneeded logics

Remove nodeInfo from param to extender

Update bazel for scheduler types

Mock extender cache with nodeInfo

Add nodeInfo as extender cache

Choose node name or node based on cache flag

Always return meta victims in result
2018-03-02 17:12:02 -08:00
Bobby (Babak) Salamat
ebda9584f9 Auto-create system critical prioity classes at API server startup 2018-03-02 16:50:07 -08:00
Jing Xu
b2e744c620 Promote LocalStorageCapacityIsolation feature to beta
The LocalStorageCapacityIsolation feature added a new resource type
ResourceEphemeralStorage "ephemeral-storage" so that this resource can
be allocated, limited, and consumed as the same way as CPU/memory. All
the features related to resource management (resource request/limit, quota, limitrange) are avaiable for local ephemeral storage.

This local ephemeral storage represents the storage for root file system, which will be consumed by containers' writtable layer and logs. Some volumes such as emptyDir might also consume this storage.
2018-03-02 15:10:08 -08:00
Kubernetes Submit Queue
36d9a0a1a8 Merge pull request #60704 from lioncruise/patch-8
Automatic merge from submit-queue (batch tested with PRs 60732, 60689, 60648, 60704). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Fix a grammatical error in a comment

Fix a grammatical error in a comment in scheduler's code. We should use a word's plural form after "one of".



**What this PR does / why we need it**:

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-03-02 14:25:57 -08:00
Kubernetes Submit Queue
30eb1aa7c5 Merge pull request #60648 from bskiba/hpa-unready
Automatic merge from submit-queue (batch tested with PRs 60732, 60689, 60648, 60704). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Do not count failed pods as unready in HPA controller

**What this PR does / why we need it**:
Currently, when performing a scale up, any failed pods (which can be present for example in case of evictions performed by kubelet) will be treated as unready. Unready pods are treated as if they had 0% utilization which will slow down or even block scale up.

After this change, failed pods are ignored in all calculations. This way they do not influence neither scale up nor scale down replica calculations.

@MaciekPytel @DirectXMan12 

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #55630

**Special notes for your reviewer**:

**Release note**:
```
Stop counting failed pods as unready in HPA controller to avoid failed pods incorrectly affecting scale up replica count calculation.
```
2018-03-02 14:25:54 -08:00
Shijun Qin
158257473a Fix a grammatical error in a comment
Fix a grammatical error in a comment in scheduler's code. We should use a word's plural form after "one of".
2018-03-02 21:30:44 +08:00
Kubernetes Submit Queue
ae1fc13aee Merge pull request #60386 from k82cn/k8s_60163
Automatic merge from submit-queue (batch tested with PRs 60683, 60386). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Added unschedulabe predicate.

Signed-off-by: Da K. Ma <madaxa@cn.ibm.com>

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #60163

**Release note**:
```release-note
None
```
2018-03-02 03:41:50 -08:00
chentao1596
efb4c37270 fix some ineffectual assignments and misspellings for the package of 'pkg/kubelet/volumemanager' 2018-03-02 17:00:38 +08:00
hangaoshuai
805ac2c0f0 update Mount propagation version in comment 2018-03-02 13:03:30 +08:00
lcfang
7f38898abd fix the bad err 2018-03-02 12:14:35 +08:00
Nail Islamov
0d36ab2f39 Bugfix: Fix ordering of ValidateObjectMetaUpdate method arguments for PodTemplate validation 2018-03-02 14:36:20 +11:00
Kubernetes Submit Queue
16980f21d1 Merge pull request #52077 from krmayankk/runas
Automatic merge from submit-queue (batch tested with PRs 52077, 60456, 60591). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

API Changes for RunAsGroup

First set of api changes for feature https://github.com/kubernetes/community/pull/756
```release-note
Add ability to control primary GID of containers through pod Spec and PodSecurityPolicy
```
2018-03-01 15:23:51 -08:00
Kubernetes Submit Queue
6a7135b003 Merge pull request #60625 from andyzhangx/azurefile-remount
Automatic merge from submit-queue (batch tested with PRs 60623, 60625, 60520). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

fix azure file plugin failure issue on Windows after node restart

**What this PR does / why we need it**:
azure file plugin on Windows does not work after node restart, this is due to New-SmbGlobalMapping powershell cmdlet has lost account name/key after reboot, we should remove the invalid link and do the mount again after kubelet restart.
add remount logic for azure file plugin in this PR

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #60624

**Special notes for your reviewer**:

**Release note**:

```
fix azure file plugin failure issue on Windows after node restart
```
/sig azure
/sig windows
/assign @karataliu 
@feiskyer  pls mark this PR as v1.10 milestone, thanks
2018-03-01 09:03:49 -08:00
Kubernetes Submit Queue
9399359248 Merge pull request #60623 from feiskyer/vmtype
Automatic merge from submit-queue (batch tested with PRs 60623, 60625, 60520). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Set default vmtype to standard if not set

**What this PR does / why we need it**:

When using IMDS, kubelet reports Failed to extract vmssVMName even when vmtype is not set:

```
E0301 05:30:57.515306    3124 azure_vmss_cache.go:52] Failed to extract vmssVMName "77890k8s9010"
E0301 05:30:57.515306    3124 kubelet_node_status.go:79] Unable to construct v1.Node object for kubelet: failed to get external ID from cloud provider: not a vmss instance
```

azure cloud provider shouldn't call vmss logic in this case. It should assume stardard vmtype if it is not set.


**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #60622

**Special notes for your reviewer**:

**Release note**:

```release-note
Set Azure vmType to standard if it is not set in azure cloud config.
```
2018-03-01 09:03:46 -08:00
Dan Williams
8778e50083 kubelet: make --cni-bin-dir accept a comma-separated list of CNI plugin directories
Allow CNI-related network plugin drivers (kubenet, cni) to search a list of
directories for plugin binaries instead of just one.  This allows using an
administrator-provided path and fallbacks to others (like the previous default
of /opt/cni/bin) for backwards compatibility.
2018-03-01 10:51:18 -06:00
Dan Williams
ee2ea223e7 kubenet: accept a list of CNI binary plugin paths 2018-03-01 10:50:40 -06:00
Dan Williams
69ac723b78 cni: convert "vendor" option to multiple plugin binary search paths
It's only used for the test code and after talking with Rajat, the
vendor stuff was never really used anyway.  So convert the vendor
code into a plain array of plugin binary search paths, which is all
the vendor code was doing anyway.
2018-03-01 10:43:23 -06:00
Dan Williams
16eaaaed83 cni: clarify bin/conf directory variable names
pluginDir -> confDir
DefaultNetDir -> DefaultConfDir
DefaultCNIDir -> DefaultBinDir
2018-03-01 10:43:22 -06:00
Kubernetes Submit Queue
6608a47c84 Merge pull request #60572 from charrywanganthony/show-all_descr
Automatic merge from submit-queue (batch tested with PRs 60362, 60629, 60572). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

improve get description

ref: #60210

/assign @deads2k 

**Release note**:

```release-note
NONE
```
2018-03-01 07:42:54 -08:00
Kubernetes Submit Queue
c09cd29c6c Merge pull request #60629 from CaoShuFeng/deprecate_warnning
Automatic merge from submit-queue (batch tested with PRs 60362, 60629, 60572). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

fix warning info format

Before this change:
```
$ kubectl exec -p nginx-aaaaaaaaaaaaa-67b58bf687-r68b9 ls
-p POD_NAME is DEPRECATED and will be removed in a future version. Use exec POD_NAME instead.bin
boot
dev
...

$ kubectl scale --replicas=2 job/pi
kubectl scale job is DEPRECATED and will be removed in a future version.job.batch "pi" scaled
```

After this change:
```
$ kubectl exec -p nginx-aaaaaaaaaaaaa-67b58bf687-r68b9 ls
-p POD_NAME is DEPRECATED and will be removed in a future version. Use exec POD_NAME instead.
bin
boot
dev
...

$ kubectl scale --replicas=2 job/pi
kubectl scale job is DEPRECATED and will be removed in a future version.
job.batch "pi" scaled
```



**What this PR does / why we need it**:

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-03-01 07:42:51 -08:00
Kubernetes Submit Queue
4fa92e801a Merge pull request #60362 from lcfang/test0224
Automatic merge from submit-queue (batch tested with PRs 60362, 60629, 60572). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

add TestUpdateStatus for horizontalpodautoscaler

**What this PR does / why we need it**:

add `TestUpdateStatus` for horizontalpodautoscaler, and remove the relevant `TODO TestUpdateStatus
`

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-03-01 07:42:48 -08:00
Beata Skiba
e5f8bfa023 Do not count failed pods as unready in HPA controller
Currently, when performing a scale up, any failed pods (which can be present for example in case of evictions performed by kubelet) will be treated as unready. Unready pods are treated as if they had 0% utilization which will slow down or even block scale up.

After this change, failed pods are ignored in all calculations. This way they do not influence neither scale up nor scale down replica calculations.
2018-03-01 16:21:02 +01:00
Kubernetes Submit Queue
b92807f997 Merge pull request #60580 from soltysh/table_converter
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

 Add missing table converters for server side printing 

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #60488

/assign @smarterclayton @juanvallejo 
/kind bug

**Release note**:
```release-note
None
```
2018-03-01 05:23:37 -08:00
linyouchong
62021378c1 delete unused variable 2018-03-01 19:31:23 +08:00
Marek Grabowski
b27157a271 Increase loging verbosity for deleting stateful set pods 2018-03-01 09:33:18 +00:00
Cao Shufeng
8be9d275b6 remove "scale job" from help info
Remove "scale job" from help info since it's deprecated
2018-03-01 17:00:05 +08:00
Cao Shufeng
f0cd1ad04e fix warning info format
Before this change:
```
$ kubectl exec -p nginx-aaaaaaaaaaaaa-67b58bf687-r68b9 ls
-p POD_NAME is DEPRECATED and will be removed in a future version. Use exec POD_NAME instead.bin
boot
dev
...

$ kubectl scale --replicas=2 job/pi
kubectl scale job is DEPRECATED and will be removed in a future version.job.batch "pi" scaled
```

After this change:
```
$ kubectl exec -p nginx-aaaaaaaaaaaaa-67b58bf687-r68b9 ls
-p POD_NAME is DEPRECATED and will be removed in a future version. Use exec POD_NAME instead.
bin
boot
dev
...

$ kubectl scale --replicas=2 job/pi
kubectl scale job is DEPRECATED and will be removed in a future version.
job.batch "pi" scaled
```
2018-03-01 16:39:31 +08:00
WanLinghao
7489189c2a supplement for the fix of issue:
https://github.com/kubernetes/kubernetes/issues/60366

	modified:   pkg/kubectl/cmd/describe.go
2018-03-01 16:10:04 +08:00
andyzhangx
dce507ce69 add remount logic for azure file plugin
fix comments
2018-03-01 07:46:07 +00:00
Mayank Kumar
b888415ebf API Changes for RunAsGroup and Implementation and e2e 2018-02-28 22:09:56 -08:00
Kubernetes Submit Queue
cb9d6b5155 Merge pull request #59495 from ericchiang/client-auth-exec
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

 client-go: add an exec-based client auth provider

Updates https://github.com/kubernetes/features/issues/541
Implements https://github.com/kubernetes/community/pull/1503
Closes https://github.com/kubernetes/kubernetes/issues/57164

```release-note
client-go: alpha support for exec-based credential providers
```

/sig auth
/kind feature
2018-02-28 22:03:16 -08:00