Commit Graph

2604 Commits

Author SHA1 Message Date
k8s-ci-robot
7b9f6df068
Merge pull request #69163 from MrHohn/gce-cloud-beta-ds-mock
Add mock for UpdateBetaBackendService
2018-09-27 15:53:46 -07:00
k8s-ci-robot
58102b7517
Merge pull request #69077 from feiskyer/az-ip
Add fallbacks for getting node IP from Azure IMDS
2018-09-27 11:07:46 -07:00
Zihong Zheng
c9c39eef9c Add mock for UpdateBetaBackendService 2018-09-27 10:57:26 -07:00
k8s-ci-robot
f0311b52b3
Merge pull request #69042 from rramkumar1/fake-gce-1
Expose public function to init fake GCECloud + add common hooks
2018-09-27 07:18:22 -07:00
k8s-ci-robot
25607dea8c
Merge pull request #69027 from vainu-arto/aws-add-has-cluster-tags-tests
AWS: Add tests for awsTagging.hasClusterTag
2018-09-27 06:06:58 -07:00
k8s-ci-robot
3fe21e5433
Merge pull request #68922 from BenTheElder/version-staging
move pkg/util/version to staging
2018-09-26 22:59:42 -07:00
Arto Jantunen
986faed326 AWS: Add tests for awsTagging.hasClusterTag
Among other things these tests verify the fix for issue #64230.
2018-09-26 16:12:33 +03:00
Pengfei Ni
3bca7a0136 Add fallbacks for getting node IP from Azure IMDS 2018-09-26 13:18:10 +08:00
Walter Fender
47bfaa3aba Added support for regional calls to GetClusters
Fixed issues from lavalamp and verification.
Added todo.
Fixed import sections.
2018-09-25 15:36:04 -07:00
Rohit Ramkumar
8872f9465f Expose public function to init fake GCECloud + add common hooks 2018-09-25 15:13:26 -07:00
k8s-ci-robot
80db5eb641
Merge pull request #68465 from WanLinghao/unused_function_clean
clean unused function
2018-09-25 12:15:53 -07:00
Arto Jantunen
e952c12dfe AWS: Add a simple test for "shared" tag
For some reason this wasn't done in 0b5ae5391e.
2018-09-25 11:13:30 +03:00
Pengfei Ni
f8b2781f4f Add unit tests for getting vmss node IP 2018-09-25 11:22:52 +08:00
Pengfei Ni
303af63ec9 Get public IP for Azure vmss nodes
This is required for getting public IP when --public-ip-per-vm
(publicIpAddressConfiguration) is enabled for vmss.
2018-09-25 11:22:47 +08:00
Benjamin Elder
8b56eb8588 hack/update-gofmt.sh 2018-09-24 12:21:29 -07:00
Benjamin Elder
f828c6f662 hack/update-bazel.sh 2018-09-24 12:03:24 -07:00
Benjamin Elder
088cf3c37b find & replace version import 2018-09-24 12:03:24 -07:00
k8s-ci-robot
7ffaa2f713
Merge pull request #68388 from wgliang/fixbug/defer-in-loop
fix bug that defer in infinite loop
2018-09-23 19:27:03 -07:00
Pengfei Ni
83e64dd6d0 Add unit tests for InstanceShutdownByProviderID 2018-09-21 12:55:11 +08:00
Pengfei Ni
67069cc1e8 Fix nodes power state on Azure 2018-09-21 12:55:08 +08:00
Guoliang Wang
05aeea12ce fix bug that defer in infinite loop 2018-09-18 15:45:43 +08:00
Pengfei Ni
de9c127c94 Add events for azure-cloud-provider
When errors occur on azure cloud provider, events now are added so that users
could easily find the underground errors on Azure API.
2018-09-14 10:41:19 +08:00
Pengfei Ni
db470d37a4 Fix potential panic when getting azure load balancer status
The IP address and security group rules may be nil when the resources
are updating or deleting. Hence nil pointer deference may be happened
then.
2018-09-13 15:41:12 +08:00
Kubernetes Submit Queue
ba33abd528
Merge pull request #68236 from andrewsykim/cloud-provider-updates
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

