k3sはRancher Labsが開発した軽量なKubernetes。Raspberry PiのようなIoT機器からx86な1Uサーバー、クラウド環境上など様々なところでKubernetesを動かすことができます。
Raspberry Pi 2や3でk3sを動かすには
まずcgroupの設定を行います。cgroup_memory
とcgroup_enable
を追記します。設定後、再起動します。
raspbian# sudo vi /boot/cmdline.txt ... cgroup_memory=1 cgroup_enable=memory
あとは公式サイトにあるように、コマンドを実行するだけです。 30秒から1分程度待ちます(microSDの読み書き性能による)。
raspbian# curl -sfL https://get.k3s.io | sh -
しばらく待ったら、kubectl get no
を実行してみます。何らかのエラーが出たらsudo systemctl status k3s
を実行してサービスの状態を確認し、サービスが起動していない場合はk3sサービスをrestart
しましょう。
raspbian# kubectl get no NAME STATUS ROLES AGE VERSION raspberrypi Ready <none> 11s v1.14.1-k3s.4
だいたいk3sを実行すると、50MBくらいのメモリーを消費するようです。使わないときはsudo systemctl stop k3s
とsudo systemctl disable k3s
をしておけば良いと思います。
手元ではRaspberry Pi 2および3とRaspbian 9 (stretch)の組み合わせ、x86サーバーとUbuntu Server 16.04、18.04、CentOS 7の組み合わせで動作するのを確認しています。利用は簡単ですし、割と便利ですね。