A comprehensive reference for all topics related to building and maintaining microservices

Overview

The-Microservices-Pandect

This pandect (πανδέκτης is Ancient Greek for encyclopedia) was created to help you find and understand almost anything related to Microservices that is available online.

Other Pandects from the series:

Essential-Reading

General Resources

Platforms

  • AWS - Amazon Web Services on-demand cloud computing platform
  • Azure - cloud computing service created by Microsoft
  • Google Cloud Platform - GCP - suite of cloud computing services from Google
  • OpenStack - free, open standard cloud computing platform
  • Digital Ocean - DigitalOcean provides developers with cloud services
  • Linode - cloud hosting company that provides virtual private servers

Stories from the Industry

Compilations & Resource Collections

Roadmaps

Podcasts

  • Cloudcast - independent Cloud Computing podcast [Years: 2011 - now, Status: active]
  • PodCTL - podcast focused on Cloud-native applications (by Red Hat) [Years: 2017 - now, Status: active]
  • Kubernetes Podcast - Kubernetes Podcast from Google [Years: 2018 - now, Status: active]
  • Data Engineering Podcast - Data management, microservices, ETL and more [Years: 2017 - now, Status: active]
  • The Secure Developer - A podcast about security for developers [Years: 2017 - now, Status: active]
  • APIs you won't hate - podcast about building and designing APIs [Years: 2019 - now, Status: active]

Youtube-Channels

  • Continuous Delivery - Continuous Delivery Pipelines and Processes [Youtube, 57k Subscribers]
  • CNCF - Cloud Native Computing Foundation - provides educational and informative content on cloud native computing [Youtube, 65k Subscribers]
  • Snyk - build cloud native applications securely [Youtube, 2k Subscribers]
  • CloudBeesTV - cloud conferences from the end-to-end automated software delivery company [Youtube, 9k Subscribers]
  • Containers from the Couch - learning resources on Container Services [Youtube, 4k Subscribers]
  • GOTO Conferences - GOTO is a software development content and events platform [Youtube, 230k Subscribers]

Observability

General Monitoring

Error Monitoring

Alerting

Logging

  • loki - horizontally-scalable, highly-available, multi-tenant log aggregation system [GitHub, 13077 stars]

Visualizing

  • grafana - observability and data visualization platform [GitHub, 42460 stars]

Deployment

General Deployment Tools

  • kubespray - Deploy a Production Ready Kubernetes Cluster [GitHub, 10705 stars]

Zero Downtime Deploys

Tools:
  • flagger - Canary, A/B Testing and Blue/Green deployments for Kubernetes [GitHub, 2950 stars]

CI/CD

General
  • Tekton - open-source framework for creating CI/CD systems
GitOps:
  • flux - The GitOps Kubernetes operator [GitHub, 6405 stars]
  • ArgoCD - A declarative, GitOps continuous delivery tool for Kubernetes

Cost-Optimization

General
AWS
  • Spot Fleet [AWS Services]
  • AutoSpotting - open source spot market automation tool for EC2 [GitHub, 1946 stars]
Autoscaling
  • keda - Kubernetes-based Event Driven Autoscaling [GitHub, 3284 stars]
General Tools
  • Komiser - Multi-cloud environment inspector for costs and security [GitHub, 2599 stars]
  • Infracost - Cloud cost estimates for Terraform in your CLI and pull requests [GitHub, 3135 stars]

Stateful-Workloads

Databases and Operators

General
  • OperatorHub.io - OperatorHub.io is a resource for the Kubernetes community to find and share Operators
In-memory
  • redis - Redis is an open source, in-memory data structure store
MySQL
  • MariaDB - MariaDB Server: The open source relational database
  • vitess - Canary, A/B Testing and Blue/Green deployments for Kubernetes [GitHub, 2950 stars]
PostgreSQL
OLAP - Online Analytical Processing
Object Storage
  • Ceph - implements object storage on a single distributed computer cluster

Serverless

General

Examples and Learning Resources

Tools & Frameworks

  • serverless - Serverless Framework using AWS Lambda, Azure Functions, Google CloudFunctions [GitHub, 39898 stars]
  • Chalice - Python Serverless Microframework for AWS [GitHub, 7972 stars]
  • OpenFaaS - Serverless Functions Made Simple [GitHub, 19866 stars]
  • Up - deploy infinitely scalable serverless apps, apis, and sites [GitHub, 8230 stars]
  • Dapr - portable, serverless, event-driven runtime for stateless and stateful microservices [GitHub, 13585 stars]
  • Nuclio - High-Performance Serverless event and data processing platform [GitHub, 3938 stars]

