The Giant Swarm Blog


Continuous Deployment of On-Prem Kubernetes Infrastructure

On in tech

With the creation of our Giantnetes stack, the team at Giant Swarm decided that we should continuously deploy our entire fancy new infrastructure. CI/CD is good, we should do more of it. This post describes the first iteration of our deployment system, the challenges we faced with it, and our second iteration ‘pull-based’ deployment system. Giant Swarm CI/CD Generation 1... Read More

Issuing Certificates for Kubernetes with cert-operator using Vault and OperatorKit

On in tech

At Giant Swarm our Giantnetes (G8s) platform runs Kubernetes within Kubernetes and is built using microservices and operators. You can read more about Giantnetes in a post we did for The New Stack earlier this year. We’ve been developing with microservices for a long time but operators are a much newer concept and the term was originally coined by CoreOS.... Read More

Wait for it - Using Readiness Probes for Service Dependencies in Kubernetes

On in tech

In a perfect world of microservices every part is aware that things can break. If some endpoint can’t be reached it should just be retried after some time and repeated over and over. This connection problem will be monitored and some upper layer may decide to take further actions. The microservice does its one job and acts resiliently with regards... Read More

On Running your Local Development Environment in Kubernetes

On in tech

At Giant Swarm, I work on Microservice Infrastructure and a lot of my work is centered around improving how we run clusters as well as software on clusters. However, this work isn’t reflected in my local development environment – as much effort as we put into improving the server experience, the local development experience still lags behind. From Snowflake to... Read More

Adding a gRPC engine to boost CoreOS fleet scalability and performance

On in tech

Note: As the ecosystem has developed a lot over the last few years, we moved our user services away from fleet into Kubernetes running on a lightweight underlying fleet layer. However, with recent developments in Kubernetes and lightweight container engines like rkt, we revisited our decision and decided to also migrate our base layer to Kubernetes and thus won’t be... Read More

Understanding Basic Kubernetes Concepts V - Daemon Sets and Jobs

On in tech

This post is the fifth in a series of blog posts about basic Kubernetes concepts. In the first one I explained the concepts of Pods, Labels, and Replica Sets. In the second post we talked about Deployments. The third post explained the Services concept and in the forth we looked at Secrets and ConfigMaps. In this final post we will... Read More

Understanding Basic Kubernetes Concepts IV - Secrets and ConfigMaps

On in tech

This post is the fourth in a series of blog posts about basic Kubernetes concepts. In the first one I explained the concepts of Pods, Labels, and Replica Sets. In the second post we talked about Deployments. The third post explained the Services concept and now we will look at Secrets and ConfigMaps. In the fifth and final post we... Read More

Understanding Basic Kubernetes Concepts III - Services Give You Abstraction

On in tech

This post is the third in a series of blog posts about basic Kubernetes concepts. In the first one I explained the concepts of Pods, Labels, and Replica Sets. In the second post we talked about Deployments. This post will elaborate the Services concept. In the forth we look at Secrets and ConfigMaps. In the fifth and final post we... Read More

Getting Started With A Local Kubernetes Environment

On in tech

Update: This post has seen some great response and I’ve been receiving lot’s of nice suggestions. I updated the post with two more options that can be found in the official Kubernetes repo. There’s some more options in the comments below. Thanks everyone for your feedback. At Giant Swarm we’re currently working on the next generation of our Microservice Infrastructure... Read More

Rolling Updates Of Kubernetes On Top Of Fleet

On in tech

As some of you might have seen, we recently released a whole set of provisioning tools for CoreOS fleet clusters. Now, when you have a fleet cluster, the next step would be deploying unit files on it using fleetctl. However, that process gets quite tedious especially with groups of units that should go together. Further, once you go into more... Read More

Benchmarking Fleet Clusters With Rkt And Docker

On in tech

On Tuesday we showed you how you can simulate CoreOS clusters on a single machine with Onsho. We also mentioned that we are working on improving fleet to make it more performant for use in highly scalable microservice infrastructures. The fleet PR is a first effort to merge the changes we made to our internal fork of fleet upstream. When... Read More

Replicate A Whole Data Center Locally With Onsho

On in tech

Two weeks ago we introduced Mayu and Yochu, a set of tools to set up customized CoreOS clusters on bare metal, available as open source. However, not everyone has access to some bare metal or spare servers sitting in his basement. This is why we created Onsho, which we are releasing today as open source software. Onsho is a tool... Read More

Meet Kocho - Our Bootstrapping Tool For CoreOS Clusters On AWS

On in tech

Last week we made Mayu and Yochu, a set of tools to set up customized CoreOS clusters on bare metal, available as open source. Today we are introducing Kocho, Mayu’s cloudy sibling in our family of CoreOS provisioning tools. Bootstrap AWS CoreOS Clusters with Kocho Like Mayu, Kocho sets up a fleet cluster with CoreOS nodes, but instead of bare... Read More

Enter Mayu & Yochu – Our Provisioning Tools For CoreOS On Bare Metal

On in tech

Despite the ongoing growth of the public cloud market we see more and more companies operating their own bare metal. These are not only big tech companies, but even startups that require significant resources, which would get prohibitively expensive on current cloud providers. However, managing and provisioning your own bare metal is not easy and with the move towards “disposable”... Read More

Continuous Deployments with Docker Hub

On in tech

Swarm Inception is a simple application which implements continuous deployments using Docker Hub’s builder service. Builds are conducted via Github webhooks and when the build completes, Docker Hub will call this service’s webhook handler, which in turn triggers a deployment or update of the image built by Dockerhub onto Giant Swarm’s public cloud. While Inception uses Giant Swarm’s APIs to... Read More

Deploy An Elastic High-Availability SQL Cluster with Crate and Weave

On in tech

Recently, I sat down with one of our customers to see if we can get a Crate cluster running in their dedicated Giant Swarm cluster. As we have built Giant Swarm for exactly these kinds of use cases, it was easier than our customer would have expected, so I thought I’d share some details here with you. TL;DR: Basically we... Read More

Open Sourcing our CLI

On in tech

We are pleased to announce that our ‘swarm’ command line interface (CLI) has been Open Sourced under the Apache 2.0 License! We are also Open Sourcing all the tooling depended on by the CLI, including builder, a tool written in Go, and our Go client library, client-go which can be used to talk to the the Giant Swarm API with... Read More

Moving Docker Containers and Images Around

On in tech

Giant Swarm runs a Docker container registry at registry.giantswarm.io as a convenience feature for users that have signed up for the private alpha test. When you signup for an account, you also get an account in the registry we host. You can use this private registry to store container images for the services you run on Giant Swarm. One feature... Read More

Maslow’s Hierarchy of Cloud

On in tech

We all know Maslow’s hierarchy of needs and it’s various uses in psychology, sociology, management, and marketing in someway or the other. In the original pyramid, Maslow uses the terms (in order) “physiological”, “safety”, “belongingness” and “love”, “esteem”, “self-actualization”, and “self-transcendence” to describe a pattern that human motivations generally move through from lower to higher layers. While talking to our... Read More

Deploy a Clojure application in Under 1 Minute

On in tech

After having deployed a Meteor application in under 1 minute, I thought I’d try myself at another deployment. This time I wanted to go for something dynamic and having watched Simple Made Easy by Rich Hickey, the author of Clojure, I thought I’d try myself at deploying that. Again for the impatient, here the 1 minute fix: Prerequisites Docker A... Read More

Swacker: Code to Container, No Docker Required

On in tech

The dream of most development teams is to have a setup where code is committed, built, and tested on a continuous basis. This practice is called continuous integration (CI). Add deployment to that list of actions, and you get the practice of continuous deployment, which looks a bit like #commitcode and #lookatthatitworks. In practice it’s more like #thisisahugepainintheass to implement.... Read More

The New Make or Buy Decision in Cloud - Your Own Docker PaaS

On in tech

A lot has been said about how containerization and Docker enables companies to build and run their own PaaS the same way big companies like Facebook, Google, and Spotify have it internally. Some might even say that Docker needs the PaaS (or similar concepts) to be more than just containers. At the same time people are wondering, “Whatever Happened to... Read More

Building a Smart Client-Side JavaScript “Discuss on Hacker News” Button

On in tech

At Giant Swarm, we build infrastructure for developers, and of course we want our content to be visible amongst developers, too. To foster the distribution and discussion of our blog posts on Hacker News, we built ourselves a little button to appear here in our blog. No rocket science, just a little something we thought we’d share with you. Here... Read More

Deploy a Meteor Application in Under 1 Minute

On in tech

Recently, we had someone on Twitter asking us if we support Meteor. As we were not sure, I thought challenge accepted we could just try it out. And it was easier than I thought. If you’re really in a hurry here’s the 1 minute quick fix: Prerequisites A Giant Swarm account (or for local deployment Docker and Docker Compose) Your... Read More

Visualizing Apps Using Giant Swarm’s APIs

On in tech

Giant Swarm’s core values consist of transparency, enabling others to do their best work and providing reliable infrastructure. Our vision is to build a trusted collaborative compute model which provides resources when and where they are needed for helping you run your microservices in a scalable, reliable and secure way. The key tenants of collaborative coding are documentation and discussion,... Read More

Deploy a Ghost Blog in 10 Minutes with Giant Swarm

