Testing Environment:
- 3 NUCs -- SLE Micro 5.4 with K3s installed with no special configuration
- 1 Raspberry Pi 3 -- OpenSUSE Tumbleweed
On remote host:
- Add routes to 10.4[1-3].0.0/16 via one of your cluster nodes
- Create tls keypair and install keys to allow root access
- Yeah... I know this is a bad idea. It's a demo, I'll fix it later
On Cluster
- Create load balancer service for kubedns
- For k3s, use
dns-external.yaml
- For k3s, use
- Apply
rbac.yaml
- Create configmap called
workload
containing a item calledworkload.yaml
that contains the contents ofworkload.yaml
- Create secret with TLS keypair (from remote host) called
ssh-keys
- Private key needs a newline at end of file. OpenSSL (or k8s) doesn't seem to add this.
- Run Job
- Figure out rebooting...
- Create patch that adds proxy to
workload.yaml
instead of needing it hard coded - Look up ssh key instead of hard coded
- Clean up the extraneous errors/warnings
- Use files instead of
kubectl create
- Use files instead of
- Use non-default namespace
- Integrate with Akri to run when device is discovered
- Integrate with Epinio to allow pushing code to non-k8s devices