SUSE CaaS Platform Setup – From Nothing to Everything in 1 Hour
Hello fellow Pioneers!
I recently did a 30 minute Webinar on the soon-to-be-released SUSE CaaS Platform. During this Webinar I set myself a little challenge:
For anyone with experience with Kubernetes they’ll know that this is no small ask! – Kubernetes is known for being a complex infrastructure tool to set up and this is one of the primary reasons SUSE decided to release a product based on it. Doing one of the things we do best – making your life easier – and applying it to Kubernetes.
Long story short I was successful *cheers*.
But in order to get the demo down to 20 minutes I had to skip some of the boring parts. This was mainly creating the VMs and installing our new made-for-containers operating system MicroOS. I didn’t see much value in the attendees spending 15 minutes watching RPMs install so I didn’t show it.
But based on feedback obtained from that webinar we learnt that people did want to see the full end-to-end process regardless of how boring the bits at the start are. They also wanted the resources I used made public so that they can use it themselves.
So that’s what I’ve done. In the YouTube video below I’ll take you from having 12 blank VMs with nothing on them to having a full working Kubernetes cluster along with deploying an example microservices based app. On top of that I’ll show you how you can monitor and obtain logging metrics on both the underlying Kubernetes resources and the demo app running on top.
This video is great to follow if you’ve just downloaded the SUSE CaaS Platform Public Beta and want to give it a try. In this video I show both the ISO method of deployment as PXE booting the deployment (optional).
What do I need?
To get started you just need 5 things:
1) The CaaS Platform ISO Image – available from here
2) Some blank VM’s created or empty physical hosts that you don’t mind being wiped ready. In the demo I had 12 in total (1 Admin, 1 Master and 10 Worker nodes) but you can change this to suit your needs
3) Know how you’re going to resolve the DNS and Admin node addresses. Personally I chose to give them both static leases and put those leases into DNS. But all we require is that the machines that are going to access the cluster (both other nodes and your workstation) can resolve the address of the admin node and master node to the correct IPs. I talk a lot about this in more detail during the video so don’t worry if this sounds confusing it will make sense as you go along. I personally call mine caaspadmin.home.rob-knight.com and master.home.rob-knight.com and have DNS resolve to the IPs of the respective VMs
4) Know either your internal NTP source OR an external one (such as time.google.com) as you’ll be asked for this during the administration node install
5) Checkout or download as a ZIP file the files I used at https://github.com/rssfed23/caas-examples. It’s worth noting that although these files are open sourced and you can use the “upstream” ones available in the Kubernetes and Sock-Shop repos BUT I have made some small modifications to the manifests to allow them to work on the version of Kubernetes we will be deploying. Without these changes monitoring through Grafana will not work so I recommend you use the ones from my github until V2 of CaaS Platform is out
What about Sizing?
One of the questions I get often is around machine/node sizing. We will be publishing our official recommendation and supported minimums soon but for now I can say for the Administration and Master nodes I gave them 2 x CPUs on 2 sockets each (so 4 vCpus in total) and 6GB of RAM and they’re still performing quite well after the weekend. For larger cluster you will of course need more RAM & CPU and if you’re only deploying a 5 worker node cluster you can get away with 1vCPU and 4GB RAM. Although you can deploy a 2-3 node cluster we strongly advise against it as it means your etcd instance won’t be fault-tolerant and you may not have enough free RAM on the worker nodes to deploy the full demo workload stack used in the demo.
For the worker nodes I gave them 2 vCPUs on 1 socket (so 2 vCPUs total) and again; 6GB of RAM.
The video was recorded in 4k so I recommend you maximise the window to be able to see everything on the screen correctly.
Please do let me know in the comments how you get on or if you need any assistance.
But first and foremost: Have a lot of fun!
The video is very informative and thanks to SuSE for continuous innovations and making life easy for customers.
I have installed CassP beta for testing and below is the feedback:
Admin dashboard should have more feature like commission and decommission the nodes.
Flexibility to upgrade the kubernetes version
as the version used in CassP is 1.5.
HA / Fault tolerance enabled for Admin node.
Many thanks for your feedback and it’s great that you’ve given CaaS Platform a try.
We are due to launch the public beta for version 2 of our product in a couple of weeks.
You’ll be excited to learn that version 2 of CaaS Platform will be shipping with Kubernetes 1.7 out of the box so you’ll be able to take full advantage of that.
Also; coming as a maintenance update to version 2 later in the year will be the addition of HA and Multi Master support for both the Admin node and Kubernetes Master.
We will also be enabling the decommissioning of nodes as well as adding in more node management features.
If you wan’t any other details about this or want to be one of the first to try the version 2 beta when it’s released then drop me an email: firstname.lastname@example.org
Hoping you’re enjoying your play with CaaS Platform!