Living with CoreOSIt’s clear the industry is still trying to figure out what to do with them but the sheer number of uses means the invaluable *1. Even Microsoft who historically adopts their own similar yet incompatible technologies has gotten behind Docker with native Server 2016 support. If that’s not a glowing endorsement I don’t know what is. Any modern OS can now run Docker but several have been designed specifically for containers. Two of the most popular being CoreOS and RancherOS though their designs are slightly different. Since the only way to really become familiar with an OS it to use it personally I’ve been kicking the tire on CoreOS for a while now.CoreOS makes a lot of design decisions that deviate sharply from what most Linux users are familiar with. For starters it leverages the same build system used by Google ChromeOS which in turn leverage build technologies from Gentoo Linux. There is no package manager hence adding or removing packages is not possible with recompiling your own release with the SDK. Since the installed packages does not change it is possible to mount /usr read only. Updates are released via 4 selectable channels – master, alpha, beta, and stable. Several services manage monitoring the channels, pulling the updates, and updating the system. Updates only happen on during reboots by altering the partition used for /usr and is configured by policy. The disk layout is hardwired into the install and not configurable since the update behavior relies on it. Obviously the expectation you are running clustered ephemeral instances and all your applications are properly designed container services.Enterprise Support and ScaleThe primary purpose of CoreOS is to run Docker. To facilitate this use case they’ve created an ecosystem of support tools. The primary services leveraged by any CoreOS install are etcd, fleet, rkt and the usual myriad of systemd services. To support their ecosystem a number of additional projects have been created. Some of the more interesting ones are:
- flannel for networking
- ignition for system config
- clair for container security analysis
- torus for distributed storage
- omaha for updates
- coreos-baremetal for provisioning.
- Anything I deploy to a cloud is built on a stripped down OS & exists only until the next application or Operating System update. Conversely the extra /usr partition of CoreOS and update approach seems geared for long lived systems. This makes it much more interesting running on bare metal than a cloud in my opinion.
- The OS running a container doesn’t need any virtualization under it. Certainly CPUs are quite good running VMs days so there’s not much overhead, but if you are trying to squeeze every last CPU cycle from your system why not just lose the overhead? Losing the under cloud means losing the node management, but its clear the supporting tools are attempting to mitigate this.
- Kubernetes doesn’t need any virtualization underneath it. Running multiple tenant networks on top of each other and simultaneously supporting 2 different network models and technologies can be a nightmare. Downsides? In addition to the node management lost there’s also the native load balancer and shared storage functions that Kubernetes leverages.
- Containers and Microservices – Now enterprises are looking for ways to drive even more efficiencies, we help organizations with Docker and Kubernetes implementations – containerizing applications and orchestrating the containers in production.
- DevOps and CI/CD Automation – Once we build the infrastructure, the challenge is to gain agility from the environment, which is the primary reason people adopt cloud. We work at the process level and tool chain level, meaning that we have engineers that specialize in technologies like Jenkins, Git, Artifactory, Cliqr and we build these toolchains and underlying processes so organizations can build and move apps more effectively to the cloud.
- Cloud Architecture and Infrastructure – We are design and implementation experts, working with a variety of open source and proprietary, and have built numerous private, public, and hybrid cloud platforms for globally-recognized enterprises for over three years.
Agile Ansible Architecture Artifactory AWS Azure Big Data CI / CD CI/CD Cloud Cloud adoption Cloud Architecture Cloud Computing Cloud Infrastructure Cloud Native Container Orchestration containers CoreOS data DevOps digital transformation Docker Enterprise Events Hashicorp Hybrid Cloud Kubernetes Media Microservices Open Infrastructure Open Source OpenStack Packer Press Release Process Public Cloud Rancher Security slack Software development Swarm Technology terraform Training Webinars