Skip to content

frimik/awesome-devops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 

Repository files navigation

awesome-devops

A list of truly awesome SRE or DevOps related stuff.

Kubernetes

  • Keiko - Keiko - Enable Kubernetes at scale - from Intuit. Creators of Argo CD etc.
  • helm-mapkubeapis - This is a Helm plugin which map deprecated or removed Kubernetes APIs in a release to supported APIs
  • kube-node-init - Kubernetes daemonset for node initial configuration. Currently for modifying files and systemd services on eksctl nodes without changing userdata
  • Kuard - Demo app for Kubernetes Up and Running book - Useful for testing basics of readynesschecks behaviours etc.
  • nodetaint - Controller to manage taints for nodes in a k8s cluster.
  • nidhogg - Kubernetes Node taints based on Daemonset Pods
  • kapp - Deploy and view groups of Kubernetes resources as "applications". Apply changes safely and predictably, watching resources as they converge.
  • k8s-metadata-injector - Inject metadata into kubernetes resources based on namespces
  • kubeapps - Your Application Dashboard for Kubernetes
  • helm-controller - A simple way to manage helm charts (v2 and v3) with a Custom Resource Definitions in k8s.
  • carvel - Carvel provides a set of reliable, single-purpose, composable tools that aid in your application building, configuration, and deployment to Kubernetes.
  • k8s-image-swaper - ☸️ Mirror images into your own registry and swap image references automatically.
  • banzaicloud/bank-vaults - A Vault swiss-army knife: a K8s operator, Go client with automatic token renewal, automatic configuration, multiple unseal options and more. A CLI tool to init, unseal and configure Vault (auth methods, secret engines). Direct secret injection into Pods.
  • Contour - open source Kubernetes ingress controller providing the control plane for the Envoy edge and service proxy.​
  • kubernetes-secret-generator - Kubernetes controller for automatically generating and updating secrets
  • kube-ns-suspender - A k8s controller that scales up and down namespaces on-demand with an embedded friendly UI and a Prometheus exporter. Inspired by kube-downscaler.

Kubernetes // Leader Election

Kubernetes // Observability

  • cloudprober - An active monitoring software to detect failures before your customers do.
  • kubernetes-mixin - Prometheus Monitoring Mixin for Kubernetes - A set of Grafana dashboards and Prometheus alerts for Kubernetes.
  • vigil - 🚦 Microservices Status Page. Monitors a distributed infrastructure and sends alerts (Slack, SMS, etc.).
  • gatus - ⛑ Automated service health dashboard - https://gatus.io
  • uptime-kuma - A fancy self-hosted monitoring tool - https://uptime.kuma.pet

Kubernetes // Grafana

  • Prometheus - Obviously ...
  • Karma - Alert dashboard for Prometheus Alertmanager
  • Loki - Like Prometheus, but for logs. https://grafana.com/loki
  • promcat - A resource catalog for enterprise-class Prometheus monitoringyou
  • dark - (grafana) Dashboards As Resources in Kubernetes
  • grabana - User-friendly Go library for building Grafana dashboards

Kubernetes // Authentication

  • kubelogin - kubectl plugin for Kubernetes OpenID Connect authentication (kubectl oidc-login)
  • gangway - An application that can be used to easily enable authentication flows via OIDC for a kubernetes cluster.

Kubernetes // Dashboards, UI, Reporting and Validation

  • k9s - 🐶 Kubernetes CLI To Manage Your Clusters In Style! k9scli.io
  • Polaris - Validation of best practices in your Kubernetes clusters
  • Forecastle - Forecastle is a control panel which dynamically discovers and provides a launchpad to access applications deployed on Kubernetes
  • kube-ops-view - Kubernetes Operational View - read-only system dashboard for multiple K8s clusters
  • BotKube - App that helps you monitor your Kubernetes cluster, debug critical deployments & gives recommendations for standard practices https://botkube.io
  • popeye - 👀 A Kubernetes cluster resource sanitizer. popeyecli.io
  • pluto - A cli tool to help discover deprecated apiVersions in Kubernetes - Easily Find Deprecated API Versions with Pluto
  • Kubeconform - A FAST Kubernetes manifests validator, with support for Custom Resources! (Supercedes kubeval)
  • Kail - kubernetes log viewer
  • kubespy - Tools for observing Kubernetes resources in real time, powered by Pulumi. https://pulumi.io/

Kubernetes // Storage and Databases

  • Vitess - A database clustering system for horizontal scaling of MySQL

Kubernetes // Provisioning and Dev Clusters

  • KubeStitch - Kubernetes deployment stitcher - local development and demo stack.

Kubernetes // Image Registries and Image Distribution

  • Kraken - P2P Docker registry capable of distributing TBs of data in seconds
  • trow - Container Registry and Image Management for Kubernetes Clusters
  • Harbor - An open source trusted cloud native registry project that stores, signs, and scans content.
  • Dragonfly - Dragonfly is an intelligent P2P based image and file distribution system
  • ecr-mirror - Mirror public repositories to internal ECR repos

Kubernetes // Orchestration

  • OperatorHub - OperatorHub.io is a new home for the Kubernetes community to share Operators. Find an existing Operator or list your own today.
  • ArgoCD - Declarative continuous deployment for Kubernetes. https://argoproj.github.io/argo-cd/
  • flagger - Progressive delivery Kubernetes operator (Canary, A/B Testing and Blue/Green deployments)