On in tech

Right before I started working fulltime at Giant Swarm, I authored a containerized deployment of Ghost which could be used by anyone to deploy a blog on our service. The first version of the deployment was fairly basic, so I spent a bit of time patching it up to include a few new features including: Automated backups of all content... Read More

Microservices Finally Deliver on the Promises of SOA

On in tech

We often hear that microservices should be loosely or de-coupled. The former reminds many software engineers of what SOA already stood for. Thus, there’s a common misunderstanding that having SOA is having a microservices architecture. However, there’s quite a difference, especially if you don’t look at the academic theories, but work on real-life projects that use these architecture patterns. SOA... Read More

Running an FI Ware Specific Enabler on Giant Swarm

On in tech

TL;DR: Running webservices like PPnet - a simple social network - from the european FICONTENT project on Giant Swarm was no problem at all. When looking for exciting use-cases for our microservice platform, one obvious candidate was Pixelpark, conveniently situated right here in beautiful Cologne. While we are working on multiple things together, one interesting project jumped out in the... Read More

How Docker Made Coding and Testing New Projects Fun and Accessible

On in tech

With Docker’s 2nd birthday coming up soon, I thought about what Docker has changed for me personally in this time and what that could mean for a wider group of people. But first a little background. In the recent years I've looked into many development trends and tried Ruby/Rails, Python/Django, Objective-C/iOS, but it was always combined with a huge hassle... Read More

Blogging with Docker on Giant Swarm - First Steps with Ghost and Wordpress

On in tech

tl;dr In the spirit of dogfooding I got my blog running on Giant Swarm, first I tried Ghost, then moved to Wordpress. My goal in this article was to do that without relying on any deep Docker or Giant Swarm knowledge. Learn how to do this yourself. My Twitter profile reads “developer whisperer” and that is always my answer to... Read More

Dogfooding: How we run our own Website on Giant Swarm

On in tech

Our product is created by developers for developers. To make our product great, we believe that eating one’s own dog food is required. In this article, I’d like to share with you how our own website, giantswarm.io, is currently set up on Giant Swarm. It provides you with an example for a real world use of our product. Additionally, it... Read More

Docker and Related Services Enable a Future of Microservices for Everyone

On in tech

Earlier in 2014 Benjamin Wootton wrote an insightful post on how microservices are not a free lunch. In that post he writes about the complexity of microservices in the real world and the many hurdles we have to take to make microservice architectures a reality. Especially, he writes about the "significant operations overhead" and "substantial DevOps skills required" to get... Read More

Getting started with Go and Docker for an elegant Gopher Gala

On in tech

This weekend is the Gopher Gala the world’s first Go(lang) distributed hackathon. As Golang is our primary and beloved language we figured it’s a perfect timing to show how easy it is to deploy Go code with Docker and a free account on Giant Swarm. The example If you have read a bit through our documentation, you know our famous... Read More

Getting Started with Microservices using Ruby on Rails and Docker

On in tech

This is a guest post by Dirk Breuer. tl;dr This article is a very opinionated approach to microservices and Docker in general and how a framework like Rails could fit in there. Further, we’re looking into how an infrastructure service built for microservices and Docker, Giant Swarm, could help getting it running in the cloud. Talking about architecture nowadays will... Read More

Getting Started with Java Development on Docker

On in tech

This week Anna, Stephan, Timo and myself were at W-Jax a big conference in Munich on enterprise technologies and especially Java. The interest in Docker and Giant Swarm was astonishing. One question that came up quite often was: How do I get started with Java development on Docker? Personally, I’m a friend of small examples - leveraging a minimal framework... Read More

CoreOS Meetup Cologne, October 14, 2014 Recap

On in tech

Yesterday we held the CoreOS Meetup for the first time in Cologne and it was a great success. Over 110 people had registered on Meetup and they sure turned up at Startplatz last night. Who wouldn’t come to see such distinguished speakers and meet tons of likeminded people. Not only did we have a full house, there were more than... Read More

The History and Future of Hosting

On in tech

“I think there is a world market for maybe five computers.” – Thomas Watson, chairman of IBM, 1943 To really understand what Giant Swarm is doing, it is important to take a look at the industry we are in and where it has come from. The future is often meaningless without understanding the past. I am talking about the hosting... Read More

Getting started with Docker and MeanJS

On in tech

To get started with a new technology it’s great to have a small, yet non-trivial example. Docker is an open-source project to easily create lightweight, portable, and self-sufficient containers from any application. We are using Docker as our core technology. With this tutorial we demonstrate how to use Docker by dockerizing MeanJS, a popular Node.JS Webstack. One of the great... Read More

Let’s start your journey towards microservices

Contact us Now