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

clarity of readme #192

Open
breakingflower opened this issue May 5, 2024 · 7 comments
Open

clarity of readme #192

breakingflower opened this issue May 5, 2024 · 7 comments
Labels
help wanted Extra attention is needed

Comments

@breakingflower
Copy link

breakingflower commented May 5, 2024

Feature Request

improve clarity of readme for non-terraformed clusters

Description

hi

I am new to k8s / talos. I set up a talos cluster using the definitions on https://www.talos.dev/v1.7/talos-guides/install/virtualized-platforms/proxmox/.

I want to manage PV/PVCs on proxmox with this csi, but I'm having difficulties setting up the provider. I followed your instructions but I cant get it to work. I read on your other repo's that you terraform the cluster and generate some local snippets with zone/region/provider information. I did not terraform my setup, just following the guide. It is already configured with control plane and workers.

I specifically face troubles with the Overview part:

  • where do i set region / zone information in proxmox. I have found a zone option under the datacenter in proxmox
  • i dont know how to set the node specs with kubectl. I was not able to get it to work with proxmox ccm.
  • the project in general is probably very clear for an expert but i am still a rookie.

Can you please share insight into how to set this up manually, without using your terraform provider? I have tried to use the tf provider but I cant get it to work - many errors / issues that I don't have the knowledge to solve.

Thanks for understanding my limited knowledge.

@sergelogvinov
Copy link
Owner

Hi @mirceanton Can you help me with it.

Thanks.

@sergelogvinov sergelogvinov added the help wanted Extra attention is needed label Jun 14, 2024
@vehagn
Copy link
Contributor

vehagn commented Jun 17, 2024

I wrote an article about how I got this working in my homelab here.

I had some difficulties to begin with as some of the terminology was new to me, but I tried explaining what I did in the article.
Maybe I can try to have a go at updating the readme for this project as well.

@sergelogvinov
Copy link
Owner

@vehagn Your article is excellent; I truly enjoyed it. Thank you very much!

Probably we need to add ADOPTERS.md file to the repo, and share our experience/projects.

@breakingflower
Copy link
Author

@vehagn Thank you so much. This article provided alot of clarity on the subject and actually it was very simple to do using your guide. There were just a few missing pieces with regards to the original readme which you complemented and improved very well.

One issue that I ran into was that you refer to the kubernetes.io/hostname: ctrl-00 which is the hostname of the talos node.
If you use the deployment guide on the talos.dev page it will autogenerate names like talos-abc-cde as the hostname. I noticed that using this name, the pods were unable to create data because you get a 'matching vm not found' error. This hostname from my understanding needs to be the same as the name of the VM on your proxmox node.
I set the hostname of the nodes in the proxmox gui to match the name of the VM (e.g. talos-ctrl-01). Now the provisioning works as intended.

A different way, although i did not test it yet, is to have a new kubernetes.io/proxmox-vm-name label that aligns with the proxmox vm name and use that to do the nodeselector:

      nodeSelector:
        kubernetes.io/proxmox-vm-name: talos-work-02

I'm not sure what best practices are in k8s. It seems reasonable to have the hostname be generated so it's unique, and attach new labels to make sure you can do upgrades on your cluster. Can you share some insight?

@sergelogvinov
Copy link
Owner

sergelogvinov commented Jun 19, 2024

Proxmox cloud is like manual cloud. Auto generated node-name very useful if you use node autoscaler. In terraform case better to set the node name in proxmox equal as in talos machine-config.

If you use Talos, try Talos CCM with Proxmox CCM. First one more powerful but you need to set properly metadata config.
https://github.com/sergelogvinov/terraform-talos/blob/98916a2ae48a501c75b6d30cbdcddfd74a8da8e3/proxmox/instances-web.tf#L55-L72

@sergelogvinov
Copy link
Owner

@vehagn if you will have a time add you project to ADOPTERS.md (it already merged)

@vehagn
Copy link
Contributor

vehagn commented Jun 19, 2024

@breakingflower I ran into the same issue the first time around, but found out I could template the machine config with

machine:
  network:
    hostname: ${hostname}

as I'm doing here. I'm hardcoding the hostnames as I don't care much for auto-scaling. If I undestand @sergelogvinov's example correctly I think this is what he is doing as well. The more "correct" way would of course be to allow for automatic scaling of nodes.

I thought that I had made a point of making sure that the Proxmox VM name matches the actual hostname, but I forgot to actually make it!

@sergelogvinov Opened a PR adding myself to ADOPTERS.md. I hope it's OK that I linked the article. I'm in the process of cleaning up my Homelab GitHub repo where I'll start to use this awesome project.

@vehagn vehagn mentioned this issue Jun 27, 2024
5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants