k0sproject / k0sproject/k0sctl
MetalLB and Traefik not getting installed in spec.k0s.config section
- Dominant language
- Go
- Stars
- 582
- Forks
- 113
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 34
Description
Hi, the extensions to install MetalLB and Traefik is being ignored. The cluster is getting built but these items are not getting configured.
```
apiVersion: k0sctl.k0sproject.io/v1beta1
kind: Cluster
metadata:
name: k0s-cluster
spec:
hosts:
- ssh:
address: 192.168.1.42
user: kube
port: 22
keyPath: ~/.ssh/id_rsa
role: controller
- ssh:
address: 192.168.1.47
user: kube
port: 22
keyPath: ~/.ssh/id_rsa
role: worker
- ssh:
address: 192.168.1.48
user: kube
port: 22
keyPath: ~/.ssh/id_rsa
role: worker
- ssh:
address: 192.168.1.49
user: kube
port: 22
keyPath: ~/.ssh/id_rsa
role: worker
k0s:
version: null
versionChannel: stable
dynamicConfig: false
config:
apiVersion: k0s.k0sproject.io/v1beta1
kind: ClusterConfig
metadata:
name: k0s
spec:
telemetry:
enabled: true
extensions:
helm:
repositories:
- name: traefik
url: https://helm.traefik.io/traefik
- name: bitnami
url: https://charts.bitnami.com/bitnami
charts:
- name: traefik
chartname: traefik/traefik
version: "9.11.0"
namespace: default
- name: metallb
chartname: bitnami/metallb
version: "1.0.1"
namespace: default
values: |2
configInline:
address-pools:
- name: generic-cluster-pool
protocol: layer2
addresses:
- 192.168.1.235-192.168.1.235
```
```
⣿⣿⡇⠀⠀⢀⣴⣾⣿⠟⠁⢸⣿⣿⣿⣿⣿⣿⣿⡿⠛⠁⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀█████████ █████████ ███
⠀⣿⣿⡇⣠⣶⣿⡿⠋⠀⠀⠀⢸⣿⡇⠀⠀⠀⣠⠀⠀⢀⣠⡆⢸⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀███ ███ ███
⠀⣿⣿⣿⣿⣟⠋⠀⠀⠀⠀⠀⢸⣿⡇⠀⢰⣾⣿⠀⠀⣿⣿⡇⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀███ ███ ███
⠀⣿⣿⡏⠻⣿⣷⣤⡀⠀⠀⠀⠸⠛⠁⠀⠸⠋⠁⠀⠀⣿⣿⡇⠈⠉⠉⠉⠉⠉⠉⠉⠉⢹⣿⣿⠀███ ███ ███
⠀⣿⣿⡇⠀⠀⠙⢿⣿⣦⣀⠀⠀⠀⣠⣶⣶⣶⣶⣶⣶⣿⣿⡇⢰⣶⣶⣶⣶⣶⣶⣶⣶⣾⣿⣿⠀█████████ ███ ██████████
k0sctl v0.17.4 Copyright 2023, k0sctl authors.
Anonymized telemetry of usage will be sent to the authors.
By continuing to use k0sctl you agree to these terms:
https://k0sproject.io/licenses/eula
INFO ==> Running phase: Set k0s version
INFO Looking up latest stable k0s version
INFO Using k0s version v1.28.5+k0s.0
INFO ==> Running phase: Connect to hosts
INFO [ssh] 192.168.1.49:22: connected
INFO [ssh] 192.168.1.42:22: connected
INFO [ssh] 192.168.1.48:22: connected
INFO [ssh] 192.168.1.47:22: connected
INFO ==> Running phase: Detect host operating systems
INFO [ssh] 192.168.1.49:22: is running Ubuntu 22.04.3 LTS
INFO [ssh] 192.168.1.48:22: is running Ubuntu 22.04.3 LTS
INFO [ssh] 192.168.1.42:22: is running Ubuntu 22.04.3 LTS
INFO [ssh] 192.168.1.47:22: is running Ubuntu 22.04.3 LTS
INFO ==> Running phase: Acquire exclusive host lock
INFO ==> Running phase: Prepare hosts
INFO ==> Running phase: Gather host facts
INFO [ssh] 192.168.1.47:22: using k0s-worker1 as hostname
INFO [ssh] 192.168.1.48:22: using k0s-worker2 as hostname
INFO [ssh] 192.168.1.49:22: using k0s-worker3 as hostname
INFO [ssh] 192.168.1.42:22: using k0s-control as hostname
INFO [ssh] 192.168.1.47:22: discovered ens33 as private interface
INFO [ssh] 192.168.1.48:22: discovered ens33 as private interface
INFO [ssh] 192.168.1.42:22: discovered ens33 as private interface
INFO [ssh] 192.168.1.49:22: discovered ens33 as private interface
INFO ==> Running phase: Validate hosts
INFO ==> Running phase: Gather k0s facts
INFO ==> Running phase: Validate facts
INFO [ssh] 192.168.1.42:22: validating configuration
INFO ==> Running phase: Configure k0s
INFO [ssh] 192.168.1.42:22: installing new configuration
INFO ==> Running phase: Initialize the k0s cluster
INFO [ssh] 192.168.1.42:22: installing k0s controller
INFO [ssh] 192.168.1.42:22: waiting for the k0s service to start
INFO [ssh] 192.168.1.42:22: waiting for kubernetes api to respond
INFO ==> Running phase: Install workers
INFO [ssh] 192.168.1.47:22: validating api connection to https://192.168.1.42:6443
INFO [ssh] 192.168.1.48:22: validating api connection to https://192.168.1.42:6443
INFO [ssh] 192.168.1.49:22: validating api connection to https://192.168.1.42:6443
INFO [ssh] 192.168.1.42:22: generating a join token for worker 1
INFO [ssh] 192.168.1.42:22: generating a join token for worker 2
INFO [ssh] 192.168.1.42:22: generating a join token for worker 3
INFO [ssh] 192.168.1.47:22: writing join token
INFO [ssh] 192.168.1.48:22: writing join token
INFO [ssh] 192.168.1.49:22: writing join token
INFO [ssh] 192.168.1.48:22: installing k0s worker
INFO [ssh] 192.168.1.47:22: installing k0s worker
INFO [ssh] 192.168.1.49:22: installing k0s worker
INFO [ssh] 192.168.1.48:22: starting service
INFO [ssh] 192.168.1.47:22: starting service
INFO [ssh] 192.168.1.49:22: starting service
INFO [ssh] 192.168.1.47:22: waiting for node to become ready
INFO [ssh] 192.168.1.48:22: waiting for node to become ready
INFO [ssh] 192.168.1.49:22: waiting for node to become ready
INFO ==> Running phase: Release exclusive host lock
INFO ==> Running phase: Disconnect from hosts
INFO ==> Finished in 1m45s
```
```
└─[$]> kubectl get all -A
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system pod/coredns-85df575cdb-jb77s 0/1 Running 0 73s
kube-system pod/coredns-85df575cdb-w8pqx 0/1 Running 0 83s
kube-system pod/konnectivity-agent-76hgn 1/1 Running 0 76s
kube-system pod/konnectivity-agent-ljf5x 1/1 Running 0 81s
kube-system pod/konnectivity-agent-vdn6c 1/1 Running 0 81s
kube-system pod/kube-proxy-4v8k8 1/1 Running 0 81s
kube-system pod/kube-proxy-cnj8n 1/1 Running 0 81s
kube-system pod/kube-proxy-knwd8 1/1 Running 0 76s
kube-system pod/kube-router-9wlld 1/1 Running 0 76s
kube-system pod/kube-router-qhks9 1/1 Running 0 81s
kube-system pod/kube-router-spsj8 1/1 Running 0 81s
kube-system pod/metrics-server-7556957bb7-6nfvk 0/1 Running 0 83s
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default service/kubernetes ClusterIP 10.96.0.1 443/TCP 108s
kube-system service/kube-dns ClusterIP 10.96.0.10 53/UDP,53/TCP,9153/TCP 98s
kube-system service/metrics-server ClusterIP 10.101.157.132 443/TCP 94s
NAMESPACE NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
kube-system daemonset.apps/konnectivity-agent 3 3 3 3 3 kubernetes.io/os=linux 97s
kube-system daemonset.apps/kube-proxy 3 3 3 3 3 kubernetes.io/os=linux 98s
kube-system daemonset.apps/kube-router 3 3 3 3 3 98s
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
kube-system deployment.apps/coredns 0/2 2 0 98s
kube-system deployment.apps/metrics-server 0/1 1 0 94s
NAMESPACE NAME DESIRED CURRENT READY AGE
kube-system replicaset.apps/coredns-85df575cdb 2 2 0 84s
kube-system replicaset.apps/metrics-server-7556957bb7 1 1 0 84s
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the spec.k0s.config.extensions.helm section and compare it with the configuration processed during the Configure k0s phase; then inspect the kubectl get all -A output for chart resources. Done means the supplied Traefik and MetalLB charts are installed after k0sctl completes, with the requested MetalLB values applied.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, helm, kubernetes
- Domain
- devops, infrastructure
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100