RaspberryPi에 넣은 k3s를 Rancher 서버에서 볼 수있게했습니다.

3482 단어 k3srancher
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의 이미지를 변경하고 시도했습니다.

    rancher 화면에서 클러스터 가져오기를 선택하고 표시된 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을 사용합니다.
    htps // 엔. 미안해. 오 rg / HCL : 라 sp 베 ry_ 피 3
    (우리 환경에서 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)

    안전하게 시작!





    포드 상태
    $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
    

    여러가지 조합의 매직이 있는 것 같고, 또 버젼 오르면 움직이지 않는다든가 여러가지 있을 것 같지만, 우선 할 수 있을 것 같은 생각은 해 왔다.

    좋은 웹페이지 즐겨찾기