Updated docs

This commit is contained in:
Max Pfeiffer
2025-09-19 18:45:28 +02:00
parent b57e34b5bb
commit cbddb85247

View File

@@ -1,6 +1,9 @@
# proxmox-talos-opentofu # proxmox-talos-opentofu
Proof of concept project using [OpenTofu](https://opentofu.org/) to install a Kubernetes cluster on a Proxmox VE A turnkey Kubernetes cluster built with [Talos Linux](https://www.talos.dev/) running on a
hypervisor using [Talos Linux](https://www.talos.dev/). [Proxmox VE hypervisor](https://www.proxmox.com/en/products/proxmox-virtual-environment/overview).
Provisioning is done with [OpenTofu](https://opentofu.org/).
The Kubernetes cluster uses [Cilium](https://cilium.io/) as Container Network Interface (CNI).
## Requirements ## Requirements
You need to have installed on your local machine: You need to have installed on your local machine:
@@ -8,10 +11,13 @@ You need to have installed on your local machine:
* [kubectl](https://kubernetes.io/docs/reference/kubectl/) (for testing and cluster interaction) * [kubectl](https://kubernetes.io/docs/reference/kubectl/) (for testing and cluster interaction)
## Provisioning ## Provisioning
The project is grouped in two modules: The project is grouped in two sections:
* proxmox: provisioning of virtual machines, operating systems and Kubernetes cluster * proxmox: provisioning of virtual machines, operating systems and Kubernetes cluster
* kubernetes: provisioning of Kubernetes cluster resources * kubernetes: provisioning of Kubernetes cluster resources
You will have an [ArgoCD](https://argoproj.github.io/cd/) instance running in the cluster eventually. You can then
install your applications using the GitOps approach.
### Proxmox VE ### Proxmox VE
So you want first to provision the Proxmox part: create a `configuration.auto.tfvars` file based on the example and So you want first to provision the Proxmox part: create a `configuration.auto.tfvars` file based on the example and
edit it so it suits your needs: edit it so it suits your needs:
@@ -54,10 +60,15 @@ tofu init
tofu plan tofu plan
tofu apply tofu apply
``` ```
The [ArgoCD](https://argoproj.github.io/cd/) instance should be available under the `argocd_domain` you configured
in your `configuration.auto.tfvars` file i.e., http://argocd.local.
## Information Sources ## Information Sources
* [Talos Linux documentation](https://www.talos.dev/v1.8/) * [Talos Linux documentation](https://www.talos.dev/v1.8/)
* [Talos Linux Image Factory](https://factory.talos.dev/) * [Talos Linux Image Factory](https://factory.talos.dev/)
* Terraform providers/modules * Terraform providers:
* [terraform-provider-proxmox](https://github.com/Telmate/terraform-provider-proxmox) * [terraform-provider-proxmox](https://github.com/Telmate/terraform-provider-proxmox)
* [terraform-provider-talos](https://github.com/siderolabs/terraform-provider-talos) * [terraform-provider-talos](https://github.com/siderolabs/terraform-provider-talos)
* [terraform-provider-helm](https://github.com/hashicorp/terraform-provider-helm)
* Helm charts:
* [ArgoCD](https://github.com/argoproj/argo-helm/tree/main/charts/argo-cd)