In this article, Rancher compares seven Docker monitoring options and goes over some of the common tools used to monitor containers. Visit us to learn more.
Nagios is a fantastic monitoring tool, and I wanted to see if I could get the agent to run as a system container on RancherOS, in order to monitor the host and any Docker containers running on it. It turned out to be incredibly easy. In this blog post, I’ll walk through how to launch the Nagios agent as system container in RancherOS. Specifically, I’ll use two vagrant boxes to cover:
Rancher Server has recently added Docker Machine support, enabling us to easily deploy new Docker hosts on multiple cloud providers via Rancher’s UI/API and automatically have those hosts registered with Rancher. For now Rancher supports DigitalOcean and Amazon EC2 clouds, and more providers will be supported in the future. Another significant feature of Rancher is its networking implementation, because it enhances and facilitates the way you connect Docker containers and those services running on them.
Recently I have been playing around with Riak and I wanted to get it running with Docker, using RancherOS and Rancher. If you’re not familiar with Riak, it is a distributed key/value store which is designed for high availability, fault tolerance, simplicity, and near-linear scalability. Riak is written in Erlang programming language and it runs on an Erlang virtual machine. Riak provides availability through replication and faster operations and more capacity through partitions, using the ring design to its cluster, hashed keys are partitioned by default to 64 partitions (or vnodes), each vnode will be assigned to one physical node as following: From Relational to Riak Whitepaper For example, if the cluster consists of 4 nodes: Node1, Node2, Node3, and Node4, we will count around the nodes assigning each vnode to a physical node until the all vnodes are accounted for, so in the previous figure, Riak used 32 partition with 4 node cluster so we get:
Yesterday we hosted our first Rancher online meetup, which was focused on how to get started with RancherOS. For those of you who weren’t able to attend our first online meetup on March 31st, we’ve posted a recording. The meetup ran for more than two hours, and included demos of RancherOS and Rancher, as well as dozens of questions about current capabilities and some of the features we’re still working on.
When we shipped Rancher 0.12 last week we added one of the more frequently requested features, support for private Docker registries. Rancher had always allowed users to provision containers from DockerHub, but many organizations run their own registries, or use private hosted registries such as Quay.io, and private DockerHub accounts. Beginning with this release, users will be able to connect their private registry directly to their Rancher environment, and deploy containers from private Docker images.
As you may have seen, Rancher recently announced our integration with docker-machine. This integration will allow users to spin up Rancher compute nodes across multiple cloud providers right from the Rancher UI. In our initial release, we supported Digital Ocean. Amazon EC2 is soon to follow and we’ll continue to add more cloud providers as interest dictates. We believe this feature will really help the Zero-to-Docker _(and Zero-to-Rancher)_ experience. But the feature itself is not the focus of this post.
This week we released Rancher 0.12, which adds support for provisioning hosts using Docker Machine. We’re really excited to get this feature out, because it makes launching Rancher-enabled Docker hosts easier than ever. If you’re not familiar with Docker Machine, it is a project that allows cloud providers to develop standard \“drivers\” for provisioning cloud infrastructure on the fly. You can learn more about it on the Docker website. The first cloud we’re supporting with Docker Machine is Digital Ocean.
This week we released RancherOS 0.2, which introduces support for upgrades. RancherOS is a tiny Linux distribution designed specifically to run Docker, using containers to isolate user and system processes. Given that RancherOS does just about everything with containers, it shouldn’t be a surprise that upgrading a RancherOS node is almost exactly like upgrading a Docker container. All of the upgrade procedures in RancherOS are accessed through the \“rancherctl\” system service.
We’re in the process of building a feature for Rancherthat makes use of the Docker event stream. The stream is a useful feature of the Docker API that allows us to augment and enhance the Docker experience without wrapping or obfuscating Docker itself. Michael Crosby (@crosbymichael) gives a good overview of the Docker Events API here. If you’re looking for an introduction to Docker events, I recommend starting there. The code I’m working on in Rancher lives here: https://github.