Security

General Tools

  • kubesploit - Cross-platform post-exploitation HTTP/2 Command & Control server [GitHub, 475 stars]
  • consul - Consul automates networking for simple and secure application delivery
  • Komiser - Multi-cloud environment inspector for costs and security [GitHub, 2599 stars]
  • tfsec - Security scanner for your Terraform code [GitHub, 2797 stars]

Security Audit Tools

  • kube-bench - Checks usage of security best practices as defined in the CIS Kubernetes Benchmark [GitHub, 3755 stars]
  • Prowler - security tool to perform AWS security best practices assessments [GitHub, 3478 stars]
  • ScoutSuite - Multi-Cloud Security Auditing Tool [GitHub, 3478 stars]

Secrets

  • sealed-secrets - A Kubernetes controller and tool for one-way encrypted Secrets [GitHub, 3490 stars]
  • Vault - Manage Secrets and Protect Sensitive Data
  • aws-vault - securely store and access AWS credentials in development environments [GitHub, 4960 stars]
  • SOPS: Secrets OPerationS - Simple and flexible tool for managing secrets on any platform [GitHub, 7611 stars]

Protocols

Auth, API Gateways etc.

  • Grant - OAuth Proxy [GitHub, 3339 stars]
  • Dex - OpenID Connect (OIDC) identity and OAuth 2.0 provider [GitHub, 5806 stars]
  • Kong - Cloud-Native API Gateway [GitHub, 29353 stars]
  • Gloo Edge - Kubernetes-native API Gateway Built on Envoy [GitHub, 2945 stars]

Other

  • Awesome WAF - Everything about web-application firewalls (WAF) [GitHub, 3598 stars]
  • PENTESTING-BIBLE - Learn ethical hacking [GitHub, 8200 stars]

Learning Resources

Kubernetes

AWS

Kafka

DevOps

  • DevOps Guide - from basic to advanced with Interview Questions and Notes [GitHub, 3680 stars]
  • DevOps Exercises - questions and exercises on technical topics related to DevOps and SRE [GitHub, 8531 stars]

Docker

  • Docker Curriculum - comprehensive tutorial on getting started with Docker [GitHub, 4244 stars]

Infrastructure as Code

Infrastructure as Code Tools

  • Terraform - open-source infrastructure as code software tool for consistent CLI workflow
  • CloudFormation - cloud provisioning with infrastructure as code for AWS
  • Azure Resource Manager - manage your app resources on Azure
  • Cloud Deployment Manager - create and manage cloud resources on GCP with simple templates
  • HashiCorp Vagrant / [GitHub, 22046 stars]
  • CFEngine - automate your infrastructure, security & compliance
  • Ansible - automation across open hybrid cloud deployments
  • CHEF - Policy-Based Configuration Management Automation Architecture
  • Pulumi - Modern Infrastructure as Code. Any cloud, any language [GitHub, 8896 stars]

Additional Tooling

  • Terraformer - CLI tool to generate terraform files from existing infrastructure (reverse Terraform) [GitHub, 4962 stars]
  • Checkov - static code analysis tool for infrastructure-as-code [GitHub, 2775 stars]

Examples and Learning Resources

Other

Streaming Frameworks / Engines

Effective Containerization

  • distroless - Language focused docker images, minus the operating system [GitHub, 9770 stars]

Testing

  • Terratest - Go library to write automated tests for your infrastructure code [GitHub, 5289 stars]
  • Serverless Offline - Emulate AWS λ and API Gateway locally [GitHub, 4131 stars]
  • Moto - easily mock out tests based on AWS infrastructure [GitHub, 4682 stars]
  • LocalStack - fully functional local AWS cloud stack [GitHub, 4682 stars]

PaaS - Platform-as-a-service

  • Empire - PaaS built on top of Amazon EC2 Container Service with Heroku like workflow [GitHub, 2644 stars]

Container Network Interface (CNI)

  • CNI - networking for Linux containers [GitHub, 3524 stars]

Kafka

  • strimzi - Apache Kafka running on Kubernetes [GitHub, 2434 stars]

License CC0

Attributions

Resources

  • All linked resources belong to original authors

Icons

Fonts

Owner
Ivan Bilan
Engineering Manager @trustyou. Technical areas of interest: Machine and Deep Learning for NLP, Microservices and Big Data
Ivan Bilan
A library that makes consuming a RESTful API easier and more convenient

