Kubernetes & Docker for Mac

Alex Ellis, creator of OpenFaaS, takes new kubernetes features for a spin in Docker for Mac by installing OpenFaaS and Helm. It happens I'm interested in experimenting with all three of Kubernetes, OpenFaaS, and Helm. Handy. (Also covers some of the docker swarm integration... click the link if you wanna see that) link

# git clone & kubectl apply to install OpenFaaS mkdir -p go/src/github.com/openfaas/ && \ cd go/src/github.com/openfaas/ && \ git clone https://github.com/openfaas/faas-netes && \ cd faas-netes && \ kubectl apply -f ./namespaces.yml && \ kubectl apply -f ./yaml

Then point your browser here: localhost:31112 Helm installation: docs

# homebrew to install helm brew install kubernetes-helm helm init


homebrew's helm installation needed a little more help comment on helm/issue

kubectl delete deployment \ tiller-deploy --namespace kube-system helm init --upgrade --service-account default

Kubernetes support is only available in the docker-for-mac `edge` releases, not in `stable` (as of this writing). **Make backups before switching.** Switching between `stable` and `edge` warns about loosing all the existing containers. We also loose the named volumes.

Happily, the simplicity of wiki's data lends itself to trustworthy backup and restore. See Other Admin Tricks in wiki-tls/README


# Giving up on k8s experiments for now!


As a test of helm, I tried installing neo4j. After a couple attempts I did get the community edition installed. However, educated guess that defaults assume more resources than my laptop offers. Several symptoms of insufficient resources appeared. * `kubectl` was unable to connect to the api * `helm ls` was similarly unable to find a tiller * restarting docker helped for a moment, and then the same symptoms re-appeared after one or two commands * even `docker-compose` commands became unresponsive

I have switched back to `stable`, giving up on k8s for now.

This experience confirms my suspicion that k8s is more than wiki should take on, at least in the immediate future.

I have no doubt that sufficient time would allow one to discover invocations of `helm install` with appropriate resource limits suitable for laptop development. But it's also just a bit too easy at the moment to get wedged locally.

Sadly this also puts a hold on experimentation with several function services which build on Kubernetes: Kubeless, Riff, and OpenFaaS