このページには K3s に組み込まれているロードバランサーである Klipper LB の無効化する方法について書かれています。
Klipper Load Balancer #
K3s には Klipper Load Balancer (LB) というロードバランサーが組み込まれており、オンプレ環境でも簡単に LoadBalancer Service を作成することができます。
公式ドキュメントで説明しているように MetalLB など異なるロードバランサーを動かしたい場合は Klipper LB を無効化する必要があります。
Klipper LB の無効化手順 #
Klipper LB は次のように svc
から始まる DaemonSet として動いています。
$ sudo kubectl get ds -n kube-system
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
svclb-traefik 2 2 2 2 2 <none> 11h
ひとつのコマンドで Klipper LB を無効化するには次のコマンドを使えばよいです。
$ curl -sfL https://get.k3s.io | sh -s - server --disable servicelb
上記コマンド実行後に、再度 DaemonSet のリソースを確認すると次のように svc
から始まるリソースがなくなっていることが確認できます。
$ sudo kubectl get ds -n kube-system
No resources found in kube-system namespace.
なお、再度 Klipper LB を動かす場合は次のコマンドでクラスターを起動し直せばよいです。
$ curl -fL https://get.k3s.io | sh -s - server