RaspberryPiに入れたk3sをRancherサーバーから見えるようにした
Qiita初投稿です。
よろしくお願いします。
k3sをラズパイに入れてRancherでマルチクラスタ管理したらかなり強力だと思って、家のRaspberryPiで実験してみました。
色々ハマったので時系列に動くまでのメモ。
まず最初に何も考えずにやった(2月の終わり)
k3sのインストールは超簡単
$curl -sfL https://get.k3s.io | sh -
$k3s server
- k3sは問題なく動いた
- rancher-agentがarmでは動かない
うん。そらそうか。
dockerhubにarm版のrancher-agentがでた(3/14)
rancher-agentのimageを変更して試してみた
rancherの画面からクラスタのimportを選び、表示されたURLのYAMLを一旦保存
$curl --insecure -sfL https://35.200.55.75/v3/import/XXXXX.yaml > rancher.yaml
imageを変更(2箇所)
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: cattle-cluster-agent
namespace: cattle-system
...
containers:
...
- name: CATTLE_K8S_MANAGED
value: "true"
image: rancher/rancher-agent:v2.2.0-rc4-arm64
...
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: cattle-node-agent
...
containers:
- name: agent
image: rancher/rancher-agent:v2.2.0-rc4-arm64
前回とは違うエラーだけど、やっぱり動かない。
よくよく考えたら、rasbianは32bitだってことに気づく。。。
ラズパイのOSから書き換えてみる(3/15)
2020/3/21追記 rasbianOSを64bitにする。
まだ安定版ではないですが、k3sが動作することは確認できました。こっちの方が簡単です。
sudo rpi-update
sudo vi /boot/config.txt
arm_64bit=1
以前の手順
OSはOpenSUSEのLeap15.0を使用
https://en.opensuse.org/HCL:Raspberry_Pi3
(うちの環境だと、Tumbleweedはwifiモジュールを認識しなかった。ラズパイ用のUbuntuもwifiがうまく動かなかった。)
OS作成(macから)
注)ddで書き込む先はよく確認して行ってください。
$xzcat openSUSE-Leap15.0-ARM-JeOS-raspberrypi3.aarch64-2018.07.02-Buildlp150.1.1.raw.xz | dd bs=4m of=/dev/rdisk2 ;sync
最初と同様にk3sを導入後、起動
$k3s server
...
INFO[2019-03-16T14:41:03.713645166Z] Waiting for containerd startup: rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection error: desc = "transport: Error while dialing dial unix /run/k3s/containerd/containerd.sock: connect: connection refused"
なんか、rasbianでは見なかったエラーが出た。。。
原因は調べられてないけど、opensuseの場合、serverとagentを別々に起動したらうまくいった
(resolv.confとかネットワーク周りだろうと勝手に想像)
$k3s server --disable-agent
$cat /var/lib/rancher/k3s/server/node-token
→表示されるtokenをメモ
$k3s agent -node-name raspberrypi3 --token <token> --server https://<ラズパイのIP>:6443
あとは、3/7と同じようにrancher-agentをインポート(3/15時点でrc6)
無事起動!
podの状態
$kubectl get po -n cattle-system
B8-27-EB-98-2F-9B:~/kubernetes # kubectl get po -n cattle-system
NAME READY STATUS RESTARTS AGE
cattle-cluster-agent-686954759-z7xjn 1/1 Running 0 2m13s
cattle-node-agent-jzl8n 1/1 Running 0 2m9s
いろいろ組み合わせのマジックがあるみたいで、またバージョン上がると動かないとかいろいろありそうだけど、とりあえずやれそうな気はしてきた。
Author And Source
この問題について(RaspberryPiに入れたk3sをRancherサーバーから見えるようにした), 我々は、より多くの情報をここで見つけました https://qiita.com/yamaneko_usg3/items/56a55d7e461c8bf0c67a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .