BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
Manage Kubernetes locally in this Minikube lab
Minikube is a prebuilt Kubernetes cluster, including workload containers, in a single VM. From a computer, the user runs the kubectl command lines and accesses applications running on the Kubernetes cluster. Set it up, and get started working with containerized applications. Read Now
The best Kubernetes home lab depends on what you are trying to learn, the characteristics of your production deployment and your job role.
A Kubernetes home lab is the place to learn container orchestration before attempting an enterprise deployment. All it requires is a laptop, time and willingness to learn. But first, you must decide what aspects of Kubernetes you want to explore.
If you need to know how to use Kubernetes to run applications but do not really care about the infrastructure, consider Minikube for your home lab. It creates a Kubernetes cluster inside a single VM on your laptop. Follow the tutorial below to set it up and start managing Kubernetes. Online labs, such as Play with Kubernetes, are an alternative for users who do not want to build or run anything on their own equipment. Other labs run on a Kubernetes-based cloud service. If you don't need to learn how to build the environment, evaluate these Kubernetes home lab choices.
To build a Kubernetes platform from the hardware up, you need a completely different kind of Kubernetes home lab. One option, covered in the Vagrant tutorial below, is to build a simple Kubernetes cluster on a small set of VMs. Cloud-based Kubernetes home labs can also teach operations pros how to manage Kubernetes infrastructure. If your production Kubernetes deployment runs in a public cloud, consider training on the same provider. It is an inexpensive lab option, provided you remember to turn off your instances at the end of a project.
If you're using Kubernetes as part of your DevOps journey, check out the DevOps home lab at the end of this guide to learn about infrastructure as code, Ansible and Docker containers.
A Kubernetes science project
Kubernetes has a reputation of being a challenge to set up, and you'll likely find this to be true when working in the home lab. Counteract frustrating issues with community support and expert advice. A GitHub repository, such as the one used in the two tutorials below, exposes the Kubernetes home lab to other parties who can review your code and offer help. To continue learning the container orchestration technology, use Kubernetes expert Kelsey Hightower's GitHub repository.
1Meet the person behind the home lab
Alastair Cooke is a virtualization expert who provides tips and tutorials on diverse IT technologies, from VMware Cloud to Docker containers, ransomware and monitoring technologies. His Kubernetes home labs are available alongside a home lab on DevOps technologies, which includes Vagrant, GitHub, Ansible and Docker.
2DevOps home lab creates a pipeline
Take your modern IT skills further with a full DevOps home lab with a range of tools -- GitHub, Vagrant, Ansible and Docker -- that provide hands-on experience with version control of code, configuration management and automation, and container deployment.
Vagrant transience leads to immutability
Some infrastructure environments are more stable when configurations are replaced rather than updated. Infrastructure components are locked into place, and the full application is a brand-new ship at the dock. A stable production environment can sometimes be hard to come by, so rather than rock the boat out at sea, test a new anchor for compatibility and retire and disassemble the old one. Read Now
Track infrastructure makes and models with Git
To update infrastructure as code successfully, keep an organized record of previous and current setups. Git and its distributed platform, GitHub, enable admins to store code versions in organized file lineups, which any admin on a project can view. Version control wins the fight against configuration drift. Read Now
Ansible manages DevOps infrastructure
Rather than manually configure every single VM in the deployment, use the Ansible configuration management tool so that every instance of the application spins up identically and no single VM runs with a line of code out of place. Read Now
Orchestrate the microservices symphony with Docker swarm mode
Microservices in containers run like the individual instruments in a symphony. To ensure that each of those groups, however large or small, work in unison and independently, Docker swarm mode commands containerized workloads to spin up and down at the right time and tempo. Read Now