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

Specifying cloud region causes vault deployment to fail (no PV's created to fulfill PVC's) #2359

Open
1 task done
ikegentz opened this issue Jan 11, 2025 · 3 comments
Open
1 task done
Labels
bug Something isn't working

Comments

@ikegentz
Copy link

Which version of kubefirst are you using?

2.7.9

Which cloud provider?

Vultr

Which DNS?

Cloudflare

Which installation type?

CLI

Which distributed Git provider?

GitHub

Did you use a fork of gitops-template?

No

Which Operating System?

Linux

What is the issue?

This issue is related to Vultr specifically. If you specify the --cloud-region <region ID> setting in kubefirst beta vultr create ..., Vault will fail to deploy. Vault ultimately fails because it creates several PVC's that rely on Vultr block storage PV's to ulimately be provisioned, however none get created and the PVC's just sit there forever never being fulfilled.

In my case, I was trying to create things in the Chicago (ord) region. The cluster came up fine, however no PV's ever got created. I'm almost certain this is because currently in the Americas, there are only 2 supported regions for Vultr block storage: New Jersey and Los Angeles. I re-attempted to kubefirst beta vultr create ... and left the region unset to test this theory, and then sure enough everything worked out just fine, and Vultr block storage ultimately got created for each node, in New Jersey (the default region), same with the cluster.

I'm also fairly certain you could specify --cloud-region, and have it work, you'd just need to set it to NJ or LA.

As to what the resolution here is, maybe just have a check for Vultr specifically, that looks for what region is being specified in --cloud-region, and only allow NJ/LA, since those are the only ones with block storage, so the only ones that will actually work?

Code of Conduct

  • I agree to follow this project's Code of Conduct
@ikegentz ikegentz added the bug Something isn't working label Jan 11, 2025
@muse-sisay
Copy link
Contributor

Hi @ikegentz

Thank you for reporting, I actually run into the same problem this Wednesday. After digging a little bit I found out why

  • Vultr offers NVME backed block storage, traditional spinning rust or both depending on the region. For HDD backed block storage the minimum required size is 40 GB, while its 10 GB for NVME drive. You can use their API to find out what is available in each region. block_storage_storage_opt indicates HDD storage is available. block_storage_high_perf indicates NVMe storage is available.
  • Chicago and Seattle region only offers HDD backed block storage.
  • Most PVC in Kubefirst Platform are 10GB and lessthan.
  • If you choose a region with HDD backed block storage, Kubefirst installation will fail as most PVC request 10GB or less. This includes Atlantis(?? maybe) and Vault.

In the mean time you, can use regions with NVME block or fork gitops-template repository to update PVC size. I do apologize both, solutions are not ideal but I hope they are enough while we work on a patch.

Sincerely,
Muse

@ikegentz
Copy link
Author

No worries Muse, thanks for the info. For my use case the region wasn't super important so I just left it unspecified and let it use the default (NJ).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants