Rancher Labs has released Rancher 2.0 Tech Preview on 26th of September. The 2.0 release is a significant one as it brings many changes compared to 1.x versions. Based on current Rancher users feedback, market trends (almost all major infrastructure providers offer “Kubernetes-As-A-Service”), and some vision (“Kubernetes everywhere”), they have re-engineered Rancher 2.0 to be fully based on Kubernetes.
To me, one of the key strengths of Rancher so far was to bring easiness to deploy and manage a container orchestrator. Let’s see if this is still the case with v2.0.
I will use on premises VMs to host my Rancher 2.0 setup, and to be 100% rancher, I will use RancherOS 😉
As described in the quick start guide, the requirements for Rancher server is a linux host with kernel version 3.10+ and Docker installed (v1.12.6, v1.13.1, v17.03-ce, or v17.06-ce). In terms of hardware resources, I have allocated 2vCPUs, 2Gb RAM and 30Gb disk.
For the hosts, I have created 2 VMs with 4vCPU, 4Gb RAM and 30Gb of disk.
The installation (in non HA) could not be simpler:
sudo docker run -d –restart=unless-stopped -p 8080:8080 rancher/server:preview
This simple command will take a few minutes to complete. Under the hood, Rancher will spin up a full Kubernetes cluster for us!
For an HA setup, we will have to wait further guidance from Rancher Labs with later pre-release or as v2 becomes GA.
Once the Rancher server is up and running, you can access the UI on port 8080. Rancher will directly show a screen to add hosts. Here we have two options: add hosts or import existing k8s cluster. A third option might arrive in future release: spin up a new k8s cluster on cloud-provider platform like GKE, Aws, ..
We will choose the “add hosts”. Rancher can add host from several sources, being VM, bare-metal or cloud provided hosts (ie AWS, GCE, Azure, …).
As with previous versions, Rancher will provide you with a docker command to be executed on the target host in order to join Rancher:
Run that command on each node you want to add. After a few minutes, head to the Host part of the UI
That’s it, our cluster is now up and running!
Exploring Rancher 2.0
Environments and Clusters:
An environment is a namespace where applications, containers and services are grouped in; a cluster is a grouping of compute resources. One environment can only run on one cluster, a cluster can host several environments.
The native Kubernetes tools can easily be used with Rancher 2.0
You can use the pure Kubernetes dashboard,
install and easily configure the kubectl CLI
or launch it from your web browser:
Rancher has of course kept its catalog, from which new apps can easily be deployed. The library contains, among others, Helm, the “Kubernetes Package Manager” which allows easy apps deployment on Kubernetes.
Rancher Labs targets a first GA release in early 2018. Several features are still being worked on and will be released in different alpha and/or beta releases in the following weeks:
- Volume Support
- Load balancer
- Secret Management
- Integrated Logging and Monitoring
- Integrated CI/CD
While Kubernetes is becoming the de-facto containers orchestration platform, it is not the easiest platform to get started with. In Rancher 2.0, Rancher Labs has kept its willingness to bring user-friendliness to the container orchestration space. This version looks promising and I look forward next alpha releases that will include volume support, secret management and all features announced in the roadmap.