We are cohosting the Gopher Gala 2016

It's official. We're pleased to announce we are going to be co-hosting the Gopher Gala 2016. For those who don't know what this is about, the Gopher Gala is a distributed hackathon where the main programming language to be used is Go. People form groups (one-man armies are also common) and work on an idea for a limited amount of time, submit their ideas and either some jury or the community [...]

How Protocol Buffers are Used in Mesos Framework Development

In this blog I will discuss the role of protocol buffers in Mesos framework development. Protocol buffers are used extensively for messaging and serialization inside Mesos and when developing Mesos frameworks. I will show how to use its APIs when developing a framework using examples from the Mesos Elasticsearch project. Message Serialization Like any distributed system, the components of [...]

Docker Security Cheat Sheet

The accompanying blog, that forms the notes for this cheat sheet, can be read here. Adrian Mouat gives an excellent talk called 'Using Docker Safely'. He will do it this Friday at GOTO; Amsterdam. If you get a chance to see it, you should. As part of security week, we have summarised Adrian's guidelines onto a cheat sheet, which you can download in high resolution by clicking on the image [...]

Containerized Mesos Cluster

We often use Apache Mesos clusters to run containerized applications for our clients and for ourselves. Even though we run applications in containers, we still install Mesos with its dependencies and frameworks on host machines from standard Debian packages. Although that’s what most Mesos users do and it’s a straightforward and safe way of installing Mesos, we thought we might stretch the [...]

What is Strategy?

Yesterday, I was put on the spot by Pini and Jaroslav. I’ve been reading about strategy, and since I am the CEO of a company I am supposed to know about things like strategy and leadership, but when pushed I found myself struggling to explain to them exactly what strategy is. I am going have a crack at that now starting with a short version that may not be satisfactory before moving onto a [...]

Culture – The Great Hiding Place

Ideas that threaten to interrupt existing power structures, such as a move to DevOps or the introduction of container technology, nearly always lead to resistance. An oversimplified and often exaggerated explanation of a group’s culture is one such form of resistance. An oversimplified explanation provides a hiding place, on the one hand, for those who resist the change and, on the other, for [...]

Pulling from a Private Docker Repository with Marathon

Suppose you have a private repository on the Docker Hub, then how do you get Marathon to pull from that repository? It's easy if you use Marathon's Artifact Store! [...]

Configuring resource offers on Mesos

The other day I was working on Mesos Elasticsearch and encountered a problem while running the framework. The framework did not accept any offers from slaves because I had not properly configured the resources. Right now the Elasticsearch framework requires ports 9200 and 9300 but by default the slaves offer a port range 31000 to 32000. The default slave resources offers are defined in [...]

Terraform Deployments (Almost) in Real-Time

What if Terraform deployments could be visualised in real time? It would be quite exciting, and surely worth investigation. The short video below shows the outcome of an experiment - Argus and Gephi integrated together to visualise a stream of real-time network events. Feel free to share your opinion. Enjoy! PS. If you would like to try it on your own, here are detailed instructions on [...]

Mesos Terraform Module

The module that this blog refers to is here: https://github.com/ContainerSolutions/terraform-mesos The slide are here: http://www.slideshare.net/ThijsSchnitger/terraform-mesos-47422831 On Friday night my colleagues Thijs and Jaroslav gave a talk and demonstration about how to set up a Mesos cluster using Terraform. It was an eye-opening moment for me - instead of seeing the output from the [...]

Hosted Docker-Enabled CI Tooling – Show down!

The goal At Container Solutions we’re currently building a Mesos framework and I was tasked with getting CI up and running. The framework uses Gradle for builds and Docker to build images. We use the Gradle wrapper which only requires a JDK, in our case version 1.8. I wanted to be up and running as soon as possible which meant the following: Low barrier to entry: I wanted something [...]

Terraform-Mesos module explained

In a previous post, we showed you how to set up your own Mesos cluster with Terraform by using our Terraform-Mesos module. In this post we'll be shedding some light on how the module is structured. [...]

Running Docker Containers with Systemd

You can get by running Docker containers with shell scripts, or with Docker Compose (if you don't mind ignoring the "don't use in production" warnings), but for some use cases, it's preferable to take advantage of the host init system/process manager. It seems that every major distro is moving to systemd these days, so that's what I'll look at in this post. Using systemd or an equivalent is [...]

Interview with Kelsey Hightower, Developer and Advocate at CoreOS

In the third part of our ‘Tech Interview’ series Container Solution’s Mark Coleman talks to Kelsey Hightower, Developer and Advocate at CoreOS. You can see the previous interview here. In this interview Kelsey and Mark discuss Kelsey’s work at CoreOS and previously at PuppetLabs, the CoreOS ecosystem and its interoperability, Rocket and the container specification, why all developers [...]

How to set up Mesos on Google Cloud with Terraform

Imagine a world where you describe an auto-scalable, fault-tolerant computer cluster in a simple declarative language. Then imagine that you can create the cluster with a single command. You can change the setup and apply it to the cluster with just another command. Sounds appealing, doesn’t it? But what does it really involve to set up a computer cluster these days? Let's say a cluster [...]