alexellis / k8s-on-raspbian

Kubernetes on Raspbian (Raspberry Pi)
https://blog.alexellis.io/build-your-own-bare-metal-arm-cluster/
MIT License
882 stars 130 forks source link

Readers' RPi clusters #11

Open alexellis opened 5 years ago

alexellis commented 5 years ago

Readers' RPi clusters

Please comment here here with your name and URL to your cluster, plus any useful notes you have.

I'll then add it to the Readers' RPi clusters in the main README.

Alex

Join the #arm-and-pi channel on OpenFaaS Slack to chat with our community - https://docs.openfaas.com/community/

dnachman commented 5 years ago

Hi @alexellis -

Link to my cluster: https://twitter.com/dnachman/status/1094419142948593664

Everything went relatively smoothly except for the dashboard deployment. The pod was crashing/retrying. Eventually I went in to the logs and saw this:

kubectl logs pod/kubernetes-dashboard-head-7bc4868777-lzv9r -n kube-system 2019/02/10 16:41:21 Starting overwatch 2019/02/10 16:41:21 Using namespace: kube-system 2019/02/10 16:41:21 Using in-cluster config to connect to apiserver 2019/02/10 16:41:21 Using secret token for csrf signing 2019/02/10 16:41:21 Initializing csrf token from kubernetes-dashboard-csrf secret panic: secrets "kubernetes-dashboard-csrf" not found goroutine 1 [running]: github.com/kubernetes/dashboard/src/app/backend/client/csrf.(*csrfTokenManager).init(0x1f87250) /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/csrf/manager.go:40 +0x2fc github.com/kubernetes/dashboard/src/app/backend/client/csrf.NewCsrfTokenManager(0xef9d40, 0x1fb4120, 0x1, 0xa5c9d4) /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/csrf/manager.go:65 +0x4c github.com/kubernetes/dashboard/src/app/backend/client.(*clientManager).initCSRFKey(0x1f5a1e0) /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/manager.go:362 +0x70 github.com/kubernetes/dashboard/src/app/backend/client.(*clientManager).init(0x1f5a1e0) /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/manager.go:330 +0x34 github.com/kubernetes/dashboard/src/app/backend/client.NewClientManager(0x0, 0x0, 0x0, 0x0, 0x1, 0x0) /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/client/manager.go:398 +0x6c main.main() /home/travis/build/kubernetes/dashboard/.tmp/backend/src/github.com/kubernetes/dashboard/src/app/backend/dashboard.go:99 +0x104

Looking at the main dashboard, I executed this to create the kubernetes-dashboard-csrf:

echo 'apiVersion: v1 kind: Secret metadata: labels: k8s-app: kubernetes-dashboard name: kubernetes-dashboard-csrf namespace: kube-system type: Opaque data: csrf: ""' | kubectl apply -f -

And then everything worked.

You might also want to include the port forwarding command (if people are running headless) and the dashboard url:

ssh -L 8001:localhost:8001 node-1

http://localhost:8001/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard-head:/proxy/#/overview?namespace=default

Good stuff! Now I've got to go build some new arm docker images for my code (already had x86)

ravidsinghbiz commented 5 years ago

Hello @alexellis,

Here is the link to my RPi cluster: https://twitter.com/ravidsinghbiz/status/1094529653362966528

Thank you,

alexellis commented 5 years ago

@dnachman please raise a separate issue.

se1exin commented 5 years ago

Hi @alexellis

Here is my cluster:

Name: selexin (Australia) URL: https://selexin.com/2019/04/12/kubernetes-on-raspberry-pi-cluster.html

Useful notes:

4x RPi Cluster, running dnscrypt-proxy/sonarr/couchpotato/nzbget, among other things :)

Had some issues setting up Load Balancing and Persistent Volumes/Storage - which I am covering in my new blog, along with setting up the services mentioned :)

henry2man commented 5 years ago

Here it is mine:

https://twitter.com/henry2man/status/1085674266115407878

Nodes: 1x PI 3B & 2x PI 3B+ PSU: Anker 60W 6 port Switch: TP-Link GIGABIT 5 ports powered by a USB-to-barrel adapter from PSU

Planned upgrade (waiting for shipping🤞): 1x PI 4B 4Gb

OS: Raspbian Stretch Docker engine K8s: #K3S