Kubernetes // Development environments

  • Skaffold - Skaffold handles the workflow for building, pushing and deploying your application, allowing you to focus on what matters most: writing code.
  • Tilt - Productivity for teams building Kubernetes apps. Smart Rebuilds, Continuous Feedback, Live Updates, Snapshots, and a lot more. tilt up and grok your workflow.
  • DevSpace - DevSpace - The Fastest Developer Tool for Kubernetes zap Automate your deployment workflow with DevSpace and develop software directly inside Kubernetes.
  • Loft - Namespace & Virtual Cluster Manager for Kubernetes - Lightweight Virtual Clusters, Self-Service Provisioning for Engineers and 70% Cost Savings with Sleep Mode

Kubernetes // Storage

  • rook - Open-Source, Cloud-Native Storage for Kubernetes - Production ready management for File, Block and Object Storage
  • ceph - Ceph uniquely delivers object, block, and file storage in one unified system.
  • minio - Kubernetes Native, High Performance Object Storage
  • longhorn - Cloud-Native distributed block storage built on and for Kubernetes

Kubernetes // Operator Frameworks

EC2

  • ec2-instance-selector - A CLI tool and go library which recommends instance types based on resource criteria like vcpus and memory

Terraform

Logs and Observability

Network logging

  • goreplay - GoReplay is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes. https://goreplay.org

Observability

  • gosivy - Another visualization tool for Go process metrics.

Prometheus

  • M3 - M3 monorepo - Distributed TSDB, Aggregator and Query Engine, Prometheus Sidecar, Graphite Compatible, Metrics Platform https://m3db.io/
  • exporter-merger - Merges Prometheus metrics from multiple sources

Automation and tasking

  • awesome_bot - awesome_bot checks for valid URLs in a file, it can be used to verify pull requests updating a README.
  • renovate - Renovatebot - Universal dependency update tool that fits into your workflows.
  • carvel vendir - Easy way to vendor portions of git repos, github releases, helm charts, docker image contents, etc. declaratively
  • semantic-release - packagerocket Fully automated version management and package publishing - semantic-release.gitbook.io

Command Line and Tooling

  • Script - Making it easy to write shell-like scripts in Go
  • Whalebrew - Homebrew, but with Docker images
  • aliases - Resolve dependency on all commands by container
  • EnvCLI - Don't install Node, Go, ... locally - use containers you define within your project. If you have a new machine / other contributors you just have to install docker and envcli to get started.
  • asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more https://asdf-vm.com/
  • NixOS - Reproducible builds and deployments.
  • repo - The Multiple Git Repository Tool
  • pet - Simple command-line snippet manager, written in Go.
  • the-way - A code snippets manager for your terminal.

Templating and configuration management

  • gomplate - A flexible commandline tool for template rendering. Supports lots of local and remote datasources. https://gomplate.ca
  • confd - Manage local application configuration files using templates and data from etcd or consul
  • remco - remco is a lightweight configuration management tool https://heavyhorst.github.io/remco/
  • Konfigurator - A kubernetes operator that dynamically generates and manages app configuration based on kubernetes resources
  • FlagSmith - Manage feature flags across web, mobile and server side applications

Docker

  • await - Await tool to check resource status.
  • aws-ecr-public - Public endpoint for AWS Elastic Container Registry
  • whoami - Tiny Go webserver that prints os information and HTTP request to output
  • local-docker-registry-proxy - Local Docker registry proxy stack for swift K3D (and other) container-related workflows.
  • dive - A tool for exploring each layer in a docker image

Build tools

  • Earthly - Build automation for the container era
  • Makisu - Fast and flexible Docker image building tool, works in unprivileged containerized environments like Mesos and Kubernetes.
  • Dagger - A PORTABLE DEVKIT FOR CI/CD PIPELINES.
  • Melange - build APKs from source code.
  • apko - apko: apk-based OCI image builder - Build OCI images using APK directly without Dockerfile

Container Image and Container OS

  • Wolfi - Wolfi is a community Linux OS designed for the container and cloud-native era. Chainguard build curated distroless images.

On prem

Documentation

  • Grip - Preview GitHub Markdown files like Readme locally before committing them.

Continuous Integration / Continuous Delivery

  • Concourse CI - Continuous thingdoer - Concourse presents a general approach to automation that makes it great for CI/CD.

Python

  • python-poetry - PYTHON PACKAGING AND DEPENDENCY MANAGEMENT MADE EASY

Go

GoLang

Networking

Networks, firewalls etc

  • alterNAT - High availability implementation of AWS NAT instances.
  • vyos - Open source router and firewall platform. vyos.io
  • Nebula - A scalable overlay networking tool with a focus on performance, simplicity and security. defined.net

Other

  • Proxmox - powerful and efficient open-source software to simplify your server management
  • Excalidraw - Virtual whiteboard for sketching hand-drawn like diagrams. - excalidraw.com
  • diagrams - 🎨 Diagram as Code for prototyping cloud system architectures.
  • Heimdall - An Application dashboard and launcher

Content Distribution

  • imgproxy - Fast and secure standalone server for resizing and converting remote images

Performance related

Browser automation

Jsonnet

Developer Experience Infrastructure (DXI)