Chapter 2. Container Development Kit Technologies
Container Development Kit is comprised of several technologies:
- Red Hat Enterprise Linux is the operating system installed on a VM. You will control the Minishift cluster through that installation, rather than the operating system installed on your host system (desktop).
- The Kernel Virtual Machine (KVM) technology within the linux kernel. A Virtual Machine, usually called a "VM" or "box", is a fully virtualized system running an operating system. The kernel of a KVM box is independent of the kernel on the host system. In Container Development Kit, a KVM box running Red Hat Enterprise Linux serves as the host for a cluster of containers.
- Docker runs a copy of an operating system in a container, except for the kernel. As a result, it can directly access hardware on the host system. It provides a higher level of security and independence from operating system changes, and helps with maintaining the same configuration across a cluster.
- OpenShift is a system for managing docker containers on Red Hat Enterprise Linux virtual machines. A VM containing containerized apps, managed by OpenShift, is called a "pod". OpenShift deploys pods to host systems in a cluster as needed, often running more than one pod on each computer system.
- Minishift is a tool that helps you run OpenShift locally by launching a single-node OpenShift cluster inside a virtual machine. With Minishift you can try out OpenShift or develop with it, day-to-day, on your local machine. Minishift forms the core of Container Development Kit and also controls the Container Development Kit installation and configuration.
- Eclipse is the Integrated Design Environment (IDE) used in the Red Hat JBoss Developer Studio. Container Development Kit adds functionality to the IDE to develop and manipulate a cluster of containers.