k0sproject / k0sproject/k0sctl
Multiple privateAddress (node InternalIP)
- Dominant language
- Go
- Stars
- 582
- Forks
- 113
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 34
Description
I'm trying to deploy a k0s cluster using k0sctl with dualStack ipv4/ipv6.
My goal is to use cilium and make use of nodes InternalIPs.
k0sctl.yaml:
```yaml
apiVersion: k0sctl.k0sproject.io/v1beta1
kind: Cluster
metadata:
name: magi
spec:
hosts:
- role: controller+worker
privateInterface: eth0
ssh:
address: 192.168.1.50
user: root
keyPath: ~/.ssh/id_rsa
noTaints: true
- role: worker
privateInterface: eth0
ssh:
address: 192.168.1.60
user: root
keyPath: ~/.ssh/id_rsa
- role: worker
privateInterface: eth0
ssh:
address: 192.168.1.70
user: root
keyPath: ~/.ssh/id_rsa
k0s:
version: v1.27.1+k0s.0
config:
apiVersion: k0s.k0sproject.io/v1beta1
kind: ClusterConfig
metadata:
name: magi
spec:
network:
podCIDR: "10.244.0.0/16"
serviceCIDR: "10.96.0.0/12"
provider: custom
dualStack:
enabled: true
IPv6podCIDR: "fd00::/108"
IPv6serviceCIDR: "fd01::/108"
```
Each node have an IPv4 and and IPv6 address, the problem is that when I deploy my cluster, my nodes only have the IPv4 InternalIP.
Is there any way to set multiples InternalIP on cluster deployment?
UPDATE:
I achieve to get this working by modifying manually the `k0scontroller.service`:
```
ExecStart=/usr/local/bin/k0s controller --config=/etc/k0s/k0s.yaml --enable-worker=true --no-taints=true --kubelet-extra-args=--node-ip=192.168.1.x,2a12:xxxx:xxxx:xxxx::x
```
The --node-ip kubelet argument can take multiple IP addresses separated with commas, but k0sctl cannot:
```yaml
spec:
hosts:
- role: controller+worker
privateAddress: 192.168.1.50,2a12:xxxx:xxxx:xxxx::x
```
`FATA configuration validation failed: spec: (hosts: host #1: privateAddress: must be a valid IP address..). `
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.