The plan with 2.0 has always been to release in Q1 next year (hopefully early Q1) and we are still on track for that. I’m the one that said we would be updating the release frequently. I should have known better to say anything. As soon as I publicly commit time frames we end up changing our approach. We decided to focus on a series of features that we can’t easily stream out. Here is where all the work is going right now. None of this is in a releasable form quite yet, but just wanted to let you know the progress. We will be talking about some of these things more in detail at our next meetup: http://rancher.com/event/online-meetup-managing-kubernetes-clusters-rancher-2-0/
Cluster Health Monitoring: Aggregating the node conditions, node resources, component statuses of all your clusters to a simple dashboard https://github.com/rancher/cluster-agent/pulls
RBAC: Full management of k8s roles and bindings across all your clusters. Our RBAC approach introduces the concept of projects. More details to come about that. https://github.com/rancher/cluster-agent/pulls
Standalone Kubernetes Distro: This is basically the same Rancher (CNCF Certified) K8s distro that is in 1.6 but pulled out to be completely standalone and CLI/config file driven. This addresses a series of use cases that we will discuss at the meetup https://github.com/rancher/rke/
kontainer-engine CLI: This is basically the “docker-machine” for k8s clusters. Specifically designed to be a CLI to spin up IaaS provided k8s clusters. In 1.6 we used docker-machine to launch VMs in the cloud. In 2.0 we will use kontainer-engine to spin up k8s clusters in the cloud https://github.com/rancher/kontainer-engine
No more java: We decide to drop the last Java component and do it in go. This means less memory, faster startup, easier to grok code base, and one step closer to proper ARM support. https://github.com/ibuildthecloud/cattle/. This also makes the embedded installation below possible.
Support etcd as our primary Datastore: Historically we’ve always ran Rancher on MySQL. With the focus on k8s now users will have etcd running in there environments. We’d rather not require users to have two different databases (MySQL and etcd) so we’ve decided to move all our MySQL stuff to etcd. We can still support MySQL if people care (waiting to see what the demand is there). https://github.com/rancher/norman
Embedded Rancher Install: Rancher has always had it’s own database (MySQL and now etcd) and it’s own installation (docker run ... rancher/server
) and then it would spin up clusters. For people looking for something even simpler, or maybe running on your desktop, Rancher will be able to deploy into an existing k8s cluster (like minikube) and just manage that one cluster. In that situation we will just use k8s CRDs for persistence and there is no additional database or external setup needed.
UI for all of this: More great UI as always.
And more…
I’m sorry we haven’t been able to get this all out in a release for public consumption. I really hope we have another alpha build in December and then in January we can start doing beta builds that will be more stable. (And yes I realize that I’m publicly stating a time frame right now which never works well for me in open source…)
Hang in there, 2.0 is going to be awesome.