Fleet from CoreOS is an open source container management system that provides automated deployment and recovery services for businesses with small workloads and basic scheduling requirements. It is embedded in CoreOS' Linux operating system and also available as an independent download.
Rather than being an all-purpose orchestration solution, CoreOS' fleet is a low-level cluster orchestration project designed as a foundation for higher-order orchestration. Technically speaking, it is a cluster-wide elaboration on the resources manageable by systemd, an init (or initiation) system increasingly used to manage Docker containers.
The primary functions of CoreOS' fleet include automated deployment and recovery, deployment efficiency monitoring and security. With the system's automated deployment capabilities, users can focus on developing their applications instead of provisioning their clusters. Fleet also ensures that units are deployed together on the same machine, which helps businesses use resources more efficiently as well as minimize operating overhead.
How does the system help organizations run containers?
CoreOS' fleet container management system is designed to automatically reschedule units when machines or services fail. Units can be configured for scheduling to particular machines based on machine metadata. The system also provides users with a small degree of customizability in cluster orchestration.
Although fleet is included in the CoreOS Linux operating system, it can also be downloaded and run independently from CoreOS on any Linux distribution that uses both systemd and etcd, a key value store that enables data to be stored across a cluster of machines. (Both systemd and etcd are included with the CoreOS Linux operating system.) Fleet is not coupled with any particular container technology and, thus, anything that can be run as a systemd unit file can be run with fleet, including App Container (appc) and Docker container images, as well as any shell commands or native binaries installed on the user's hosts.
In terms of security, CoreOS' fleet container management system makes it very easy to run the rkt container runtime engine, which offers a variety of security features. Businesses can use rkt to run the same container with varying degrees of protection, from lightweight namespace and capabilities isolation to heavier, virtual machine-level hardware virtualization. Because the primary interface of rkt comprises a single executable, rather than a background daemon, rkt easily integrates with container orchestrators while minimizing exposure to threats.
Who benefits from using the software?
CoreOS' fleet does have some scalability limitations. It provides a deployment platform for clusters of up to 100 nodes or 1,000 services. For businesses with larger-scale orchestration workloads and more complex scheduling requirements, CoreOS actually recommends Kubernetes, an open source containerized application management system from Google. CoreOS also offers an enterprise-level container orchestration solution called Tectonic, which is an infrastructure platform for distributed applications that runs containers on Kubernetes with enterprise-grade security and scalability capabilities not found in CoreOS' fleet container management system.
What features should you look for when choosing a container management system?
What is the best app modernization approach for your business?
How does containerization benefit your organization?