Slumber is a Python library that provides a convenient yet powerful object-oriented interface to ReSTful APIs. It acts as a wrapper around the excellent requests library and abstracts away the handli

Sam Giles 597 Dec 13, 2022
🔥 Fire up your API with this flamethrower

🔥 Fire up your API. Documentation: https://flama.perdy.io Flama Flama aims to bring a layer on top of Starlette to provide an easy to learn and fast

José Antonio Perdiguero 216 Dec 26, 2022
A minimal, extensible, fast and productive API framework for Python 3.

molten A minimal, extensible, fast and productive API framework for Python 3. Changelog: https://moltenframework.com/changelog.html Community: https:/

Bogdan Popa 980 Nov 28, 2022
A Simple Kivy Greeting App

SimpleGreetingApp A Simple Kivy Greeting App This is a very simple GUI App that receives a name text input from the user and returns a "Hello" greetin

Mariya 40 Dec 02, 2022
You can use the mvc pattern in your flask application using this extension.

You can use the mvc pattern in your flask application using this extension. Installation Run the follow command to install mvc_flask: $ pip install mv

Marcus Pereira 37 Dec 17, 2022
A tool for quickly creating REST/HATEOAS/Hypermedia APIs in python

ripozo Ripozo is a tool for building RESTful/HATEOAS/Hypermedia apis. It provides strong, simple, and fully qualified linking between resources, the a

Vertical Knowledge 198 Jan 07, 2023
Trame let you weave various components and technologies into a Web Application solely written in Python.

Trame Trame aims to be a framework for building interactive applications using a web front-end in plain Python. Such applications can be used locally

Kitware, Inc. 85 Dec 29, 2022
A PC remote controller for YouTube and Twitch

Lazynite Lazynite is a PC remote controller for YouTube and Twitch on Telegram. Features Volume control; Browser fullscreen / video fullscreen; PC shu

Alessio Celentano 46 Nov 12, 2022
Otter is framework for creating microservices in Flask like fassion using RPC communication via message queue.

Otter Framework for microservices. Overview Otter is framework for creating microservices in Flask like fassion using RPC communication via message qu

Volodymyr Biloshytskyi 4 Mar 23, 2022
The no-nonsense, minimalist REST and app backend framework for Python developers, with a focus on reliability, correctness, and performance at scale.

The Falcon Web Framework Falcon is a reliable, high-performance Python web framework for building large-scale app backends and microservices. It encou

Falconry 9k Jan 01, 2023
Web APIs for Django. 🎸

Django REST framework Awesome web-browsable Web APIs. Full documentation for the project is available at https://www.django-rest-framework.org/. Fundi

Encode 24.7k Jan 03, 2023
An easy-to-use high-performance asynchronous web framework.

An easy-to-use high-performance asynchronous web framework.

Aber 264 Dec 31, 2022
Loan qualifier app - Loan Qualifier Application Built With Python

Loan Qualifier Application This program is designed to automate the discovery pr

Phil Hills 1 Jan 04, 2022
CherryPy is a pythonic, object-oriented HTTP framework. https://docs.cherrypy.org/

Welcome to the GitHub repository of CherryPy! CherryPy is a pythonic, object-oriented HTTP framework. It allows building web applications in much the

CherryPy 1.6k Dec 29, 2022
An alternative serializer implementation for REST framework written in cython built for speed.

drf-turbo An alternative serializer implementation for REST framework written in cython built for speed. Free software: MIT license Documentation: htt

Mng 74 Dec 30, 2022
Flask + Docker + Nginx + Gunicorn + MySQL + Factory Method Pattern

This Flask project is reusable and also an example of how to merge Flask, Docker, Nginx, Gunicorn, MySQL, new: Flask-RESTX, Factory Method design pattern, and other optional dependencies such as Dyna

Facundo Padilla 19 Jul 23, 2022
A high-level framework for building GitHub applications in Python.

A high-level framework for building GitHub applications in Python. Core Features Async Proper ratelimit handling Handles interactions for you (

Vish M 3 Apr 12, 2022
Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.

Tornado Web Server Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. By using non-blocking ne

20.9k Jan 01, 2023
Lemon is an async and lightweight API framework for python

Lemon is an async and lightweight API framework for python . Inspired by Koa and Sanic .

Joway 29 Nov 20, 2022
Microservice example with Python, Faust-Streaming and Kafka (Redpanda)

Microservices Orchestration with Python, Faust-Streaming and Kafka (Redpanda) Example project for PythonBenin meetup. It demonstrates how to use Faust

Lé 3 Jun 13, 2022