update cloud provider deprecation notice

**What this PR does / why we need it**:
Updates cloud provider deprecation warning to clearly outline intentions set by sig cloud provider. 

**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 # https://github.com/kubernetes/kubernetes/issues/68234

**Special notes for your reviewer**:
also removed some extra white spaces

```release-note
NONE
```

/sig cloud-provider
cc @tpepper
2018-09-10 09:11:42 -07:00
WanLinghao
1ad93ca301 clean unused function in file pkg/cloudprovider/providers/gce/gce_loadbalancer.go 2018-09-10 19:07:52 +08:00
Kubernetes Submit Queue
8d1127cb41
Merge pull request #68199 from dims/deprecate-more-cloud-providers
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Deprecate cloudstack and ovirt controller projects

Change-Id: Icca9142940269ad1cd28f1f3491684a1bc626c55



**What this PR does / why we need it**:
Do we have folks invested in these providers trying to work on the external controllers for these providers? Is there a future for these providers? If not can we deprecate and eventually remove them?

**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**:
cc @ngtuna @sebgoa @svanharmelen (for cloudstack)
cc @simon3z 

**Release note**:

```release-note
Deprecate cloudstack and ovirt controllers
```
2018-09-08 18:28:35 -07:00
Kubernetes Submit Queue
10bde5090b
Merge pull request #68033 from yastij/instanceShutdown-azure
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

implement InstanceShutdownByProviderID for azure

**What this PR does / why we need it**: implements #66265

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Support NodeShutdown taint for azure
```
2018-09-08 10:43:34 -07:00
Yassine TIJANI
0048b0e8b7 implement InstanceShutdownByProviderID for azure 2018-09-07 21:11:15 +02:00
Kubernetes Submit Queue
4b4e1bec69
Merge pull request #67736 from cheftako/GetClusters
Automatic merge from submit-queue (batch tested with PRs 67736, 68123, 68138). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Added support to get clusters in gce cloud provider.

**What this PR does / why we need it**:
Implemented the call to get all cluster objects in a zone for a project.
Also added code to allow the container api to be set in the gce.conf
file.

**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-09-04 12:51:32 -07:00
andrewsykim
52bfbd45ae update cloud provider deprecation notice 2018-09-04 13:08:03 -04:00
Kubernetes Submit Queue
217a7f4059
Merge pull request #68210 from feiskyer/az-panic
Automatic merge from submit-queue (batch tested with PRs 67986, 68210, 67817). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Fix panic when processing http response

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

When Azure ARM API gets something wrong, kube-controller-manager may panic because of azure cloud provider:

```
/usr/local/go/src/runtime/asm_amd64.s:2361
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
	panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x1d4cad9]

goroutine 1386 [running]:
k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/runtime.HandleCrash(0x0, 0x0, 0x0)
	/go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:58 +0x107
panic(0x44468c0, 0x8b76a30)
	/usr/local/go/src/runtime/panic.go:502 +0x229
k8s.io/kubernetes/pkg/cloudprovider/providers/azure.processHTTPRetryResponse(0x0, 0x64ffec0, 0xc4229fd1f0, 0xc422ed05b0, 0x2, 0x2)
	/go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_backoff.go:364 +0x69
k8s.io/kubernetes/pkg/cloudprovider/providers/azure.(*Cloud).CreateOrUpdatePIPWithRetry.func1(0xc422ed0600, 0x0, 0x0)
	/go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_backoff.go:205 +0x298
```

This PR fixes that.

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

**Special notes for your reviewer**:

Should cherry pick to old releases.

**Release note**:

```release-note
Fix panic when processing Azure HTTP response.
```
2018-09-04 04:19:33 -07:00
Kubernetes Submit Queue
771bb86fa1
Merge pull request #67986 from andyzhangx/azure-lb-mixed-proto
Automatic merge from submit-queue (batch tested with PRs 67986, 68210, 67817). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

add mixed protocol support for azure load balancer

**What this PR does / why we need it**:
If user specify `service.beta.kubernetes.io/azure-load-balancer-mixed-protocols: "true"`, azure cloud provider will create both TCP and UDP lb rules, for more details, could refer to https://github.com/kubernetes/kubernetes/issues/66887

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

**Special notes for your reviewer**:
original `reconcileLoadBalancer` func is too big, I move part of code implementation to a standalone func `createLoadBalancerRule`

example service config:
```
apiVersion: v1
kind: Service
metadata:
  annotations:
    service.beta.kubernetes.io/azure-load-balancer-mixed-protocols: "true"
  name: web
  namespace: default
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: web
  sessionAffinity: None
  type: LoadBalancer
```

**Release note**:

```
add mixed protocol support for azure load balancer
```

/kind feature
/sig azure
/assign @feiskyer @khenidak
2018-09-04 04:19:30 -07:00
Pengfei Ni
071eb9f6bf Fix panic when processing http response 2018-09-04 14:26:19 +08:00
Davanum Srinivas
1ca80d3b32
Deprecate cloudstack and ovirt controller projects
Change-Id: Icca9142940269ad1cd28f1f3491684a1bc626c55
2018-09-03 18:44:04 -04:00
Eunsoo Park
da5618e66b Fixup openstack cloud provider loadbalancer deletion error
This change enables ```getLoadBalancer``` to return the loadbalancer even if no floating ip is associated to the VIP port of the loadbalancer.

Signed-off-by: Eunsoo Park <esevan.park@gmail.com>
2018-09-03 16:25:11 +09:00
Kubernetes Submit Queue
1ad28be4a0
Merge pull request #68017 from figo/node-status
Automatic merge from submit-queue (batch tested with PRs 65566, 67959, 68029, 68017, 67263). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

add test to verify vsphere cloud provider report node hostname

**What this PR does / why we need it**:
as in pull #67922 has modify vsphere cloud provider to report
node hostname, this patch is to add the test for it.

also fix an issue at InstanceID(), it suppose to return
cloudprovider.InstanceNotFound when vm not found,  
but it did double error type translation with a retry() logic,  
after removing the retry() (which is not necessary), the logic is simpler, and easier to understand how double translation happened, after the fix,
test TestInstance() can pass


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


**Special notes for your reviewer**:
as in the process of create pull to fix https://github.com/crosscloudci/crosscloudci/issues/65#,
i saw #67922 already merged, so this pull is just to submit the test part.

**Release note**:

```release-note
none
```


/cc @abrarshivani @BaluDontu @divyenpatel @imkin @kerneltime @luomiao @frapposelli @dougm @liggitt
/sig cloudprovider
2018-09-02 13:53:31 -07:00
Kubernetes Submit Queue
ba781540e0
Merge pull request #66835 from sjenning/aws-exist-check
Automatic merge from submit-queue (batch tested with PRs 67571, 67284, 66835, 68096, 68152). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

cloudprovider: aws: return true on existence check for stopped instances

xref https://bugzilla.redhat.com/show_bug.cgi?id=1559271
xref https://github.com/openshift/origin/issues/19899

background https://github.com/kubernetes/kubernetes/pull/45986#issuecomment-386332055

Basically our customers are hitting this issue where the Node resource is deleted when the AWS instances stop (not terminate).  If the instances restart, the Nodes lose any labeling/taints.

Openstack cloudprovider already made this change https://github.com/kubernetes/kubernetes/pull/59931

fixes https://github.com/kubernetes/kubernetes/issues/45118 for AWS

**Reviewer note**: valid AWS instance states are `pending | running | shutting-down | terminated | stopping | stopped`.  There might be a case for returning `false` for instances in `pending` and/or `terminated` state.  Discuss!

`InstanceID()` changes from https://github.com/kubernetes/kubernetes/pull/45986 credit @rrati 

@derekwaynecarr @smarterclayton @liggitt @justinsb @jsafrane @countspongebob
2018-08-31 20:41:40 -07:00
Seth Jennings
bbd643fb8a cloudprovider: aws: return true on existence check for stopped instances 2018-08-31 14:25:35 -05:00
andyzhangx
4e3b4a7f6a support cross resource group for azure file
fix test failure
2018-08-31 08:11:07 +00:00
Kubernetes Submit Queue
cfdefff3a9
Merge pull request #59930 from zetaab/shutdoaw
Automatic merge from submit-queue (batch tested with PRs 67368, 59930, 68074). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

implement InstanceShutdownByProviderID to aws cloudprovider

**What this PR does / why we need it**: implement InstanceShutdownByProviderID to aws cloudprovider

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

**Special notes for your reviewer**:

**Release note**:
```release-note
NONE
```
2018-08-30 12:40:32 -07:00
andyzhangx
815d4ba740 add mixed protocol support for azure load balancer
add logging

fix lb issue

fix comments

make code more clean
2018-08-30 08:42:17 +00:00
Jesse Haka
a68cbd65b7 implement InstanceShutdownByProviderID to aws cloudprovider
changes according what was asked

use string

do not delete instance if it is in any other state than running

use constants

fix
2018-08-30 08:51:26 +03:00
Kubernetes Submit Queue
8aea674681
Merge pull request #67984 from feiskyer/on-prem
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Add support for unmanaged nodes for Azure cloud provider

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

Continue of [Azure cross resource groups feature](https://github.com/kubernetes/features/issues/604).

This PR adds support for unmanaged nodes (such as on-prem or on other clouds) that are labeled with `alpha.service-controller.kubernetes.io/exclude-balancer=true` and `kubernetes.azure.com/managed=false`. Azure cloud provider would exclude such nodes from LoadBalancer backends and always assumes they are existing.

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

See KEP [here](https://github.com/kubernetes/community/blob/master/keps/sig-azure/0025-20180809-cross-resource-group-nodes.md).

**Special notes for your reviewer**:

Azure cloud provider won't provision network routes for on-prem nodes, so cluster admins should ensure the network (including pod-to-pod, pod-to-node and node-to-node connectivity) has been set up properly.

**Release note**:

```release-note
Azure cloud provider now supports unmanaged nodes (such as on-prem) that are labeled with `kubernetes.azure.com/managed=false` and `alpha.service-controller.kubernetes.io/exclude-balancer=true`
```

/assign @khenidak @andyzhangx
/sig azure
/kind feature
/milestone v1.12
2018-08-29 21:41:54 -07:00
Kubernetes Submit Queue
e41d9f1553
Merge pull request #67982 from zetaab/isshut
Automatic merge from submit-queue (batch tested with PRs 66577, 67948, 68001, 67982). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

implement InstanceShutdownByProviderID to openstack

**What this PR does / why we need it**: without this openstack cannot get shutdown taint when instance is shutdown (original pr where this feature was added https://github.com/kubernetes/kubernetes/pull/60009)

**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
Openstack supports now node shutdown taint. Taint is added when instance is shutdown in openstack.
```
2018-08-29 16:33:40 -07:00
hui luo
ce15129b9e add test to verify vsphere cloud provider report node hostname
as in pull #67922 has modify vsphere cloud provider to report
node hostname, this patch is to add the test for it.

also fix an issue at InstanceID(), it suppose to return
cloudprovider.InstanceNotFound when vm not found, after the fix,
test TestInstance() can pass
2018-08-29 11:46:24 -07:00
Jesse Haka
66b0ac4f57 implement InstanceShutdownByProviderID
return error if instance does not exist

do not export instanceshutoff
2018-08-29 14:35:20 +03:00
Jesse Haka
c4ff3d0593 remove : 2018-08-29 14:28:07 +03:00
Jesse Haka
7062cd5700 backport https://github.com/kubernetes/cloud-provider-openstack/pull/43 2018-08-29 14:22:53 +03:00
Pengfei Ni
9bbd5043ea Add unit tests 2018-08-29 15:02:56 +08:00
Pengfei Ni
919058b315 Compose routes for on-prem nodes
Compose faked routes for unmanaged nodes so that node controller would
assume the routes for them have already been created.
2018-08-29 14:28:30 +08:00