DevOps / SRE - Top Links Last Week
Week 24 - Issue #83
Week 24 - Issue #83
How we built daily.dev, the 150k+ developer community
Daily.dev is a top news resource for programmers with 150k+ active developers. It was created as a side project but quickly gained traction due to the organic community that developed around it. The company is devoted to helping developers grow professionally and providing quality information.
Kubernetes is Your Platform: Design Patterns For Extensible Controllers-My KubeCon Notes
Controller: A single reconcile loop (such as the ReplicaSet controller)
-Manager/Operator: A component that runs one or more controllers, like the Kube-controller-manager
-Custom Resource: an instance of a Kubernetes type defined by using Custom Resource Definitions. A custom resource is formed by metadata, spec, and status.
-Owner: Controller responsible for driving a custom resource from the observed state to the desired state. (Such as ReplicaSetController owns the ReplicaSet resources.)
-Watch: Action of a controller that looks
Multi-Stage Docker Layer Caching using Kaniko + Cloud Build
Pascal Zwikirsch created a GitHub repository detailing using Kaniko on Cloud Build to cache multi-stage Docker images. He walks us through the file structure and commands needed to get this up and to run. You can check out the repo here.
A Beginner-Friendly Introduction to Kubernetes
Kubernetes is a container orchestration framework that helps manage the lifecycle of containerized applications. It comprises a Master node that manages a group of worker nodes. A typical application has a web server with a backend service to persist data. To deploy an application on Kubernetes, you need to create a Dockerfile, set up a Cloud SQL instance, create a Google Cloud Storage bucket, and create a ConfigMap and Secret on your local minikube cluster. Finally, you can deploy your application using a Deployment and Service.
Don't use Kubernetes yet
There are many ways to run containers on the cloud, so it's especially tough to pick the right abstraction at the right time. Early-stage startups shouldn't run on Kubernetes yet, but eventually, growth-stage and large companies should be running on it in some form. A guide to choosing the right container abstractions is broken down by engineering teams 1e0, 1e1, and 1e2+ engineers. Of course, for any team building anything other than a simple web service, you'll run into a wall quickly with those services.