Getting Started with Kubernetes (at home) — Part 3
Jax Gauthier
Posted on May 5, 2019
In the first two parts of this series, we looked at setting up a production Kubernetes cluster in our labs. In part three of this series, we are going to deploy some services to our cluster such as Guacamole and Keycloak.
Step-by-step documentation and further service examples are here.
Guacamole
Guacamole is a very useful piece of software that allows you to remotely connect to your devices via RDP, SSH, or other protocols. I use it extensively to access my lab resources, even when I am at home.
You can use this Helm Chart to install Guacamole on your Kubernetes cluster. The steps are as follows:
- Clone the Guacamole Helm Chart from here
- Apply any changes to values.yaml such as the annotations and ingress settings.
- Deploy the Helm Chart from the
apache-guacamole-helm-chart
directoryhelm install . -f values.yaml --name=guacamole --namespace=guacamole
- An ingress is automatically created by the Helm Chart, and you can access it based on the
hosts:
section of values.yaml
Once you have deployed the Helm Chart, you should be able to access Guacamole at the ingress hostname specified in values.yaml.
Keycloak
Keycloak is an open-source single sign-on solution that is similar to Microsoft’s ADFS product. You can read more about Keycloak on my blog.
There is a stable Keycloak Helm Chart available in the default Helm repo, which we will be using to deploy Keycloak, you can find it here.
- Apply any changes to values.yaml
- Deploy the helm chart stable/keycloak with values
helm install --name keycloak stable/keycloak --values values.yaml
- Create an ingress
kubectl apply -f ingress.yaml
- Get the default password for the
keycloak
user.kubectl get secret --namespace default keycloak-http -o jsonpath="{.data.password}" | base64 --decode; echo
Though this article is on the shorter side, hopefully it exemplifies how easy it can be to run services in Kubernetes. We mainly looked at pre-made Helm Charts in this article, however deploying a service without a Chart can also be just as easy. I prefer using charts as I find it easier to manage than straight Kubernetes manifest files.
You can checkout my public Kubernetes repo at https://gitlab.com/just.insane/kubernetes/ for further information and more service examples.
Posted on May 5, 2019
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.