Deploy on cloud VMs #611
-
Currently, using this playbook to deploy on the cloud like on DigitalOcean droplets or Hetzner servers is impossible. This will allow people who don't have their own hardware to deploy Kubernetes clusters on the cloud. Expected BehaviorShould easily deploy to a cloud environment like DigitalOcean droplets, Hetzner servers etc. Current BehaviorIt installs k3s, kube-vip, and MetalLB, but you can't access the applications even after using a Traefik IngressRoute. Context (variables)Operating system: ubuntu Hardware: Hetzner server VMs Variables Used
k3s_version: "v1.31.2+k3s1"
ansible_user: "ubuntu"
systemd_dir: "/etc/systemd/system"
flannel_iface: "eth0"
apiserver_endpoint: "<some-ip>"
k3s_token: "NA"
extra_args: >-
{{ '--flannel-iface=' + flannel_iface if calico_iface is not defined and cilium_iface is not defined else '' }}
--node-ip={{ k3s_node_ip }}
extra_server_args: >-
{{ extra_args }}
{{ '--node-taint node-role.kubernetes.io/master=true:NoSchedule' if k3s_master_taint else '' }}
{% if calico_iface is defined or cilium_iface is defined %}
--flannel-backend=none
--disable-network-policy
--cluster-cidr={{ cluster_cidr | default('10.52.0.0/16') }}
{% endif %}
--tls-san {{ apiserver_endpoint }}
--disable servicelb
--disable traefik
extra_agent_args: >-
{{ extra_args }}
kube_vip_tag_version: "v0.8.5"
kube_vip_cloud_provider_tag_version: ""
kube_vip_lb_ip_range: ""
metal_lb_speaker_tag_version: "v0.14.8"
metal_lb_controller_tag_version: "v0.14.8"
metal_lb_ip_range: "192.168.30.80-192.168.30.90" Hosts
[master]
IP.ADDRESS.ONE
[node]
IP.ADDRESS.TWO
IP.ADDRESS.THREE
[k3s_cluster:children]
master
node Possible Solution
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Thanks. k3s was designed to not be in the cloud and this is more of a k3s request. That being said you should be able to disable metallb and it should just work. You don't need metallb in the cloud, because each cloud has a cloud load balancer already. |
Beta Was this translation helpful? Give feedback.
Thanks. k3s was designed to not be in the cloud and this is more of a k3s request. That being said you should be able to disable metallb and it should just work. You don't need metallb in the cloud, because each cloud has a cloud load balancer already.