I’ve recently co-founded a startup, and after working so long in more mature enterprises with diverse toolchains, it was actually massively educational to return to first steps and figure out what our critical needs were, balanced with essentially zero budget. As we’ve grown and raised money, we’ve graduated in some areas to other tools, but I wanted to share what we felt were the absolute can’t-live-without-tools for a team building SaaS software.
I was speaking with a VP of Engineering friend at last year’s KubeCon about how to pitch Kubernetes to the C-Suite. The benefits for innovation were clear - containerized microservices empowered her small teams to deliver more value, more rapidly. As is often the case with Boardroom discussions, though, the question of cost was always next. Sure, they want you to innovate - as long as it’s within the constraints of a budget! But cost discussions around Kubernetes can be difficult.
So far we covered team culture which amplifies our code culture and design. It was kind of abstract so far and you’ll be forgiven if you skipped right a way to this part. I will cover our test and release pipeline, the thing that probably has had the biggest impact on Marathon’s stability. The pipeline enabled us to discover issues before our users did. I will first give an overview of the pipeline stages and dive deep into the Loop. You will soon see what I meant by that.
Minimizing costs, reducing risk, and maximizing business value—all at the same time—requires a delicate balancing act. It’s not a new challenge, nor is it unique to IT infrastructures. But when it comes to the cloud, especially in hybrid cloud scenarios, it requires you to understand the performance, risk/compliance, and cost impacts of your current resource allocations and then adjust to maintain the optimal decisions to meet your SLA and budget targets.
Today we released updates for a series of vulnerabilities termed ‘There’s a hole in the boot’ / BootHole in GRUB2 (GRand Unified Bootloader version 2) that could allow an attacker to subvert UEFI Secure Boot. The original vulnerability, CVE-2020-10713, which is a high priority vulnerability was alerted to Canonical in April 2020.
Kubernetes is the most popular Open Source technology of the last five years. It was created by Google to allow companies to use container (Docker) applications in production. Today, Kubernetes is the new standard for running applications in the Cloud or on its servers (on-premise). I even heard from a Cloud architect from Azure: "our customers no longer come to us to do Cloud, but to do Kubernetes". That's to say how much a utility software* upsets a whole ecosystem.
Many of Spot’s AWS customers are using Kubernetes Operations (kops) to self-manage their Kubernetes clusters. The tool significantly simplifies cluster set up, lifecycle management via instance groups, Kubernetes Day 2 operations and generates Terraform configurations, making it a popular tool for deploying production-grade k8s clusters.
Kubernetes provides a powerful networking model for microservices. One of the pillars of this model is that each pod has its own IP address and is directly addressable within the cluster. As a consequence, each Kubernetes cluster usually has a flat virtual network that external hosts can’t reach directly. That means routing traffic from clients outside the cluster to services deployed inside the cluster requires some additional work.