containerd is an industry-standard core container runtime that was initially released by Docker Inc. in December 2015 and contributed to CNCF in March 2017. We’ve received a number of questions about the project, so I thought I would provide you my perspective as well as some preliminary thoughts on how how Rancher Labs will leverage it.
Docker, Kubernetes, and containerd
The containerd project represents an important step in the evolution of the Docker platform. In the beginning, the Docker engine was quite simple. It merely consisted of the minimum support required to run Docker images on a single host. Over the last few years, however, the Docker Engine has evolved significantly. The Docker engine now includes sophisticated support for cluster management, multi-host networking, and scheduling. Today, Docker is actually closer to a platform like Kubernetes, even though Kubernetes was created to manage Docker. Read more
This week, the Moby Project was introduced with the idea of componentizing Docker into a series of assemblies. At DockerCon, a neat demo was done using the moby tool to assemble various components into customized Linux operating system images. While very cool, this seemed to have confused people – we’d like to provide some more background and explanation about the Moby Project and how it affects Rancher, RancherOS, and our users.
Some background on the Moby Project
The transition to the Moby Project actually started a couple of months ago, with a discussion among the Docker Project maintainers, about the dual nature of Docker as both a product and a project. This dual nature served Docker (the project and the company) well in the beginning, but at the end of the day, Docker, Inc. must make hard decisions about what their product should and will be. As a group of maintainers, we agreed that the product and project should be split. Read more
Rancher Labs delivers fast, ultra-lightweight container operating system
Cupertino, Calif. – April 12, 2017 – Rancher Labs, a provider of container management software, today announced the general availability of RancherOS, a simplified Linux distribution built from containers, for containers. RancherOS eliminates any unnecessary libraries and services, resulting in a footprint three times smaller than that of other container operating systems. The simplified container environment reduces container boot time, increases efficiency and improves security by reducing the number of components that can be exploited.
“At BRCloud Services, we strive to deliver the best solutions to address our customers’ needs,” said Helvio Lima, CEO at BRCloud Services. “RancherOS epitomizes what modern infrastructure should look like. We’re thrilled to integrate the container operating system into our portfolio.”
RancherOS makes it simple to run containers at scale in development, test and production. By containerizing system services and leveraging Docker for management, the operating system provides an incredibly reliable and simple to manage container-ready environment. System services are defined by Docker Compose and automatically configured using cloud-init, reducing administrative burden. Unneeded libraries and services are eliminated, significantly reducing the OS footprint and minimizing the hassle of updating, patching and maintaining a container host operating system. Containers running on RancherOS boot in seconds, making the operating system ideal for running microservices or auto-scaling. Teams can use the Rancher container management platform to easily manage RancherOS at large scale in production.Read more
RancherOS v0.8.0 is now available! This release has taken a bit more time than prior versions, as we’ve been laying more groundwork to allow us to do much faster updates, and to release more often.
Using the Linux 4.9.9 mainline kernel Using the mainline stable Linux kernel should allow us to give container users access to new features faster – and will mean that RancherOS will have a simpler debug and update path for other software too.
Placing the installer container image in the ISO This change allows users to install RancherOS without internet access, and simplifies automated testability of changes. This adds about 13MB to the ISO, but means that you can do a basic install of RancherOS without pulling an image from the Docker Hub. Read more
We’re excited to announce that RancherOS is now available as a first-class operating system on Packet for all instance types. Packet is a bare metal cloud that combines the speed of physical hardware with the flexibility and ease of use of virtualized infrastructure.
We’ve always been fans of Packet and we make use of it internally quite often. In fact, we’ve recently decided to move our entire CI/CD pipeline over to Packet instances. Prior to native RancherOS support, we’ve been running it internally by booting another operating system and then running a custom installation script.
Even with this overhead we’ve had an excellent experience with Packet. After adding support for automated RAID installs and integrating with Packet’s provisioning system, we were able to create an official installation process and move away from our custom script.
The first version of RancherOS available on Packet is v0.7.0. This release brings many exciting features such as the ability to dynamically choose the Docker engine version via a cloud-config parameter and the ability to easily customize Docker daemon settings. In addition to these new features, RancherOS brings all of its traditional features to the table, such as being an order of magnitude smaller than other operating systems available on Packet.
We’d like to thank Andrew Hodges and the rest of the Packet crew for all of their help throughout this process.
Version v0.7.0 of RancherOS, which mainly contains bug fixes and enhancements, was recently released and is now available on our releases page. Since there hasn’t been a blog post since the v0.5.0 release, this post also includes some of the key features implemented as part of v0.6.0 and v0.6.1. In addition to switching the default Docker version to 1.12.1 and kernel version to 4.4.21, the following features have been implemented.
Better Support for Switching Docker Engines
It has always been part of the design of RancherOS to run two instances of Docker. The first is System Docker, which runs as PID 1 and is responsible for managing system services. The other, which we typically call User Docker or just Docker, is actually run as a container managed by System Docker. Starting with v0.6.0, the process for changing the User Docker container has been made much easier. Read more