I really appreciate how well this event came together. The virtual platform and diversity played a big part in this world-class experience. This was the perfect one to Ship It!, a brand new Changelog show that honours the makers, the shippers, & the visionaries that see it through. Tune in mid-May to find out more about the behind-the-scenes of this event.
This is part 4 in a cool series on The New Stack exploring the Kubeflow machine learning platform.
I recently built a four-node bare metal Kubernetes cluster comprising CPU and GPU hosts for all my AI experiments. Though it makes economic sense to leverage the public cloud for provisioning the infrastructure, I invested a fortune in the AI testbed that’s within my line of sight.
The author shares many insights into the choices he made while building this dream setup.
BuildKit CLI is a plugin for kubectl (the Kubernetes command-line tool). The plugin extends the functionality of kubectl, allowing to build container images without a local Docker installation.
This article tells you how to use BuildKit CLI and how it will improve your inner-loop productivity flow.
We’ve scaled Kubernetes clusters to 7,500 nodes, producing a scalable infrastructure for large models like GPT-3, CLIP, and DALL·E, but also for rapid small-scale iterative research such as Scaling Laws for Neural Language Models. Scaling a single Kubernetes cluster to this size is rarely done and requires some special care, but the upside is a simple infrastructure that allows our machine learning research teams to move faster and scale up without changing their code.
Container security is often overlooked topic, as people assume that containers are secure by default - which is not true. One of the ways to secure container workloads in Docker and Kubernetes is to leverage
seccomp profiles and this advanced feature of container runtimes is explained and shown in this article.
It may be Monday, but that doesn’t mean we can’t have a bit of fun, does it? If fun to you is ordering pizza by writing some YAML… step right up and place your order:
$ kubectl get pizzastore store-123 -o yaml kind: PizzaStore metadata: name: store-123 spec: address: | 51 Niagara St Toronto, ON M5V1C3 id: "10391" phone: 416-364-3939 products: - description: Unique Lymon (lemon-lime) flavor, clear, clean and crisp with no caffeine. id: 2LSPRITE name: Sprite size: 2 Litre
Do you know YAML tricks and gotchas? In this video you will learn the basics of lists and maps as well as topics such as snippet reuse and managing several definitions in the same file 🙇
Congrats to Salman for launching his YouTube channel!
Monitoring and debugging distributed systems is hard. In this episode, we catch up with Kelsey Hightower, Stevenson Jean-Pierre, and Carlisia Thompson to get their insights on how to approach these challenges and talk about the tools and practices that make complex distributed systems more observable.
k0s is an all-inclusive Kubernetes distribution with all the required bells and whistles preconfigured to make building a Kubernetes clusters a matter of just copying an executable to every host and running it.
We’re talking with Gerhard Lazu, our resident SRE, ops, and infrastructure expert about the evolution of Changelog’s infrastructure, what’s new in 2020, and what we’re planning for in 2021. The most notable change? We’re now running on Linode Kubernetes Engine (LKE)! We even test the resilience of this new infrastructure by purposefully taking the site down. That’s near the end, so don’t miss it!
In this post I share the latest 2020 and beyond details for changelog.com’s infrastructure.
Why Kubernetes? How is Kubernetes simpler than what we had before? What was our journey to running production on Kubernetes? What worked well? What could have been better? What comes next for changelog.com? Read this post and listen to episode #419 to learn all the details.
This segment will be included in a podcast near you soon enough, but we thought it’d be fun to share the video as a standalone since we watched the whole thing play out via K9s.
kubectl is the new SSH. If you are using it to update production workloads, you are doing it wrong. See examples on how to automate application updates.
We’re using this in our new Kubernetes-based infrastructure (more details on that coming to a podcast near you). Keel runs as a single container, scanning Kubernetes and Helm releases for outdated images. Super cool stuff, and even has a web interface (which we’re not using yet, but should).
We’ve linked K9s up in the past, but I’ve been playing with it today and I just had to share it again. Gerhard has us up and running on LKE (more on that coming to the blog and podcast soon) so I’ve had a chance to kick the tires a bit.
I have no idea how any of this magic works, but I do know that I like it and I’m excited to learn more. Here’s a screen grab of its Pulses feature, which gives you an overview of your entire cluster.
Tightly integrated with GitLab, GitHub, and Bitbucket, Gitpod automatically and continuously prebuilds dev environments for all your branches. As a result, team members can instantly start coding with fresh, ephemeral and fully-compiled dev environments - no matter if you are building a new feature, want to fix a bug or do a code review.
How do you respond when someone asks:
Is Kubernetes right for us?
Where do you start? Let’s talk about IT modernisation, beginning with the problem that needs to be solved, and exploring any constraints that are obvious.
In the search for a comfy and portable developer experience, I’ve made a lot of compromises in the past. The experience has gotten significantly better recently thanks to VS Code and Kubernetes. This workflow also does a good job for underpowered laptops or when working with lots of different and conflicting versions of python or ruby.
This is a solid, balanced piece that doesn’t overly sell the workflow and walks you through setting it up for yourself.
Application deployment and management should be automated, auditable, and easy to understand and that’s what beetle tries to achieve in a simple manner. Beetle automates the deployment and rollback of your applications in a multi-cluster, multi-namespaces kubernetes environments. Easy to integrate with through API endpoints & webhooks to fit a variety of workflows.
This article compares six static tools to validate and score Kubernetes YAML files for best practices and compliance.
One of the challenges with YAML is that it’s rather hard to express constraints or relationships between manifest files.
What if you wish to check that all images deployed into the cluster are pulled from a trusted registry?
How can you prevent Deployments that don’t have PodDisruptionBudgets from being submitted to the cluster?
I was recently involved in an interesting project. Deploying a full production and development environment on a very budget-constrained Kubernetes cluster, managed through GKE. A big departure from my usual, where I have nearly unlimited budget for my cluster. The issues I ran into, and the solutions for them, were actually the inspiration to start this blog, just so I could write this post.
This is a great reason to start a new blog 👏
Yeah, this might be crazy… Crazy like a FOX
Remember that README that answers the age old question:
What happens when you type google.com into your browser’s address box and press enter?
Well, the format is back with a Kubernetes focus, this time answering:
Imagine I want to deploy nginx to a Kubernetes cluster. I’d probably type something like this in my terminal:
kubectl run nginx --image=nginx --replicas=3
and hit enter. After a few seconds, I should see three nginx pods spread across all my worker nodes. It works like magic, and that’s great! But what’s really going on under the hood?
Bryan Liles joins Johnny and Mat for a wide-ranging discussion that starts with the question: what even is enterprise Go?
Lens is a standalone application for MacOS, Windows, and Linux. It’s open source and free.
If you’re using Docker, the next natural step seems to be Kubernetes, aka K8s. Or is it? If you’re part of a small team, Kubernetes probably isn’t for you: it’s a lot of pain with very little benefits.