diff --git a/charts/proxmox-cloud-controller-manager/Chart.yaml b/charts/proxmox-cloud-controller-manager/Chart.yaml index e27ad2a..9b54b25 100644 --- a/charts/proxmox-cloud-controller-manager/Chart.yaml +++ b/charts/proxmox-cloud-controller-manager/Chart.yaml @@ -1,20 +1,22 @@ apiVersion: v2 name: proxmox-cloud-controller-manager -description: A Helm chart for Kubernetes +description: Cloud Controller Manager plugin for Proxmox type: application home: https://github.com/sergelogvinov/proxmox-cloud-controller-manager -icon: https://proxmox.com/favicon.ico +icon: https://raw.githubusercontent.com/sergelogvinov/proxmox-cloud-controller-manager/main/charts/proxmox-cloud-controller-manager/icon.png sources: - https://github.com/sergelogvinov/proxmox-cloud-controller-manager keywords: - ccm + - proxmox + - kubernetes maintainers: - name: sergelogvinov url: https://github.com/sergelogvinov # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. # Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.2.5 +version: 0.2.6 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. diff --git a/charts/proxmox-cloud-controller-manager/README.md b/charts/proxmox-cloud-controller-manager/README.md index f4a2fce..aa8df0b 100644 --- a/charts/proxmox-cloud-controller-manager/README.md +++ b/charts/proxmox-cloud-controller-manager/README.md @@ -1,8 +1,14 @@ # proxmox-cloud-controller-manager -![Version: 0.2.5](https://img.shields.io/badge/Version-0.2.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v0.5.0](https://img.shields.io/badge/AppVersion-v0.5.0-informational?style=flat-square) +![Version: 0.2.6](https://img.shields.io/badge/Version-0.2.6-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v0.5.0](https://img.shields.io/badge/AppVersion-v0.5.0-informational?style=flat-square) -A Helm chart for Kubernetes +Cloud Controller Manager plugin for Proxmox + +The Cloud Controller Manager (CCM) is responsible for managing node resources in cloud-based Kubernetes environments. + +Key functions of the Cloud Controller Manager: +- `Node Management`: It manages nodes by initializing new nodes when they join the cluster (e.g., during scaling up) and removing nodes when they are no longer needed (e.g., during scaling down). +- `Cloud-Specific Operations`: The CCM ensures that the cloud provider's API is integrated into the Kubernetes cluster to control and automate tasks like load balancing, storage provisioning, and node lifecycle management. **Homepage:** @@ -16,7 +22,18 @@ A Helm chart for Kubernetes * -Example: +## Proxmox permissions + +```shell +# Create role CCM +pveum role add CCM -privs "VM.Audit" +# Create user and grant permissions +pveum user add kubernetes@pve +pveum aclmod / -user kubernetes@pve -role CCM +pveum user token add kubernetes@pve ccm -privsep 0 +``` + +## Helm values example ```yaml # proxmox-ccm.yaml @@ -51,7 +68,7 @@ Deploy chart: ```shell helm upgrade -i --namespace=kube-system -f proxmox-ccm.yaml \ - proxmox-cloud-controller-manager charts/proxmox-cloud-controller-manager + proxmox-cloud-controller-manager oci://ghcr.io/sergelogvinov/charts/proxmox-cloud-controller-manager ``` ## Values diff --git a/charts/proxmox-cloud-controller-manager/README.md.gotmpl b/charts/proxmox-cloud-controller-manager/README.md.gotmpl index 38b679d..4be1166 100644 --- a/charts/proxmox-cloud-controller-manager/README.md.gotmpl +++ b/charts/proxmox-cloud-controller-manager/README.md.gotmpl @@ -6,6 +6,12 @@ {{ template "chart.description" . }} +The Cloud Controller Manager (CCM) is responsible for managing node resources in cloud-based Kubernetes environments. + +Key functions of the Cloud Controller Manager: +- `Node Management`: It manages nodes by initializing new nodes when they join the cluster (e.g., during scaling up) and removing nodes when they are no longer needed (e.g., during scaling down). +- `Cloud-Specific Operations`: The CCM ensures that the cloud provider's API is integrated into the Kubernetes cluster to control and automate tasks like load balancing, storage provisioning, and node lifecycle management. + {{ template "chart.homepageLine" . }} {{ template "chart.maintainersSection" . }} @@ -14,7 +20,18 @@ {{ template "chart.requirementsSection" . }} -Example: +## Proxmox permissions + +```shell +# Create role CCM +pveum role add CCM -privs "VM.Audit" +# Create user and grant permissions +pveum user add kubernetes@pve +pveum aclmod / -user kubernetes@pve -role CCM +pveum user token add kubernetes@pve ccm -privsep 0 +``` + +## Helm values example ```yaml # proxmox-ccm.yaml @@ -49,7 +66,7 @@ Deploy chart: ```shell helm upgrade -i --namespace=kube-system -f proxmox-ccm.yaml \ - proxmox-cloud-controller-manager charts/proxmox-cloud-controller-manager + proxmox-cloud-controller-manager oci://ghcr.io/sergelogvinov/charts/proxmox-cloud-controller-manager ``` {{ template "chart.valuesSection" . }} diff --git a/charts/proxmox-cloud-controller-manager/icon.png b/charts/proxmox-cloud-controller-manager/icon.png new file mode 100644 index 0000000..36a30d2 Binary files /dev/null and b/charts/proxmox-cloud-controller-manager/icon.png differ diff --git a/docs/deploy/cloud-controller-manager-daemonset.yml b/docs/deploy/cloud-controller-manager-daemonset.yml index 1c96b3e..a585737 100644 --- a/docs/deploy/cloud-controller-manager-daemonset.yml +++ b/docs/deploy/cloud-controller-manager-daemonset.yml @@ -5,7 +5,7 @@ kind: ServiceAccount metadata: name: proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0" @@ -18,7 +18,7 @@ kind: ClusterRole metadata: name: system:proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0" @@ -106,7 +106,7 @@ kind: DaemonSet metadata: name: proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0" diff --git a/docs/deploy/cloud-controller-manager-talos.yml b/docs/deploy/cloud-controller-manager-talos.yml index 2b41c1c..972b503 100644 --- a/docs/deploy/cloud-controller-manager-talos.yml +++ b/docs/deploy/cloud-controller-manager-talos.yml @@ -5,7 +5,7 @@ kind: ServiceAccount metadata: name: proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0" @@ -18,7 +18,7 @@ kind: ClusterRole metadata: name: system:proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0" @@ -106,7 +106,7 @@ kind: Deployment metadata: name: proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0" diff --git a/docs/deploy/cloud-controller-manager.yml b/docs/deploy/cloud-controller-manager.yml index b861a99..229dd5d 100644 --- a/docs/deploy/cloud-controller-manager.yml +++ b/docs/deploy/cloud-controller-manager.yml @@ -5,7 +5,7 @@ kind: ServiceAccount metadata: name: proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0" @@ -18,7 +18,7 @@ kind: ClusterRole metadata: name: system:proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0" @@ -106,7 +106,7 @@ kind: Deployment metadata: name: proxmox-cloud-controller-manager labels: - helm.sh/chart: proxmox-cloud-controller-manager-0.2.5 + helm.sh/chart: proxmox-cloud-controller-manager-0.2.6 app.kubernetes.io/name: proxmox-cloud-controller-manager app.kubernetes.io/instance: proxmox-cloud-controller-manager app.kubernetes.io/version: "v0.5.0"