A Kubernetes SIG project called KubeFed, for Kubernetes Cluster Federation, can be used to keep multiple clusters in sync with one another across multiple regions and clouds. For instance, a given app deployment can be kept consistent between multiple clusters, and different clusters can share service discovery so that a back-end resource can be accessed from any cluster. Federation can also be used to create highly available or fault-tolerant Kubernetes deployments, whether or not you’re spanning multiple cloud environments.
KubeFed is still a beta project, with alpha-level components. It’s also not intended to be a high-level federation solution, but more of a low-level set of components used to enable future features, such as (according to the official KubeFed docs) disaster recovery or applications distributed across geographic domains.
Where to get Kubernetes
Kubernetes is available in many forms—from open source bits to commercially backed distribution to public cloud service—that the best way to figure out where to get it is by use case.
- If you want to do it all yourself: The source code, and pre-built binaries for most common platforms, can be downloaded from the GitHub repository for Kubernetes. If you want to try out a tiny instance of Kubernetes on your own system, you can use Minikube to set up a local cluster on a single machine.
- If you’re using Docker Community or Docker Enterprise: Docker’s most recent editions come with Kubernetes as a pack-in. This is ostensibly the easiest way for container mavens to get a leg up with Kubernetes, since it comes by way of a product you’re almost certainly already familiar with. (Docker can also use Minikube for deployments.)
- If you’re deploying on-prem or in a private cloud: Chances are good that any infrastructure you choose for your private cloud has Kubernetes built-in. Standard-issue, certified, supported Kubernetes distributions are available from dozens of vendors.
- If you’re deploying in a public cloud: The three major public cloud vendors all offer Kubernetes as a service. Google Cloud Platform offers Google Kubernetes Engine. Microsoft Azure offers the Azure Kubernetes Service. And Amazon has added Kubernetes to its existing Elastic Container Service. Managed Kubernetes services are also available from many vendors.
Kubernetes tutorial
Now that you’ve got the basics under your belt, are you ready to get started with Kubernetes? There are a variety of tutorials out there that can help you play around with Kubernetes and learn how to use it in your own work. You might want to start off with the simple tutorials on the Kubernetes project site itself; when you’re ready for something more advanced, check out Quick Code’s picks for the top 10 Kubernetes tutorials, which have a little something for everybody.
Kubernetes certification
If you feel like you have a good handle on how Kubernetes works and you want to be able to demonstrate your expertise to employers, you might want to check out the pair of Kubernetes-related certifications offered jointly by the Linux Foundation and the Cloud Native Computing Foundation:
- Certified Kubernetes Administrator, which seeks to “provide assurance that CKAs have the skills, knowledge, and competency to perform the responsibilities of Kubernetes administrators,” including application lifecycle management, installation, configuration, validation, cluster maintenance, and troubleshooting.
- Certified Kubernetes Application Developer, which certifies that users can design, build, configure, and expose cloud native applications for Kubernetes.”
The certification exams are $375 each. There are also accompanying training courses, which can serve as a good, structured way to learn more about Kubernetes for those who are interested.