Commit Graph

58506 Commits (79778288de676b5d2fde1f11ca92d57a3bf638f0)

Author SHA1 Message Date
itowlson 422dac5d9b Option to consolidate Azure NSG rules for services (#13)
* Option to consolidate Azure NSG rules for services

* Fixed panic checking for service on other Azure LB
2017-11-20 09:32:47 -08:00
Jingtao Ren 839e7f4c38 add test for flipServiceInternalAnnotation 2017-11-20 09:32:47 -08:00
Jingtao Ren 1b9b3fd7c7 assign random ip instead of hard code 2017-11-20 09:32:47 -08:00
Jingtao Ren ff961163aa clean up retry logic, since we try at least once 2017-11-20 09:32:47 -08:00
Jingtao Ren c3050e3ab4 make newFake* functions unexported 2017-11-20 09:32:47 -08:00
Jingtao Ren 1bf1c0d4d5 add azure_fakes.go Boilerplate header 2017-11-20 09:32:47 -08:00
Jingtao Ren 83f18ca3f0 refactor fake Delete function 2017-11-20 09:32:47 -08:00
Jingtao Ren 6b36a70d79 fix fake name convention 2017-11-20 09:32:47 -08:00
Jingtao Ren faec1d7f46 for error case, return nil for SG 2017-11-20 09:32:46 -08:00
Jingtao Ren 88aab6f67b fix azure bazel BUILD 2017-11-20 09:32:46 -08:00
NIkhil Bhatia e8c65f7130 address more code review comments 2017-11-20 09:32:46 -08:00
Jingtao Ren 69abfa676d naming, comment, typo correction 2017-11-20 09:32:46 -08:00
NIkhil Bhatia 408f739618 code-review- add logs and comments (#11)
add logs and comments & fix getMasterNode
2017-11-20 09:32:46 -08:00
Jingtao Ren 585dabc279 rename azure interfaces to conform with golang convention 2017-11-20 09:32:46 -08:00
Jingtao Ren 443339da0a fix documents, and correct typo 2017-11-20 09:32:46 -08:00
Jingtao Ren edfb2ad552 Azure load balancer general improvement 2017-11-20 09:32:46 -08:00
Kenneth Owens 1ce4ef8229 Adds the statefulset.kubernetes.io/pod-name label allowing users to
attach a Service to an individual Pod.
2017-11-20 09:13:07 -08:00
Kubernetes Submit Queue 2cbb07a439
Merge pull request #55871 from atlassian/unstructured-converter-no-mutation
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>.

Fix potential unexpected object mutation that can lead to data races

**What this PR does / why we need it**:
In #51526 I introduced an optimization - do a deep copy instead of to and from JSON roundtrip to convert anything that implements `runtime.Unstructured`. I just discovered that the method that is used there `UnstructuredContent()` in both `Unstructured` and `UnstructuredList` may mutate the original object.
2008750398/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go (L87-L92)
7c10cbc642/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured_list.go (L58-L75)
This is problematic because previously (before #51526) there was no mutation and because this is unexpected and may lead to data races - it is bad behaviour to mutate original object when you just want a copy of it.
This PR fixes the issue.

Without the fix the tests I've added are failing because when comparison is done original object is not the same:
```
converter_test.go:154: Object changed, diff: 
object.Object[items]:
  a: []interface {}{}
  b: <nil>
converter_test.go:154: Object changed, diff: 
object.Object[items]:
  a: []interface {}{map[string]interface {}{"kind":"Pod"}}
  b: <nil>
```

However the underlying issue is not fixed here - `UnstructuredContent()` is brittle and dangerous. Method name does not imply that it mutates data when you call it. And godoc does not mention that either:
509df603b1/staging/src/k8s.io/apimachinery/pkg/runtime/interfaces.go (L233-L249)
Something needs to be done about it IMO.
Also `UnstructuredContent()` implementation in `UnstructuredList` does not implement the behaviour required by godoc in `runtime.Unstructured`.

**Release note**:
```release-note
NONE
```
/kind bug
/sig api-machinery
/assign @sttts
2017-11-20 08:58:37 -08:00
Kubernetes Submit Queue bf32170dca
Merge pull request #54701 from mattjmcnaughton/mattjmcnaughton/53728-clean-up-reconcileAutoscaling
Automatic merge from submit-queue (batch tested with PRs 55974, 54701). 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>.

Refactor `reconcileAutoscaler` method in hpa

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

There have been a couple of recent bugs in the "normalizing" part of the
`reconcileAutoscaler` method. This part of the code base is responsible
for, among other things, taking the suggested desired replicas based on
the metrics, ensuring it conforms to certain conditions, and updating it
if it does not. Isolate the part that converts the desired replicas
based on a given set of rules into its own function.

We are refactoring this part of the code base to make the logic simpler
and to make it easier to write unit tests.

**Which issue this PR fixes**: 
Fixes #53728

**Release note**:
```release-note
NONE
```
2017-11-20 08:16:26 -08:00
Kubernetes Submit Queue 294f28f25d
Merge pull request #55974 from liggitt/spdy-transport-constructor
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>.

Allow constructing spdy executor from existing transports

If you already have an existing transport, it is not always possible to reconstruct a client config from it.

Allow constructing a spdy executor, given a connection/upgrade transport

```release-note
NONE
```
2017-11-20 08:11:13 -08:00
xiangpengzhao 6609512890 Regenerate API server serving certificates when upgrading. 2017-11-21 00:03:34 +08:00
xiangpengzhao 35138acfdf Add condition "len(cfg.DiscoveryToken) != 0" to ValidateArgSelection. 2017-11-20 23:54:03 +08:00
Kubernetes Submit Queue 98fb71e8ce
Merge pull request #55931 from andyzhangx/grs-ragrs
Automatic merge from submit-queue (batch tested with PRs 55963, 55790, 55670, 55931). 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 GRS, RAGRS storage account type support for azure disk

**What this PR does / why we need it**:
add Standard_GRS, Standard_RAGRS storage account type support for azure disk, and Standard_ZRS, Premium_GRS are not supported for azure disk now

**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 #55774

**Special notes for your reviewer**:

**Release note**:

```
add Standard_GRS, Standard_RAGRS support for azure disk
```
/sig azure
@rootfs @brendanburns
2017-11-20 07:24:10 -08:00
Kubernetes Submit Queue ca37dd85db
Merge pull request #55670 from dixudx/volumemgr_err_log
Automatic merge from submit-queue (batch tested with PRs 55963, 55790, 55670, 55931). 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>.

include error message for volumeManager during attach and mount

**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 #55609

**Special notes for your reviewer**:
/assign @jsafrane @jingxu97 

**Release note**:

```release-note
None
```
2017-11-20 07:24:07 -08:00
Kubernetes Submit Queue 7fd2b62776
Merge pull request #55790 from sttts/sttts-webhook-initializers
Automatic merge from submit-queue (batch tested with PRs 55963, 55790, 55670, 55931). 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>.

admission/webhook: move webhook initializer into plugin

Follow-up of https://github.com/kubernetes/kubernetes/pull/55132.

Non-generic plugin intitializers should go into the admission plugin itself. No need leak that into the generic apiserver. Keeping them contained in the webhook package makes it easier (it was already possible) for extension apiservers to provide one, but we don't need to leak it into the generic plugin initializer.
2017-11-20 07:24:04 -08:00
Kubernetes Submit Queue bebb9c9175
Merge pull request #55963 from sttts/sttts-drop-registrytester-scheme
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>.

apiserver: remove unneeded scheme from registry tester

Follow-up of https://github.com/kubernetes/kubernetes/pull/55622, removing an unused scheme.
2017-11-20 07:04:39 -08:00
Dr. Stefan Schimanski baba0c827b admission: make metrics compositional and move to metrics sub-package 2017-11-20 15:32:38 +01:00
Joe Betz d82ae45a4c #55183 follow up: Reinstate admission chain composition and ns test 2017-11-20 15:13:23 +01:00
Micah Hausler 502e8f8c29 Add aws elbv2 to vendor 2017-11-20 08:52:57 -05:00
Micah Hausler f9445b9dc7 Add Amazon NLB support 2017-11-20 08:52:57 -05:00
Kubernetes Submit Queue 142579c16d
Merge pull request #54260 from itowlson/azure-lb-session-affinity
Automatic merge from submit-queue (batch tested with PRs 55217, 54260). 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>.

Unit tests for Azure service session affinity

**What this PR does / why we need it**: We added session affinity support in the Azure load balancer in commit 8b50b83067. This PR adds unit tests for this behaviour.

**Which issue this PR fixes**: None

**Special notes for your reviewer**: None

**Release note**:

```release-note
NONE
```
2017-11-20 05:41:25 -08:00
Kubernetes Submit Queue 435cbb81d5
Merge pull request #55217 from FengyunPan/waitforattach
Automatic merge from submit-queue (batch tested with PRs 55217, 54260). 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>.

Checking Cinder disk when tickers are delivered

Cinder's WaitForAttach() runs probeAttachedVolume() 2 times per
second(L243 and L247), that triggers SCSI rescan and generates many udev "change"
events.

**Release note**:
```release-note
NONE
```
2017-11-20 05:41:21 -08:00
Kubernetes Submit Queue 6f1b655773
Merge pull request #55990 from hyperbolic2346/rollup
Automatic merge from submit-queue (batch tested with PRs 55615, 56010, 55990). 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>.

Master now supports staged upgrades.

It will wait until specifically told to upgrade with an action unless the configuration option require-manual-upgrade is false and then master nodes will upgrade immediately.



**What this PR does / why we need it**:
This update alters the kubernetes-master upgrade path for juju charms. It makes the master act like the worker in that it blocks the upgrade until each unit is specifically requested to update.
**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**:
PR for tests coming momentarily to juju-solutions/kubernetes-jenkins
**Release note**:

```release-note
Upgrading the kubernetes-master units now results in staged upgrades just like the kubernetes-worker nodes. Use the upgrade action in order to continue the upgrade process on each unit such as `juju run-action kubernetes-master/0 upgrade`
```
2017-11-20 04:50:03 -08:00
Kubernetes Submit Queue 2325b45a7a
Merge pull request #56010 from atlassian/unstructured-cleanups
Automatic merge from submit-queue (batch tested with PRs 55615, 56010, 55990). 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>.

Unstructured cleanups

**What this PR does / why we need it**:
Cleanups for `Unstructured`/`UnstructuredList` extracted from #55297.

**Release note**:
```release-note
NONE
```
/sig api-machinery
/kind enhancement
/assign @sttts
2017-11-20 04:50:01 -08:00
wackxu 3592c1be18 Improve kubeadm apply error logging style 2017-11-20 20:40:14 +08:00
Kubernetes Submit Queue 8463bdcdf8
Merge pull request #55615 from kawych/bump_heapster
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>.

Bump Heapster version to 1.5.0-beta.1

**What this PR does / why we need it**:
Bumps Heapster version to 1.5.0-beta.1

**Which issue(s) this PR fixes**:
Fixes #54962

**Special notes for your reviewer**:

```release-note
NONE
```
2017-11-20 04:07:18 -08:00
Kubernetes Submit Queue 54a4de04c0
Merge pull request #55956 from saheienko/glusterfs-pv-capacity
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>.

Fix representation of the pv's capacity which provisioned by glusterfs

**What this PR does / why we need it**:
This PR fixes representation of the pv's capacity which provisioned by glusterfs.
Gluster's volume size is calculated in GB, and than this value is setted as GiB for pv's storage capacity.

**Which issue(s) this PR fixes**:
Fixes #55937 

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-11-20 02:28:49 -08:00
Di Xu be8c5af15f include error message for volumeManager during attach and mount 2017-11-20 17:53:55 +08:00
Kubernetes Submit Queue 00b0f6fd34
Merge pull request #55943 from kawych/owners
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 kawych to cluster-monitoring deployment owners

**What this PR does / why we need it**:
Add kawych to cluster-monitoring deployment owners

```release-note
NONE
```
2017-11-20 01:40:59 -08:00
Kubernetes Submit Queue d4724d7e43
Merge pull request #55056 from porridge/typo-percentil
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>.

Fix a typo.

**Release note**:
```release-note
NONE
```
2017-11-20 01:40:50 -08:00
Dr. Stefan Schimanski d4d53c0e2a apiserver: remove unneeded scheme from registry tester 2017-11-20 09:39:44 +01:00
Dr. Stefan Schimanski e19257f2ec admission/webhook: move webhook initializer into plugin 2017-11-20 09:28:42 +01:00
Kubernetes Submit Queue 3df3c580b7
Merge pull request #54219 from m1093782566/ipset
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>.

Using ipset doing SNAT and packet filter in IPVS kube-proxy

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

Try ipset in ipvs proxy mode.

**Which issue this PR fixes**: 

fixes #54203

xref: #53393, #53775

**Special notes for your reviewer**:

**Release note**:

```release-note
Using ipset doing SNAT and packet filtering in IPVS kube-proxy
```

/sig network

/area kube-proxy
2017-11-19 22:09:13 -08:00
Humble Chirammal 13a86d8176 Avoid wrong filling of glusterfs volume spec in ConstructVolumeSpec()
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2017-11-20 10:48:35 +05:30
Kubernetes Submit Queue dcdb423ef4
Merge pull request #55186 from bcreane/named-port-egress
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>.

NetworkPolicy e2e: named port egress test

**What this PR does / why we need it**:
Add an e2e NetworkPolicy test that ensures that an egress rule that specifies a named port properly applies to egress traffic.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-11-19 19:57:17 -08:00
Clayton Coleman 09b64d36d2
rollingupdate should use explicit casting
It needs both internal and versioned - use the new helpers to detect
that
2017-11-19 20:41:02 -05:00
Clayton Coleman 8f4b6c8771
All commands must declare Unstructured or Internal
Callers must take a dependency on one or the other set of conversions
and default client behavior. Future changes may add a Versioned() type,
but this is an accurate reflection of current code state.
2017-11-19 20:41:02 -05:00
Clayton Coleman 04ab96d2bd
Unify Object and UnstructuredObject
The unified RESTMapper and Typer follow the new rules, but on error will
fallback to the legacy path (while still supporting Unstructured
objects). This allows callers to handle the appropriate distinction
themselves if necessary.

Add a LocalParam() method to the resource.Builder that DRYs up a large
chunk of complicated code in set commands.
2017-11-19 19:16:50 -05:00
Clayton Coleman 7563a0c4d8
Remove unstructured error checking from affected code
Also remove error messages that depended on ObjectKinds() - future
changes will potentially remove this interface and the replacements here
are equivalent.
2017-11-19 19:16:50 -05:00
Clayton Coleman e298aa39c3
Add a lazy discovery interface for Unstructured
Delays the error until the first call and then preserves it for others.
More closely matches the intent of the Object() calls. Loaders are now
lazy and don't need to return errors directly.

Sets the stage for collapsing unstructured and structured builders
together.
2017-11-19 19:16:50 -05:00