DevOps&SRE Library
18.3K subscribers
456 photos
5 videos
2 files
4.93K links
Библиотека статей по теме DevOps и SRE.

Реклама: @ostinostin
Контент: @mxssl

РКН: https://www.gosuslugi.ru/snet/67704b536aa9672b963777b3
Download Telegram
sh

A shell parser, formatter, and interpreter with bash support; includes shfmt

https://github.com/mvdan/sh
dkron

Dkron is a distributed cron service, easy to setup and fault tolerant with focus in:

- Easy: Easy to use with a great UI
- Reliable: Completely fault tolerant
- Highly scalable: Able to handle high volumes of scheduled jobs and thousands of nodes

Dkron is written in Go and leverage the power of the Raft protocol and Serf for providing fault tolerance, reliability and scalability while keeping simple and easily installable.

https://github.com/distribworks/dkron
preevy

Preevy is a powerful Command Line Interface (CLI) tool designed to simplify the process of creating ephemeral preview environments. With Preevy, you can easily provision a preview environment for any Docker-Compose application in the cloud.

https://github.com/livecycle/preevy
opencost

OpenCost models give teams visibility into current and historical Kubernetes spend and resource allocation. These models provide cost transparency in Kubernetes environments that support multiple applications, teams, departments, etc.

OpenCost was originally developed and open sourced by Kubecost. This project combines a specification as well as a Golang implementation of these detailed requirements.

https://github.com/opencost/opencost
Automated deployment of terraform modules in different AWS regions

If you have created terraform modules and want to deploy them in different AWS regions then this is the right place.

This blog covers:

How to provision modules in multiple AWS regions using Terraform?
Other possible options.

https://awstip.com/automated-deployment-of-terraform-modules-in-different-aws-regions-a3101da51a1c
Managing Terraform Modules in a Monorepo

A solution for versioning multiple Terraform module while preserving your Monorepo

https://medium.com/@hello_9187/managing-terraform-modules-in-a-monorepo-e7e89d124d4a
Automating alert 🚨 creation with Terraform config-driven import in Google Cloud ☁️

https://medium.com/google-cloud/automating-alert-creation-with-terraform-config-driven-import-in-google-cloud-%EF%B8%8F-1c9093ddd79f
terraform-graph-beautifier

Command line tool allowing to convert the barely usable output of the terraform graph command to something more meaningful and explanatory.

https://github.com/pcasteran/terraform-graph-beautifier
The Saga is Antipattern

The Saga pattern is often positioned as a better way to handle distributed transactions. I see no point in discussing Saga's disadvantages because the problem is that Saga should not be used in the microservices at all:

If you need distributed transactions across a few microservices, most likely you incorrectly defined and separated domains.

Below is a long explanation why.

https://dev.to/siy/the-saga-is-antipattern-1354
Lost in transit: debugging dropped packets from negative header lengths

https://blog.cloudflare.com/lost-in-transit-debugging-dropped-packets-from-negative-header-lengths
Analyzing Volatile Memory on a Google Kubernetes Engine Node

TL:DR At Spotify, we run containerized workloads in production across our entire organization in five regions where our main production workloads are in Google Kubernetes Engine (GKE) on Google Cloud Platform (GCP). If we detect suspicious behavior in our workloads, we need to be able to quickly analyze it and determine if something malicious has happened. Today we leverage commercial solutions to monitor them, but we also do our own research to discover options and alternative methods.

One such research project led to the discovery of a new method for conducting memory analysis on GKE by combining three open source tools, AVML, dwarf2json, and Volatility 3, the result being a snapshot of all the processes and memory activities on a GKE node.

This new method empowers us and other organizations to use an open source alternative if we do not have a commercial solution in place or if we want to compare our current monitoring to the open source one.

In this blog post, I’ll explain in detail how memory analysis works and how this new method can be used on any GKE node in production today.

https://engineering.atspotify.com/2023/06/analyzing-volatile-memory-on-a-google-kubernetes-engine-node
Crossplane: Why it Didn't Work for Us

We investigated Crossplane at a deep level and found it wasn't for us. Read on to learn about our investigation and the issues we found.

https://masterpoint.io/updates/passing-on-crossplane
Automate AWS SSO Using Terraform

Leveraging Terraform to automate the setup and configuration of SSO resources, streamline user management, and enhance security.

https://medium.com/cloud-native-daily/automate-aws-sso-using-terraform-2f219a45c16f
tfgen

Terragrunt alternative to keep your Terraform code consistent and DRY

https://github.com/refl3ction/tfgen
terraform-registry

This is an implementation of the Terraform registry protocol used to host a private Terraform registry.

https://github.com/nrkno/terraform-registry
tfvar

tfvar is a Terraform's variable definitions template generator. It scans your Terraform configurations or modules and extracts the variables into formats of your choice for editing, e.g., tfvar, environment variables, etc.

https://github.com/shihanng/tfvar
SRE Engagement Models

- Consulting
- Embedded
- Infra Team

https://certomodo.substack.com/p/sre-engagement-models
CloudFront and Terraform Essentials: How to Optimize Content Delivery

We are going to describe how CloudFront can be integrated with API Gateway to provide lower-latency. And we will go through the attributes of the CloudFront resources in Terraform, including the ones that we need to create the distribution and configure origins and behaviors.

https://medium.com/@xpiotrkleban/cloudfront-and-terraform-essentials-how-to-optimize-content-delivery-27c84e8aef04