cluster-api-provider-cloudstack icon indicating copy to clipboard operation
cluster-api-provider-cloudstack copied to clipboard

Support re-assignment of another failure domain when the machine failed to provision

Open jhaanvi5 opened this issue 1 year ago β€’ 14 comments
trafficstars

Issue #352

Description of changes: CAPC chooses aΒ random failure domainΒ to deploy worker machines. When this VM deploy fails, irrespective of the type of error, CAPC will keep re-attempting to deploy a VM until CAPI replaces the owner machine. This change introduces a failure domain balancer with fallback mechanism, primary balancer selects failure domain from network with most free IPs and if it fails it fallbacks to random failure domain selection.

Testing performed: make test

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

jhaanvi5 avatar Apr 01 '24 22:04 jhaanvi5

CLA Signed

The committers listed above are authorized under a signed CLA.

  • :white_check_mark: login: jhaanvi5 (565b1075f15a482db15a177c173b85e086879371, b63e0f4bfee2b71958807d6ba712615a03feb9eb, f480afedf65c772024cb7097034e2427ec855d80, 1793473348dd59e976e1e5d9968fc03b61a4b9fc, 5cc66633ab1b62c7bad5f31f4147ff141a610254)

Welcome @jhaanvi5!

It looks like this is your first PR to kubernetes-sigs/cluster-api-provider-cloudstack πŸŽ‰. Please refer to our pull request process documentation to help your PR have a smooth ride to approval.

You will be prompted by a bot to use commands during the review process. Do not be afraid to follow the prompts! It is okay to experiment. Here is the bot commands documentation.

You can also check if kubernetes-sigs/cluster-api-provider-cloudstack has its own contribution guidelines.

You may want to refer to our testing guide if you run into trouble with your tests not passing.

If you are having difficulty getting your pull request seen, please follow the recommended escalation practices. Also, for tips and tricks in the contribution process you may want to read the Kubernetes contributor cheat sheet. We want to make sure your contribution gets all the attention it needs!

Thank you, and welcome to Kubernetes. :smiley:

k8s-ci-robot avatar Apr 01 '24 22:04 k8s-ci-robot

Hi @jhaanvi5. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

k8s-ci-robot avatar Apr 01 '24 22:04 k8s-ci-robot

Deploy Preview for kubernetes-sigs-cluster-api-cloudstack ready!

Name Link
Latest commit 5cc66633ab1b62c7bad5f31f4147ff141a610254
Latest deploy log https://app.netlify.com/sites/kubernetes-sigs-cluster-api-cloudstack/deploys/664f92a1e117ce000890d2d3
Deploy Preview https://deploy-preview-353--kubernetes-sigs-cluster-api-cloudstack.netlify.app
Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

netlify[bot] avatar Apr 01 '24 22:04 netlify[bot]

/cc @vignesh-goutham

jhaanvi5 avatar Apr 01 '24 23:04 jhaanvi5

/uncc @chrisdoherty4

chrisdoherty4 avatar Apr 02 '24 14:04 chrisdoherty4

/ok-to-test

rohityadavcloud avatar Apr 11 '24 03:04 rohityadavcloud

/uncc chrisdoherty4

chrisdoherty4 avatar Apr 30 '24 13:04 chrisdoherty4

@jhaanvi5 What is the status/ETA for this PR? I am going through the open issues and tasks for the next release of CAPC (v0.5.0). It would be good to have an estimate to decided whether to include this in v0.5.0 or not.

cc: @g-gaston @vignesh-goutham @vivek-koppuru

vishesh92 avatar May 22 '24 07:05 vishesh92

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: jhaanvi5, vivek-koppuru Once this PR has been reviewed and has the lgtm label, please ask for approval from vishesh92. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

k8s-ci-robot avatar May 23 '24 18:05 k8s-ci-robot

@vishesh92 Figuring this out, I think this is done for the most part so it would be great to get your review as well on this. This came as an ask so need to follow up based on whether any of these changed can't make it to the v0.5.0 release, but we would love to have it included pending review from you all!

vivek-koppuru avatar May 23 '24 23:05 vivek-koppuru

PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

k8s-ci-robot avatar May 28 '24 22:05 k8s-ci-robot

@vishesh92 Figuring this out, I think this is done for the most part so it would be great to get your review as well on this. This came as an ask so need to follow up based on whether any of these changed can't make it to the v0.5.0 release, but we would love to have it included pending review from you all!

@vivek-koppuru I reviewed this PR a little bit and have same questions as @g-gaston . Could you please resolve/address the comments? This PR also has some conflicts now.

vishesh92 avatar May 31 '24 21:05 vishesh92

The Kubernetes project currently lacks enough contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle stale
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Aug 29 '24 22:08 k8s-triage-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle rotten
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

k8s-triage-robot avatar Sep 28 '24 22:09 k8s-triage-robot