Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Controller doesnt reenque on instance group GC failure #186

Closed
nikhiljindal opened this issue Apr 3, 2018 · 4 comments
Closed

Controller doesnt reenque on instance group GC failure #186

nikhiljindal opened this issue Apr 3, 2018 · 4 comments
Assignees

Comments

@nikhiljindal
Copy link
Contributor

nikhiljindal commented Apr 3, 2018

Found while debugging kubemci failures.

Steps to repro:

  • Create an MCI ingress using kubemci
  • Delete the MCI using kubemci CLI

Expected: All GCP resources are deleted

Actual: Instance group is not deleted

Cause:
In kubemci we first delete the ingress and then delete the GCP resources (including backend service).
When ingress is deleted from cluster, ingress-gce controller tries to delete the corresponding instance group, but it fails since the backend service is still referring it.

Proposed fix:

  • For now, I will update kubemci to delete GCP resources first so that the backend service is deleted by the time we delete the ingress.
  • ingress-gce controller should be fixed to retry the deletion.

cc @bowei @nicksardo @MrHohn @freehan

@nikhiljindal
Copy link
Contributor Author

Steps to repo without using kubemci:

  • Create an ingress.
  • Optional: Add annotation kubernetes.io/ingress.class: gce-multi-cluster so that it only creates instance group and not the full stack.
  • Create a backend service pointing to the instance group for that ingress.
  • Delete the ingress.

Note that the instance group will not be deleted even after you delete the backend service

@nikhiljindal
Copy link
Contributor Author

Sent GoogleCloudPlatform/k8s-multicluster-ingress#169 to update kubemci

@nicksardo
Copy link
Contributor

nicksardo commented Apr 3, 2018

This is actually by design. ILBs use instance groups... Until we have a single controller responsible for managing the instance groups or we have a different set of instance groups for ILBs, I don't see this logic changing.

@rramkumar1
Copy link
Contributor

/close

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants