From 0173d671dde09768ce57a3482f2903354ad0912f Mon Sep 17 00:00:00 2001 From: Serge Logvinov Date: Mon, 10 Apr 2023 07:59:39 +0300 Subject: [PATCH] doc: update readme Update README.md --- README.md | 14 ++++++++------ go.mod | 2 +- go.sum | 4 ++-- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 881103d..3ada506 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,18 @@ # Kubernetes cloud controller manager for Proxmox -In my opinion, Proxmox is like a manual way of creating a cloud. -There isn't much automation built into it. +To me, it seems like Proxmox is a bit old-fashioned when it comes to creating virtual machines. +It doesn't have a lot of automation built-in, so you have to do a lot of things manually. Proxmox is a good option if you have a static infrastructure or don't create new virtual machines very often. -I personally use terraform to launch kubernetes nodes, and when I scale down, I need to delete the node resource in kubernetes. -That's why I created the CCM (Cloud Controller Manager). -Originally, it was designed to work with [TalosCCM](https://github.com/siderolabs/talos-cloud-controller-manager), but it was not difficult to make it a standalone solution. + +I use Terraform to launch my Kubernetes nodes. +However, when I need to scale down the cluster, I have to manually delete the corresponding node resource in Kubernetes. +That's why I created the CCM (Cloud Controller Manager) for Proxmox. +Originally, it was designed to work with [Talos CCM](https://github.com/siderolabs/talos-cloud-controller-manager), but it was not difficult to make it as standalone solution. The CCM does a few things: it initialises new nodes, applies common labels to them, and removes them when they're deleted. It also supports multiple clusters, meaning you can have one kubernetes cluster across multiple Proxmox clusters. The basic definitions: -* kubernetes `region` is a Proxmox cluster +* kubernetes `region` is a Proxmox cluster `clusters[].region` * kubernetes `zone` is a hypervisor host machine name This makes it possible for me to use pods affinity/anti-affinity. diff --git a/go.mod b/go.mod index e280b56..2654c91 100644 --- a/go.mod +++ b/go.mod @@ -11,7 +11,7 @@ require ( k8s.io/client-go v0.26.3 k8s.io/cloud-provider v0.26.3 k8s.io/component-base v0.26.3 - k8s.io/klog/v2 v2.90.0 + k8s.io/klog/v2 v2.90.1 ) require ( diff --git a/go.sum b/go.sum index 865ccab..5bd7374 100644 --- a/go.sum +++ b/go.sum @@ -747,8 +747,8 @@ k8s.io/component-helpers v0.26.3 h1:eQ682yg1GiIGAsde+l2xL0P2yMYJOvypWsz6h6FtkZo= k8s.io/component-helpers v0.26.3/go.mod h1:feC+CaxJXULs5TSD3lG8K5ecftOkF8eY0pHQgd7koEI= k8s.io/controller-manager v0.26.3 h1:68orrBzfIUJNB+SAjlX6m8ocpHK1mz+/FUHu14+VHzc= k8s.io/controller-manager v0.26.3/go.mod h1:YS449osPmX9Q4xLcyuqEfVzqYcEDxjzzr1kMABouA1I= -k8s.io/klog/v2 v2.90.0 h1:VkTxIV/FjRXn1fgNNcKGM8cfmL1Z33ZjXRTVxKCoF5M= -k8s.io/klog/v2 v2.90.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/klog/v2 v2.90.1 h1:m4bYOKall2MmOiRaR1J+We67Do7vm9KiQVlT96lnHUw= +k8s.io/klog/v2 v2.90.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= k8s.io/kms v0.26.3 h1:+rC4BMeMBkH5hrfZt9WFMRrs2m3vY2rXymisNactcTY= k8s.io/kms v0.26.3/go.mod h1:69qGnf1NsFOQP07fBYqNLZklqEHSJF024JqYCaeVxHg= k8s.io/kube-openapi v0.0.0-20221012153701-172d655c2280 h1:+70TFaan3hfJzs+7VK2o+OGxg8HsuBr/5f6tVAjDu6E=