Files
sre/README.md
2022-02-17 17:16:09 +01:00

756 lines
60 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📚 Knowledge
> an attempt to centralize my studies/links/annotations for reference purposes
At the moment this is not useful for anyone but myself, if at some point I find it usefult I'll make it public.
<img src="resources/topic-graph.png" width="100%">
(click to see the large version)
## How to use this repo?
The README topics/links are organized following above chart. High-level subjects are usually parent topics, sub-topics are usually specialization of the main subject.
Depending on your level, you can dive deeper into a subject's sub-topics, or just move to the next one.
* Left to write: indicate how generic subjects are
* Top-bottom: Order of importance/relevancy and specialization of each subject or sub-category
e.g.:
Software Engineering
* Databases
* SQL
* Postgres Basics
* Postgres Internal
* How postgres replication works
* Parsing postgres WAL(WriteAheadLog)
* Versioning
For instance, take into account the snaptshot above. If you already know how to use SQL Databases, you might want to either:
* Continue to the right, learning more more about Postgres, and to the bottom, its internals, specialized internals like replication and WAL.
* Continue to the bottom/next topic: `Programming Languages`.
### Tags
> Categories to the links
* 🌍 - Interesting Link
* 📰 - Article / Paper
* 📕 - Book
* 💻 - Project
* 🎓 - Online Course
* 📜 - Certification
* 📼 - Video Presentation / Content
* 🎥 - Slides Presentation
* ✍🏼 - Written/Made by me
* 📝 - My annotations
* 🆓 - Free / No money required
* 💰 - Paid
* 💪🏼 - Practice
* 🐦 - Person to Follow on Twitter
* ⭐️ - Favourite Option (when there are many alternatives)
* 👨🏻‍🔧- Workshop
## References
* Site Reliability Engineering
* Culture
* Introductory
* [So you want to be an SRE? - Krishelle Hardson-Hurley](https://hackernoon.com/so-you-want-to-be-an-sre-34e832357a8c) 📰 🆓
* Deeper Introduction
* [Site Reliability Engineering - How Google Runs Production Systems](https://landing.google.com/sre/books/) 📕 🆓
* [The Site Reliability Workbook - Practical Ways to Implement SRE](https://landing.google.com/sre/books/) 📕 🆓
* [SRE - Keeping Google up and running 24/7](https://www.youtube.com/watch?v=yXI7r0_J29M) 📼 🆓
* [Keys to SRE - Google](https://www.youtube.com/watch?v=n4Wf14e2jxQ) 📼 🆓
* [Who/What? is SRE - Google (Panel)](https://www.youtube.com/watch?v=P83XESU3oZ8) 📼 🆓
* Google Series on SRE - class SRE implements DevOps
* [What's the Difference Between DevOps and SRE?](https://www.youtube.com/watch?v=uTEL8Ff1Zvk) 📼 🆓
* [SLIs, SLOs, SLAs, oh my!](https://www.youtube.com/watch?v=tEylFyxbDLE) 📼 🆓
* [Risk and Error Budgets](https://www.youtube.com/watch?v=y2ILKr8kCJU) 📼 🆓
* [Toil and Toil Budgets](https://www.youtube.com/watch?v=IvQ-15-yE_c) 📼 🆓
* [Now SRE Everyone Else with CRE!](https://www.youtube.com/watch?v=GQPzaq-owYM) 📼 🆓
* [Managing Risks as a Site Reliability Engineer](https://www.youtube.com/watch?v=4kGu1_M7Igg) 📼 🆓
* [Actionable Alerting for Site Reliability Engineers](https://www.youtube.com/watch?v=CGldVD5wR-g) 📼 🆓
* [Observability of Distributed Systems](https://www.youtube.com/watch?v=SoZZzB-yTOk) 📼 🆓
* [Incident Management](https://www.youtube.com/watch?v=n4y9dwinPBQ) 📼 🆓
* [Postmortems and Retrospectives](https://www.youtube.com/watch?v=UBe7U2b3tsA) 📼 🆓
* [IBM Garage - Building SRE from Scratch](https://medium.com/ibm-garage/building-sre-from-scratch-485e23985bbd)
* Use cases
* [Site Reliability Engineering - Google - Christof Leng](https://www.youtube.com/watch?v=d2wn_E1jxn4&) 📼 🆓
* [Implementing SLOs for a New Service - Squarespace](https://www.youtube.com/watch?v=ffbGyHPWwZM) 📼 🆓
* [Shipping Software with an SRE Mindset - Circonous](https://www.youtube.com/watch?v=TZWWkvxFXls) 📼 🆓
* [Latency SLOs Done Right - Circonous](https://www.youtube.com/watch?v=iPotMqzOsDI) 📼 🆓
* [Site Reliability Engineering at Dropbox - Tammy Buttow](https://www.youtube.com/watch?v=ggizCjUCCqE) 📼 🆓
* [190 Countries and 5 core SREs - Netflix - Jonah Horowitz](https://www.youtube.com/watch?v=koGaH4ffXaU) 📼 🆓
* [The SRE I Aspire to Be - Usenix - Yaniv Aknin](https://www.youtube.com/watch?v=KnC2eRUZMKY) 📼 🆓
* People to Follow
* [Liz Fong-Jones](https://twitter.com/lizthegrey) 🐦
* [Seth Vargo](https://twitter.com/sethvargo) 🐦
* [Tammy Buttow](https://twitter.com/tammybutow)
* Monitoring (See later Section)
* Incidents
* Being on Call
* [PagerDuty - Being on call](https://response.pagerduty.com/oncall/being_oncall/) 🆓
* Reponse
* [Google - Incident Management](https://www.youtube.com/watch?v=n4y9dwinPBQ) 🆓 📼
* [PagerDuty - Incident Response Management](https://response.pagerduty.com) 🆓
* [PagerDuty - Incident Reponse Course](https://www.youtube.com/watch?v=BI7nfkoTmiA) 🆓 📼
* [FireHydrant - Incident Ready](https://www.youtube.com/watch?v=K2sf2lb2-4I) 🆓 📼
* [O'Reilly - Incident Metrics in SRE](https://static.googleusercontent.com/media/sre.google/en//static/pdf/incident_metrics_in_sre.pdf) 📕 🆓
* Post-mortem
* [Google - Postmortems & Retrospectives](https://www.youtube.com/watch?v=UBe7U2b3tsA) 🆓 📼
* [PagerDuty - Post-mortems](https://response.pagerduty.com/after/post_mortem_process/) 🆓
* Software Engineering
* Version Control
* git
* [Version Control with Git](https://learning.oreilly.com/library/view/version-control-with/9781449345037/) 📕 💰
* Programming Languages
* Paradigms
* [Coursera - Programming Languages - Part A](https://www.coursera.org/learn/programming-languages) 📼 🎓 🆓
* [Coursera - Programming Languages - Part B](https://www.coursera.org/learn/programming-languages-part-b) 📼 🎓 🆓
* [Coursera - Programming Languages - Part C](https://www.coursera.org/learn/programming-languages-part-c) 📼 🎓 🆓
* **Functional Programming Languages**
* Haskell
* General Overview
* [Haskell From First Principles](http://haskellbook.com) 📕 💰
* [Book Exercises](https://github.com/marceloboeira/hffp) 📝 💪🏼 🆓
* [Simon Peyton Jones - Escape from the ivory tower - the Haskell journey](https://www.youtube.com/watch?v=re96UgMk6GQ) 📼 🆓
* [Simon Peyton Jones - A History of Haskell - being lazy with class](https://www.youtube.com/watch?v=06x8Wf2r2Mc) 📼 🆓
* [Andrew Rademacher - Demystifying Haskell](https://www.youtube.com/watch?v=apBWkBDVlow) 📼 🆓
* Use cases
* Facebook
* [Bryan O'Sullivan - The Bright Side of High Level Languages](https://www.youtube.com/watch?v=kGa78HQv_LQ) 📼 🆓
* [Jon Coens - The Road to Running Haskell at Facebook Scale](https://www.youtube.com/watch?v=sl2zo7tzrO8) 📼 🆓
* Practice
* [The Monad Challenges](http://mightybyte.github.io/monad-challenges/) 💪🏼 🆓
* Concepts
* Functional Programming
* [Computerphile - Functional Programming & Haskell](https://www.youtube.com/watch?v=LnX3B9oaKzw) 📼 🆓
* Lambda Calculus
* [Computerphile - Lambda Calculus](https://www.youtube.com/watch?v=eis11j_iGMs) 📼 🆓
* [Lambda Calculus - Fundamentals of Lambda Calculus & Functional Programming](https://www.youtube.com/watch?v=3VQ382QG-y4) 📼 🆓
* [Lambda Calculis - Church Encodings && Combinators](https://www.youtube.com/watch?v=pAnLQ9jwN-E) 📼 🆓
* The Y Combinator
* [Computerphile - Y Combinator](https://www.youtube.com/watch?v=9T8A89jgeTI) 📼 🆓
* Monads
* [Computerphile - What is a Monad?](https://www.youtube.com/watch?v=t1e8gqXLbsU) 📼 🆓
* [Functional Programming Patterns for Mere Mortals - Daniel Chambers](https://www.youtube.com/watch?v=v9QGWbGppis) 📼 🆓
* **Systems Programming Languages**
* Rust
* [The Rust Programming Language](https://doc.rust-lang.org/stable/book/) 📕 🆓
* [Annotations](https://github.com/marceloboeira/trpl) 📝
* SubProjects
* [grab](https://github.com/marceloboeira/grab) 👋🏼 like grep, but simpler [Chapters' 12/13 project].
* [dull](https://github.com/marceloboeira/dull) 🤪 a dummy multi-thread HTTP server [Chapter's 20 project].
* General Overview
* [Aaron Turon - Rust: confident, productive systems programming](https://www.youtube.com/watch?v=C6dNx9pY7p8) 📼 🆓
* [Steve Klabnik - The History of Rust](https://www.youtube.com/watch?v=79PSagCD_AY) 📼 🆓
* Use cases
* [Raph Levien - A Modern Editor Built in Rust](https://www.youtube.com/watch?v=SKtQgFBRUvQ) 📼 🆓
* Testing Frameworks
* [Speculate](https://github.com/utkarshkukreti/speculate.rs) Adds RSpec like behavior to rust via macros
* [Programming Rust](https://learning.oreilly.com/library/view/programming-rust/9781491927274/) 📕 💰
* Go
* Concurrency
* [Concurrency in Go](https://learning.oreilly.com/library/view/concurrency-in-go/9781491941294/) 📕 💰
* [Concurrency Patterns in Go](https://www.youtube.com/watch?v=YEKjSzIwAdA 📼 🆓)
* Channels
* [How do channels work? - Kavya Joshi - GopherCon 2017](https://www.youtube.com/watch?v=KBZlN0izeiY) 📼🆓⭐️
* [Practical Channel Work](https://www.youtube.com/watch?v=S11VFAMEs6E) 📼 🆓
* Garbage Collector
* [Golang's Realtime GC in Theory and Practice](https://www.youtube.com/watch?v=bMujSVMarqY) 📼 🆓
* [Garbage Colletor Handbook](https://learning.oreilly.com/library/view/the-garbage-collection/9781315388007/) 📕 💰
* Programming Topics
* Algorithms and Data Structures
* [Udacity - Intro to Data Structures and Algorithms by Google](https://eu.udacity.com/course/data-structures-and-algorithms-in-python--ud513) 🆓 🎓 📼
* [Coursera - Algorithms - Part 1 - Elementary data structures, sorting, and searching algorithms](https://www.coursera.org/learn/algorithms-part1) 🆓 🎓 📼
* [Coursera - Algorithms - Part 2 - Graph and string-processing algorithms](https://www.coursera.org/learn/algorithms-part2) 🆓 🎓 📼
* [Courated List of the 10 best free resources](https://medium.freecodecamp.org/these-are-the-best-free-courses-to-learn-data-structures-and-algorithms-in-depth-4d52f0d6b35a) 📰 🆓
* Locks
* [Let's talk locks! - Kavya Joshi](https://www.youtube.com/watch?v=tjpncm3xTTc) 📼 🆓
* Futex
* Semaphores
* Alternative Data Structures
* [“Esoteric Data Structures and Where to Find Them” - Allan Deutsch](https://www.youtube.com/watch?v=-8UZhDjgeZU) 📼 🆓
* 0:36 Slot map
* 10:08 Bloom filters (non-counting)
* 16:46 Navigation meshes
* 20:36 Hash pointer / Block chain / Merkle tree
* Probabilistic Data Structures
* Bloom Filter
* [An Introduction to Bloom Filter (Probably Yes, Always No)](https://www.youtube.com/watch?v=x2sLjRK56YU) 📼 🆓
* [Bloom Filters](https://www.youtube.com/watch?v=heEDL9usFgs) 📼 🆓
* [Bloom filter for System Design applications](https://www.youtube.com/watch?v=Bay3X9PAX5k) 📼 🆓
* [Bloom Filters](https://www.youtube.com/watch?v=bEmBh1HtYrw) 📼 🆓
* Count-Min-Sketch
* [Big Data with Sketchy Structures, Part 1 — the Count-Min Sketch](https://towardsdatascience.com/big-data-with-sketchy-structures-part-1-the-count-min-sketch-b73fb3a33e2a) 📰 🆓
* [Count min sketch | Efficient algorithm for counting stream of data | system design components](https://www.youtube.com/watch?v=ibxXO-b14j4) 📼 🆓
* Databases
* Theory
* [Designing Data-Intensive Applications - Martin Kleppmann](http://dataintensive.net) 📕 💰
* [CAP Theorem Revisited](http://robertgreiner.com/2014/08/cap-theorem-revisited/) 📰 🆓
* [The Pathologies of Big Data](https://queue.acm.org/detail.cfm?id=1563874) 📰 🆓
* Scaling
* Replication
* --
* Sharding
* [Understanding Database Sharding - DigitalOcean](https://www.digitalocean.com/community/tutorials/understanding-database-sharding) 📰 🆓 ⭐️
* [Sharding in Plain English - Citrus Data Blog](https://www.citusdata.com/blog/2018/01/10/sharding-in-plain-english/) 📰 🆓
* [Introduction to Sharding - B's March (MongoDB Focused)](https://www.youtube.com/watch?v=4upppuW7lGE) 📼 🆓
* [Sharding & Database Partitioning | System Design Basics](https://www.youtube.com/watch?v=RynPj8C0BXA) 📼 🆓
* [System Design - Sharding | Data Partitioning](https://www.youtube.com/watch?v=yNrVexoEnFM) 📼 🆓
* Operating
* [Your Database Connection Deserves A Name - Andy Grunwald](https://andygrunwald.com/blog/your-database-connection-deserves-a-name/) 📰 🆓
* SQL
* Row-based
* PostgreSQL
* [Postgres: Up & Running](https://learning.oreilly.com/library/view/postgresql-up-and/9781491963401/) 📕 💰 ⭐️
* [Learning PostgreSQL 11](https://learning.oreilly.com/library/view/learning-postgresql-11/9781789535464/) 📕 💰
* [Mastering PostgreSQL 11 - Second Edition](https://learning.oreilly.com/library/view/mastering-postgresql-11/9781789537819/) 📕 💰
* [Understanding Advanced Datatypes in PostgreSQL](https://www.youtube.com/watch?v=h0eEJ7uX13Q) 📼 🆓
* [Updating a 50 terabyte PostgreSQL database](https://medium.com/adyen/updating-a-50-terabyte-postgresql-database-f64384b799e7) 📰 🆓
* [How Twitch uses PostgreSQL](https://blog.twitch.tv/how-twitch-uses-postgresql-c34aa9e56f58) 📰 🆓
* [Handling Growth with Postgres: 5 Tips From Instagram](https://instagram-engineering.com/handling-growth-with-postgres-5-tips-from-instagram-d5d7e7ffdfcb) 📰 🆓
* [Updating a 50 terabyte PostgreSQL database](https://medium.com/adyen/updating-a-50-terabyte-postgresql-database-f64384b799e7) 📰 🆓
* [Sharding & IDs at Instagram](https://instagram-engineering.com/sharding-ids-at-instagram-1cf5a71e5a5c) 📰 🆓
* [Sharding and Scaling PostgreSQL: Principles and Practice Webinar](https://www.youtube.com/watch?v=mbXPbLjiYTI) 📼 🆓
* [Citus vs. Single-Node Postgres Database | A Side-by-Side Comparison](https://www.youtube.com/watch?v=g3H4nGsJsl0) 📼 🆓
* Replication
* [Three Approaches to PostgreSQL Replication and Backup](https://www.citusdata.com/blog/2018/02/21/three-approaches-to-postgresql-replication/) 📰 🆓
* [PostgreSQL Streaming Replication](https://www.youtube.com/watch?v=NaPnYQBBdyU) 📼 🆓
* [PostgreSQL Replication Concepts](https://www.youtube.com/watch?v=fsMvr96gTjY) 📼 🆓
* [PostgreSQL Replication by example - Kobus Wolvaardt](https://www.youtube.com/watch?v=5BeC1aD4z8E) 📼 🆓 ⭐️
* Monitoring
* [Key metrics for Amazon RDS PostgreSQL monitoring](https://www.datadoghq.com/blog/aws-rds-postgresql-monitoring/) 📰 🆓
* Operating
* Vacuum
* [Optimizing Storage and Managing Cleanup in PostgreSQL - Harshit Dwivedi](https://medium.com/coding-blocks/optimizing-storage-and-managing-cleanup-in-postgresql-c2fe56d4cf5) ⭐️ 📰 🆓
* [Optimizing, monitoring, and troubleshooting VACUUM operations in PostgreSQL - GCP](https://cloud.google.com/solutions/optimizing-monitoring-troubleshooting-vacuum-operations-postgresql.pdf) 📰 🆓
* [PgBouncer - Setup and Performance Use-cases](https://medium.com/swlh/pgbouncer-installation-configuration-and-use-cases-for-better-performance-1806316f3a22) 📰 🆓
* MySQL
* [Learn to stop using shiny new things and love MySQL](https://medium.com/@Pinterest_Engineering/learn-to-stop-using-shiny-new-things-and-love-mysql-3e1613c2ce14) 📰 🆓
* [Tracking the MoneyScaling Financial Reporting at Airbnb](https://medium.com/airbnb-engineering/tracking-the-money-scaling-financial-reporting-at-airbnb-6d742b80f040) 📰 🆓
* [Scaling to 100M: MySQL is a Better NoSQL](https://www.wix.engineering/blog/scaling-to-100m-mysql-is-a-better-nosql) 📰 🆓
* [Unlocking Horizontal Scalability in Our Web Serving Tier](https://medium.com/airbnb-engineering/unlocking-horizontal-scalability-in-our-web-serving-tier-d907449cdbcf) 📰 🆓
* [Why Uber Engineering Switched from Postgres to MySQL](https://eng.uber.com/mysql-migration/) 📰 🆓
* [Evaluating MySQL Parallel Replication Part 4, Annex: Under the Hood](https://medium.com/booking-com-infrastructure/evaluating-mysql-parallel-replication-part-4-annex-under-the-hood-eb456cf8b2fb) 📰 🆓
* [Mitigating replication lag and reducing read load with freno](https://github.blog/2017-10-13-mitigating-replication-lag-and-reducing-read-load-with-freno/) 📰 🆓
* [Black-Box Auditing: Verifying End-to-End Replication Integrity between MySQL and Redshift](https://engineeringblog.yelp.com/2018/04/black-box-auditing.html) 📰 🆓
* [How We Partitioned Airbnb's Main Database in Two Weeks](https://medium.com/airbnb-engineering/how-we-partitioned-airbnb-s-main-database-in-two-weeks-55f7e006ff21) 📰 🆓
* [Sharding Pinterest: How we scaled our MySQL fleet](https://medium.com/@Pinterest_Engineering/sharding-pinterest-how-we-scaled-our-mysql-fleet-3f341e96ca6f) 📰 🆓
* [How We Replaced Our Data Pipeline With Zero Downtime](https://www.twilio.com/engineering/2014/06/26/how-we-replaced-our-data-pipeline-with-zero-downtime) 📰 🆓
* [Vitess: MySQL Sharding - Square Engineering](https://www.youtube.com/watch?v=q65TleTn2vg) 📼 🆓
* RDS
* Aurora
* [Amazon Aurora Multi-Master: Scaling out database write performance (MySQL)](https://www.youtube.com/watch?v=p0C0jakzYuc) 📼 🆓
* [Aurora Encryption Performance Numbers](https://aws.amazon.com/blogs/database/selecting-the-right-encryption-options-for-amazon-rds-and-amazon-aurora-database-engines/) 📰 🆓
* [Aurora Global Database](https://www.youtube.com/watch?v=1vFg1z-2E7Y) 📼 🆓
* Performance Tunning
* [Part 1 - Memory and Query Plan Management](https://aws.amazon.com/blogs/database/amazon-aurora-postgresql-parameters-part-1-memory-and-query-plan-management/) 📰 🆓
* [Part 2 - Replications Security and Logging](https://aws.amazon.com/blogs/database/amazon-aurora-postgresql-parameters-part-2-replication-security-and-logging/) 📰 🆓
* [Part 3 - Optimizer Params](https://aws.amazon.com/blogs/database/amazon-aurora-postgresql-parameters-part-3-optimizer-parameters/) 📰 🆓
* [Part 4 - ANSI Compatibility Options](https://aws.amazon.com/blogs/database/amazon-aurora-postgresql-parameters-part-4-ansi-compatibility-options/) 📰 🆓
* [Security](https://aws.amazon.com/rds/features/security/)
* [Encryptin an exsting RDS PgSQL](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/encrypt-an-existing-amazon-rds-for-postgresql-db-instance.html) 📰 🆓
* RDS Proxy
* [Introduction to RDS Proxy](https://www.youtube.com/watch?v=ULRnn6tIYu8) 📼 🆓
* [Using Relational Databases with AWS Lambda - Easy Connection Pooling](https://www.youtube.com/watch?v=dgj9cvqgYYs) 📼 🆓
* Aurora Serverless
* [How to Build Highly Scalable Serverless Applications with Amazon Aurora Serverless](https://www.youtube.com/watch?v=I0uHo4xAIxg) 📼 🆓
* Data API
* [Getting Started with Aurora Serverless Data API](https://www.youtube.com/watch?v=b_BzV1G1iRs) 📼 🆓
* Cross-region Replication
* [Best practices for Amazon RDS for PostgreSQL cross-Region read replicas](https://aws.amazon.com/blogs/database/best-practices-for-amazon-rds-for-postgresql-cross-region-read-replicas/) 📰 🆓
* Column-based
* Redshift
* Materialized Views
* [Docs](https://docs.aws.amazon.com/redshift/latest/dg/materialized-view-overview.html) 📰 🆓
* [Overview](https://www.youtube.com/watch?v=mQAs44MHmeY) 📼 🆓
* [Deep-Dive](https://www.youtube.com/watch?v=PjBMZW4Ze0c) 📼 🆓
* NoSQL
* KeyValue
* [BoJack](https://github.com/marceloboeira/bojack) ✍🏼 💻 🆓
* [Why you should build your own NoSQL database](https://medium.com/@marceloboeira/why-you-should-build-your-own-nosql-database-9bbba42039f5) ✍🏼 📰 🆓
* Redis
* Introduction
* [What is Redis? - Jamil Spain](https://www.youtube.com/watch?v=muqiHwa8UvQ) 📼 🆓
* [Redis Cookbook](https://learning.oreilly.com/library/view/redis-4x-cookbook/9781783988167/) 📕 💰
* Usecases
* [AWS re:Invent 2020: Beyond caching: Advanced design patterns in Redis](https://www.youtube.com/watch?v=2WkJeofqIJg)
* [Airbnb - Migrating to ElastiCache](https://www.youtube.com/watch?v=eyd_8efUCwM) 📼 🆓
* Internals
* Cache
* [What happens when Redis runs out of memory? - Elena Kolevska](https://www.youtube.com/watch?v=W8IEzoxRMz4) 📼 🆓
* Streams
* [Redis Streams](https://www.youtube.com/watch?v=qXEyuUxQXZM) 📼 🆓
* Sentinel
* [Redis Sentinel in Nutshell](https://www.youtube.com/watch?v=85HzpIk7Mq8)
* Cluster
* [Building for high availability and extreme performance with Redis cluster, AWS - Madelyn Olson](https://www.youtube.com/watch?v=LLxWu27qQTI) ⭐️ 📼 🆓
* [AWS Scaling Your Redis Workloads with Redis Cluster](https://www.youtube.com/watch?v=3Ovx5vJ17ws) 📼 🆓
* RBAC/RedisAuth
* [Redis Best Practices](https://www.youtube.com/watch?v=_4SkEy6r-C4) 📼 🆓
* Enterprise
* [High Availability and Scalability with Redis Enterprise](https://medium.com/@octoz/high-availability-and-scalability-with-redis-enterprise-54a48edcce17) 📰 🆓
* Monitoring
* [Datadog - How to Monitor Redis Performance Metrics - Part 1](https://www.datadoghq.com/blog/how-to-monitor-redis-performance-metrics/) 📰 🆓
* [Datadog - How to Monitor Redis Performance Metrics - Part 2](https://www.datadoghq.com/blog/how-to-collect-redis-metrics/) 📰 🆓
* [Datadog - How to Monitor Redis Performance Metrics - Part 3](https://www.datadoghq.com/blog/how-to-monitor-redis-performance-metrics/) 📰 🆓
* [What Happens When Redis Runs Out of Memory?](https://www.youtube.com/watch?v=W8IEzoxRMz4) 📼 🆓
* ElastiCache Specific
* [Monitoring ElastiCache with AWS-Native metrics](https://www.datadoghq.com/blog/monitor-elasticache-with-aws-metrics-native-metrics/) 📰 🆓
* [Monitoring ElastiCache wth enhanced metrics](https://www.datadoghq.com/blog/monitoring-elasticache-performance-metrics-with-redis-or-memcached/) 📰 🆓
* Operating
* [Redis Replication Buffer](https://redis.com/blog/top-redis-headaches-for-devops-replication-buffer/) 📰 🆓
* Hosted
* ElastiCache
* [AWS re:Invent 2020: Design for success with Amazon ElastiCache best practices](https://www.youtube.com/watch?v=_4SkEy6r-C4) 📼 🆓
* [AWS re:Invent 2021 - Deep dive on Amazon ElastiCache for Redis - Groupon - DataTiering](https://www.youtube.com/watch?v=QEKDpToureQ) 📼 🆓
* Global Datastore - Cross-region replication (DR)
* [Redis Global Datastore](https://aws.amazon.com/blogs/aws/now-available-amazon-elasticache-global-datastore-for-redis/) 📰 🆓
* Cassandra
* [Cassandra: Introduction by DATASAX](https://www.youtube.com/watch?v=B_HTdrTgGNs) 📼 🆓
* [Cassandra at Instagram 2016](https://www.slideshare.net/DataStax/cassandra-at-instagram-2016) 📰 🆓
* [Cassandra: The Definitive Guide](https://learning.oreilly.com/library/view/cassandra-the-definitive/9781491933657/) 📕 💰
* Amazon Keyspaces
* [Running Apache Cassandra Workloads by Using Amazon Keyspaces](https://www.youtube.com/watch?v=zehVQzlSuEU) 🆓 📼
* DocumentStore
* ElasticSearch
* Internals
* [ElasticSearch from the Bottom Up](https://www.youtube.com/watch?v=PpX7J-G2PEo) 📼 🆓
* [ElasticSearch from the Bottom Up](https://www.elastic.co/blog/found-elasticsearch-from-the-bottom-up) 📼 🆓
* [Index && Shard](https://www.youtube.com/watch?v=YsYUgZu9-Y4) 📼 🆓
* [How many shards are too many shards?](https://www.youtube.com/watch?v=uryHucNEZXk) 📼 🆓
* [Shard performance patterns](https://www.youtube.com/watch?v=aG6WPu08qBs) 📼 🆓
* Lucene
* [Elasticsearch Do's, Don'ts and Pro-Tips](https://www.youtube.com/watch?v=c9O5_a50aOQ) 📼 🆓
* [Our Journey with Elasticsearch: Indexing 200M Daily Records](https://www.youtube.com/watch?v=nqUB0erNlec) 📼 🆓
* Ledger
* [What is a Ledger?](https://www.youtube.com/watch?v=BiEbMJ86dGQ) 📼 🆓
* [Amazon QLDB: An engineer's deep dive on why this is a game changer](https://www.youtube.com/watch?v=ZfYDl4kaVCo) 📼 🆓
* Distributed Systems
* Theory
* [Fallacies of Distributed Computing](https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing) 📰 🆓
* [Distributed Systems, 2nd Edition](https://learning.oreilly.com/library/view/distributed-systems-2nd/9781466552975/) 📕 💰
* [Distributed Systems Observability](https://learning.oreilly.com/library/view/distributed-systems-observability/9781492033431/) 📕 💰
* [Designing Distributed Systems](https://learning.oreilly.com/library/view/designing-distributed-systems/9781491983638/) 📕 💰
* [Distributed Denial of Service (DDoS)](https://learning.oreilly.com/library/view/distributed-denial-of/9781492026181/) 📕 💰
* [Distributed Systems Training](https://github.com/pingcap/talent-plan) 📰 🆓
* Service Discovery
* [AWS CloudMap](https://youtu.be/fMGd9IUaotE)
* [Airbnb - SmartStack](https://medium.com/airbnb-engineering/smartstack-service-discovery-in-the-cloud-4b8a080de619)
* Bulkhead Pattern
* [Bulkhead Pattern - Origin & Concept](https://www.youtube.com/watch?v=Kh3HxWk8YF4) 📼 🆓
* [Bulkhead Pattern - Examples](https://www.youtube.com/watch?v=R2FT5edyKOg) 📼 🆓
* Circuit-Breaker Pattern
* [Circuit Breaker Pattern - Fault Toleranc Services](https://www.youtube.com/watch?v=ADHcBxEXvFA) 📼 🆓
* Event-Driven Architecture
* [Practical Event Driven Architecture](https://www.youtube.com/watch?v=X5PZ9TwDjI8) 📼 🆓
* Event Sourcing / CQRS
* [Go Back to the Future with Event Sourcing and CQRS](https://www.youtube.com/watch?v=iGt0DBOWDTs) 📼 🆓
* [Event Sourcing You are doing it wrong - David Schmitz](https://www.youtube.com/watch?v=GzrZworHpIk) 📼 🆓
* [The Many Meanings of Event-Driven Architecture - Martin Fowler](https://www.youtube.com/watch?v=STKCRSUsyP0) 📼 🆓
* [An Introduction to CQRS and Event Sourcing Patterns - Mathew McLoughlin](https://www.youtube.com/watch?v=9a1PqwFrMP0) 📼 🆓
* [Go Back to the Future with Event Sourcing and CQRS](https://www.youtube.com/watch?v=iGt0DBOWDTs) 📼 🆓
* Streaming
* [Kafka](https://kafka.apache.org)
* [Introduction to Kafka](https://www.youtube.com/watch?v=UEg40Te8pnE) 📼 🆓
* [Commit Logs in an Age of Microservices - Tim Berglund](https://www.youtube.com/watch?v=bbotWkCLuF0) 📼 🆓
* [Should you put several event types in the same Kafka topic? - Martin Kleppmann](https://martin.kleppmann.com/2018/01/18/event-types-in-kafka-topic.html) 📰 🆓
* Practical
* [Kafka: The Definitive Guide](https://learning.oreilly.com/library/view/kafka-the-definitive/9781491936153/) 📕 💰
* [Kafka to MSK: MirrorMaker/ApacheFlink/Capacity Planning](https://www.youtube.com/watch?v=CmcJb9Ge3jI) 📼 🆓
* Internals
* [The Log: What every software engineer should know about real-time data's unifying abstraction](https://engineering.linkedin.com/distributed-systems/log-what-every-software-engineer-should-know-about-real-time-datas-unifying) 📰 🆓
* [How Kafka's Storage Internals Work](https://thehoard.blog/how-kafkas-storage-internals-work-3a29b02e026) 📰 🆓
* [Why is Kafka so fast](http://searene.me/2017/07/09/Why-is-Kafka-so-fast/) 📰 🆓
* NATS
* [Practical NATS: From Beginner to Pro](https://www.amazon.com/Practical-NATS-Beginner-Waldemar-Quevedo/dp/148423569X) 📕 💰
* Kinesis
* ["Distributed Commit Log: Application Techniques for Transaction Processing" by David McNeil](https://www.youtube.com/watch?v=X2g0FFOV2e0) 📼 🆓
* [Amazon Kinesis Data Streams: Auto-scaling the number of shards](https://medium.com/slalom-data-analytics/amazon-kinesis-data-streams-auto-scaling-the-number-of-shards-105dc967bed5) 📰 🆓
* Commit Log
* [Commit Logs in an Age of Microservices - Tim Berglund](https://www.youtube.com/watch?v=bbotWkCLuF0) 📼 🆓
* Build your Own
* [14-bits/voik](https://github.com/14-bits/voik) 💻 🆓
* [Corfu - A distributed shared log](https://blog.acolyer.org/2017/05/02/corfu-a-distributed-shared-log/) 📰 🆓
* [Building a Distributed Message Log from Scratch by Tyler Treat - Video](https://www.youtube.com/watch?v=oKbm9XFxB2k) 📼 🆓
* [Building a Distributed Log from Scratch, Part 1: Storage Mechanics](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-1-storage-mechanics/) 📰 🆓
* [Building a Distributed Log from Scratch, Part 2: Data Replication](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-2-data-replication) 📰 🆓
* [Building a Distributed Log from Scratch, Part 3: Scaling Message Delivery](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-3-scaling-message-delivery/) 📰 🆓
* [Building a Distributed Log from Scratch, Part 4: Trade-Offs and Lessons Learned](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-4-trade-offs-and-lessons-learned/) 📰 🆓
* [Building a Distributed Log from Scratch, Part 5: Sketching a New System](https://bravenewgeek.com/building-a-distributed-log-from-scratch-part-5-sketching-a-new-system/) 📰 🆓
* Code
* [travisjeffery/Jocko](https://github.com/travisjeffery/jocko) - Distributed commit log service in Go
* [zowens/commitlog](http://github.com/zowens/commitlog) - Append-only commit log library for Rust
* [liftbridge-io/liftbridge](http://github.com/liftbridge-io/liftbridge) - Lightweight, fault-tolerant message streams
* People to Follow
* [Tyler Treat](https://twitter.com/tyler_treat?lang=en) 🐦
* Load Balancing
* [Taking Zero-Downtime Load Balancing even Further](https://engineeringblog.yelp.com/2017/05/taking-zero-downtime-load-balancing-even-further.html) 📰 🆓
* [Introducing the GitHub Load Balancer](https://github.blog/2016-09-22-introducing-glb/) 📰 🆓
* [Improving load balancing with a new consistent-hashing algorithm](https://medium.com/vimeo-engineering-blog/improving-load-balancing-with-a-new-consistent-hashing-algorithm-9f1bd75709ed) 📰 🆓
* [UDP Load Balancing with Keepalived](https://developers.500px.com/udp-load-balancing-with-keepalived-167382d7ad08) 📰 🆓
* [Introducing QALM, Uber's QoS Load Management Framework](https://eng.uber.com/qalm/) 📰 🆓
* Distributed Processing
* Hadoop
* [Hadoop: Up & Running](https://learning.oreilly.com/library/view/hadoop-the-definitive/9781491901687/) 📕 💰
* RPC - Remote Procedure Call
* [Schema Evolution: AVRO, Protobufs and Thrift](https://martin.kleppmann.com/2012/12/05/schema-evolution-in-avro-protocol-buffers-thrift.html) 📰 🆓
* [AVRO vs Protobufs vs Thrift](https://www.slideshare.net/IgorAnishchenko/pb-vs-thrift-vs-avro) 📰 🆓
* Operations
* Terminal
* [Set of Bash Oneliners](https://github.com/onceupon/Bash-Oneliner) 💻 🆓
* Operating Systems
* Courses
* [CS8803 - Introduction to Operating Systems](https://eu.udacity.com/course/introduction-to-operating-systems--ud923) 🎓 🆓
* [Annotations and Exercises](https://github.com/marceloboeira/CS8803) 📝
* Base Book (Choose 1):
* [Operating Systems: Three Easy Pieces](http://pages.cs.wisc.edu/~remzi/OSTEP/) 📕 🆓 ⭐️
* [Operating System Concepts](https://www.amazon.com/Operating-System-Concepts-Abraham-Silberschatz/dp/1118063333/ref=dp_ob_title_bk) 📕 💰
* [Operating System Concepts: Essentials](https://www.amazon.com/Operating-Concepts-Essentials-Abraham-Silberschatz/dp/1118804929/ref=sr_1_1?s=books&ie=UTF8&qid=1415311059&sr=1-1&keywords=operating+system+concepts+essentials) 📕 💰
* [Modern Operating Systems](https://www.amazon.com/Modern-Operating-Systems-4th-Edition/dp/013359162X/ref=dp_ob_title_bk) 📕 💰
* Unix
* Debugging
* [Learning Kernel with Tracing](https://www.youtube.com/watch?v=JRyrhsx-L5Y) 📼 🆓
* [eBPF](https://ebpf.io)
* [A Beginner's Guide to eBPF Programming - Liz Rice](https://www.youtube.com/watch?v=lrSExTfS-iQ) 📼 🆓
* [Rethinking the Linux Kernel](https://www.youtube.com/watch?v=f-oTe-dmfyI)
* Computer Architecture
* [TUHS Lectures](https://minnie.tuhs.org/CompArch/Lectures/) 🆓 📰 🎓
* [Introduction to Systems Architecture](https://minnie.tuhs.org/CompArch/Lectures/week01.html)
* [Instruction Set Architecture Design](https://minnie.tuhs.org/CompArch/Lectures/week02.html)
* [Addressing Modes & CPU Internals](https://minnie.tuhs.org/CompArch/Lectures/week03.html)
* [Execution Flow, Branches, Function Calls](https://minnie.tuhs.org/CompArch/Lectures/week04.html)
* [User- and Kernel Mode, System Calls, I/O, Exceptions](https://minnie.tuhs.org/CompArch/Lectures/week05.html)
* [CPU Memory Management, Context Switching](https://minnie.tuhs.org/CompArch/Lectures/week06.html)
* [Introduction to Operating Systems](https://minnie.tuhs.org/CompArch/Lectures/week07.html)
* [Processes](https://minnie.tuhs.org/CompArch/Lectures/week08.html)
* [Introduction to Memory Management](https://minnie.tuhs.org/CompArch/Lectures/week09.html)
* [Virtual Memory, Disk Devices](https://minnie.tuhs.org/CompArch/Lectures/week10.html)
* [Filesystems & Their Performance](https://minnie.tuhs.org/CompArch/Lectures/week11.html)
* [IPC, Synchronisation and Threads](https://minnie.tuhs.org/CompArch/Lectures/week12.html)
* File Descriptor
* [File Descriptors Explained](https://www.youtube.com/watch?v=KM5sRWAYqaw) 📼 🆓
* [File Descriptors, Unix sockets and other POSIX wizardry - Christian Heimes](https://www.youtube.com/watch?v=Ftg8fjY_YWU) 📼 🆓
* ["Everything is a file" in UNIX](https://www.youtube.com/watch?v=dDwXnB6XeiA) 📼 🆓
* Threads
* ["An Introduction to Programming with Threads"](https://s3.amazonaws.com/content.udacity-data.com/courses/ud923/references/ud923-birrell-paper.pdf) by Birrell 📰 🆓
* POSIX Threads (PThreads)
* [PThreads / POSIX Threads Coding Examples](https://computing.llnl.gov/tutorials/pthreads/) 📰 🆓
* IBM Series
* [POSIX threads explained: Part 1](https://www.ibm.com/developerworks/library/l-posix1/index.html) 📰 🆓
* [POSIX threads explained: Part 2](https://www.ibm.com/developerworks/library/l-posix2/index.html) 📰 🆓
* [POSIX threads explained: Part 3](https://www.ibm.com/developerworks/library/l-posix3/index.html) 📰 🆓
* [Beyond Multiprocessing: Multithreading the Sun OS Kernel by Eykholt](https://s3.amazonaws.com/content.udacity-data.com/courses/ud923/references/ud923-eykholt-paper.pdf) 📰 🆓
* [Implementing Lightweight Threads by Stein and Shah](https://s3.amazonaws.com/content.udacity-data.com/courses/ud923/references/ud923-stein-shah-paper.pdf) 📰 🆓
* [How to create and join threads in C (pthreads)](https://www.youtube.com/watch?v=uA8X5zNOGw8) 📼 🆓
* [Programming with POSIX ® Threads](https://learning.oreilly.com/library/view/programming-with-posix/0201633922/) 📕 💰
* CPU Scheduling
* Timeslice
* MLFQ - Multi Level Feedback Queue
* [CPU scheduling Practice - FCFS, SJF, MLFQ](https://www.youtube.com/watch?v=FYcc9D8llF0) 📼 🆓
* [Multi level queues and multi level feedback queues](https://www.youtube.com/watch?v=1w9FybdNi_Y) 📼 🆓
* [Designing of vague logic based multilevel feedback queue scheduler](https://www.researchgate.net/publication/283959697_Designing_of_vague_logic_based_multilevel_feedback_queue_scheduler) 🆓 📰
* Linux
* O(n), O(1) and CFS
* [Thread on CFS](https://web.archive.org/web/20120205030735/http://kerneltrap.org/node/11737) 🆓 🌍
* [The Linux Kernel Scheduler (For Beginners)](https://www.youtube.com/watch?v=5WtnnzpwEuA) 📼 🆓
* [Operating System #21 Scheduling in Linux: O(n), O(1) Scheduler](https://www.youtube.com/watch?v=vF3KKMI3_1s) 📼 🆓
* Virtual Memory
* [The Heap: what does malloc() do?](https://www.youtube.com/watch?v=HPDBOhiKaD8) 📼 🆓
* mmap
* [How processes get more memory](https://www.youtube.com/watch?v=XV5sRaSVtXQ) 📼 🆓
* [How to Map Files into Memory in C (mmap)](https://www.youtube.com/watch?v=m7E9piHcfr4) 📼 🆓
* Linux
* [Linux Cross Reference](https://elixir.bootlin.com/linux/v3.17/source/include/linux/kthread.h#L66) 🌍 🆓
* [Interactive Linux Kernel Map](http://www.makelinux.net/kernel_map/) 🌍 🆓
* Reference Youtube channels
* [Jacob Sorber](https://www.youtube.com/channel/UCwd5VFu4KoJNjkWJZMFJGHQ)
* Network
* [Computer Networks, 5th Edition](http://www.mypearsonstore.com/bookstore/computer-networks-9780132126953?xid=PSED) 📕 💰
* Protocols
* DNS
* Socket
* UDP
* TCP
* Build Your Own
* [Implementing TCP in Rust (part 1)](https://www.youtube.com/watch?v=bzja9fQWzdA) 📼 🆓
* [Implementing TCP in Rust (part 2)](https://www.youtube.com/watch?v=OCpt1I0MWXE) 📼 🆓
* [Implementing TCP in Rust (part 3)](https://www.youtube.com/watch?v=8GE6ltLRJA4) 📼 🆓
* [Implementing TCP in Rust (code)](https://github.com/jonhoo/rust-tcp) 🆓
* SSH
* HTTP/S
* Certificate Authorization
* SSL-TLS
* [How TLS (1.2) Handshake work - Computerfile](https://www.youtube.com/watch?v=86cQJ0MMses) 📼 🆓
* MQTT
* [Intro to Message Queue Telemetry Transport](https://www.youtube.com/watch?v=eS4nx6tLSLs) 📼 🆓
* Edge
* CDN
* "Global Accelerator"
* [AWS Global Accelerator Introduction](https://www.youtube.com/watch?v=L-mmnEbiTmc) 📼 🆓
* 11:00 - Explanation regarding GA
* [AWS Global Accelerator](https://www.youtube.com/watch?v=YqcEntZ8pQ4) 📼 🆓
* VPC - Virtual private Cloud
* Network
* [Basic Networking](https://www.youtube.com/watch?v=hiKPPy584Mg)
* [Practical VPC Design](https://aws.amazon.com/blogs/startups/practical-vpc-design/) 📰 🆓
* Multi-VPC
* [One to Many: Evolving VPC Design](https://aws.amazon.com/blogs/architecture/one-to-many-evolving-vpc-design) 📰 🆓
* [Using VPC Sharing for a Cost-Effective Multi-Account Microservice Architecture](https://aws.amazon.com/blogs/architecture/using-vpc-sharing-for-a-cost-effective-multi-account-microservice-architecture/) 📰 🆓
* Sharing
* [VPC sharing: A new approach to multiple accounts and VPC management](https://aws.amazon.com/blogs/networking-and-content-delivery/vpc-sharing-a-new-approach-to-multiple-accounts-and-vpc-management/) 📰 🆓
* Peering
* PrivateLink
* TransitGateway
* [Use an AWS Transit Gateway to Simplify Your Network Architecture](https://aws.amazon.com/blogs/aws/new-use-an-aws-transit-gateway-to-simplify-your-network-architecture/) 📰 🆓
* [Creating a single internet exit point from multiple VPCs Using AWS Transit Gateway](https://aws.amazon.com/blogs/networking-and-content-delivery/creating-a-single-internet-exit-point-from-multiple-vpcs-using-aws-transit-gateway/) 📰 🆓
* VPN
* [Site to Site VPN](https://www.youtube.com/watch?v=qmKkbuS9gRs) 📼 🆓
* Monitoring
* Telemetry
* OTEL - Open Telemetry
* [OpenTelemetry.io](https://opentelemetry.io) 📰 🆓
* [Datadog - The future of tracing is open](https://www.datadoghq.com/blog/opentelemetry-instrumentation/) 📰 🆓
* Metrics
* Prometheus
* [Prometheus: Up & Running: Infrastructure and Application Performance Monitoring](https://www.amazon.de/gp/product/1492034142?pf_rd_p=99260c3e-e149-406d-b475-c299891fcd91&pf_rd_r=M0874DR76K58PTVG1NV7) 📕 💰
* InfluxDB
* [InfluxDB - Time Series Database](https://www.youtube.com/watch?v=2SUBRE6wGiA) 📼 🆓
* Tracing
* [Intro to Distributed Tracing](https://www.kartar.net/2019/07/intro-to-distributed-tracing/) 📰 🆓
* [Mastering Distributed Tracing](https://learning.oreilly.com/library/view/mastering-distributed-tracing/9781788628464/) 📕 💰
* Infrastructure as Code
* [What is IaC?](https://www.youtube.com/watch?v=RO7VcUAsf-I) 📼 🆓
* [Getting Started with IaC](https://www.youtube.com/watch?v=G3D14I5_NIk) 📼 🆓
* Containers
* Standard
* OCI - [OpenContainers Initiative](https://opencontainers.org/)
* Runtimes
* [Docker](https://www.docker.com)
* Guides
* [Dockerfile Best Practices - ThoughtWorks](https://blog.docker.com/2019/07/intro-guide-to-dockerfile-best-practices/) 📰 🆓
* Testing
* [goss/dgoss](https://github.com/aelsabbahy/goss) - Test docker images ⭐️
* [marceloboeira/kurz](https://github.com/marceloboeira/kurz) - Example setup ✍🏻
* [Containerd](https://containerd.io)
* Orchestration
* ECS
* [ECS Workshop](https://ecsworkshop.com) 👨🏻‍🔧 🆓
* Internals
* [Service Discovery](https://www.youtube.com/watch?v=WLD7wqJzKEw) 📼 🆓
* [Network Deep Dive](https://www.youtube.com/watch?v=2fwCg82pMI4) 📼 🆓
* Nomad
* [Intro to Nomad](https://www.youtube.com/watch?v=s_Fm9UtL4YU) 📼 🆓
* [How does nomad work?](https://www.youtube.com/watch?v=UkXeRbzrWqo) 📼 🆓
* [Nomad vs K8s](https://www.youtube.com/watch?v=GkmyNBUugg8) 📼 🆓
* [A Kubernetes User Guide to Nomad](https://www.hashicorp.com/blog/a-kubernetes-user-s-guide-to-hashicorp-nomad) 📰 🆓 - Awesome side-by-side quivalent comparinson of the abstraction
* Kubernetes
* History
* [Borg, Omega, and Kubernetes](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44843.pdf) 📰 🆓
* [Dockercon keynote: Eric Brewer (Google) - First k8s presentation](https://www.youtube.com/watch?v=YrxnVKZeqK8) 📼 🆓
* Internals
* Introduction
* Microsoft Azure Videos
* [Why you should care about containers](https://www.youtube.com/watch?v=EUitQ8DaZW8) 📼 🆓
* [How Kubernetes works](https://www.youtube.com/watch?v=daVUONZqn88) 📼 🆓
* [How Kubernetes deployments work](https://www.youtube.com/watch?v=mNK14yXIZF4) 📼 🆓
* [Understand Serverless Kubernetes and Serverless on Kubernetes](https://www.youtube.com/watch?v=xL6lixC4D8Q) 📼 🆓
* [How the Kubernetes scheduler works](https://www.youtube.com/watch?v=rDCWxkvPlAw) 📼 🆓
* [Setting up a Kubernetes build pipeline](https://www.youtube.com/watch?v=5irsAdKoEBU) 📼 🆓
* [Overview of common Kubernetes scenarios](https://www.youtube.com/watch?v=zd8vYhrFXp4) 📼 🆓
* [How volumes and storage work in Kubernetes](https://www.youtube.com/watch?v=inJ7YJ-jt8I) 📼 🆓
* [The basics of stateful applications in Kubernetes](https://www.youtube.com/watch?v=GieXzb91I40) 📼 🆓
* [Understanding Distributed Consensus in etcd and Kubernetes - Laura Frank, CloudBees](https://www.youtube.com/watch?v=n9VKAKwBj_0) 📼 🆓
* [Kubernetes Deconstructed: Understanding Kubernetes by Breaking It Down - Carson Anderson, DOMO](https://www.youtube.com/watch?v=90kZRyPcRZw) 📼 🆓
* [Internals Advanced](https://container.training) General talks about containers - 🆓 📼
* [Kubernetes Up and Running](http://shop.oreilly.com/product/0636920043874.do#tab_04_2) 📕 💰
* [Key Kubernetes Concepts](https://towardsdatascience.com/key-kubernetes-concepts-62939f4bc08e) 📰 🆓
* [Programming Kubernetes](https://learning.oreilly.com/library/view/programming-kubernetes/9781492047094/) 📕 💰
* Networking
* [A Guide to the Kubernetes Networking Model](https://sookocheff.com/post/kubernetes/understanding-kubernetes-networking-model/) 📰 🆓
* [How does Traffic Flow inside a Kubernetes Cluster?](https://stackoverflow.com/questions/52241501/how-does-traffic-flow-inside-a-kubernetes-cluster) 📰 🆓
* Exposing Services
* [NodePort vs LB vs Ingress](https://medium.com/google-cloud/kubernetes-nodeport-vs-loadbalancer-vs-ingress-when-should-i-use-what-922f010849e0) 📰 🆓
* Interesting to understand why ingress is a better option than LB when exposing individual services
* LB creates a new IP for every service, it can get expensive and difficult to handle
* Ingress can manage multiple domains and paths for many services without difficulty/effort
* [Cracking K8s NodeProxy/KubeProxy](https://arthurchiao.art/blog/cracking-k8s-node-proxy/) 📰 🆓 ⭐️
* [NodePort and iptables](https://ronaknathani.com/blog/2020/07/kubernetes-nodeport-and-iptables-rules/) 📰 🆓
* CNI Plugins
* [Kubernetes Networking: How to Write Your Own CNI Plug-in with Bash](https://www.altoros.com/blog/kubernetes-networking-writing-your-own-simple-cni-plug-in-with-bash/)
* [Deep dive on the AWS CNI Plug-in for Kubernetes](https://www.youtube.com/watch?v=ezcnPcRcJdc) 📼 🆓
* Identity & Access
* RBAC
* [RBAC.dev - List of Resources](https://github.com/mhausenblas/rbac.dev) 🌍 🆓
* Operators
* [Introducing Operators](https://coreos.com/blog/introducing-operators.html) 📰 🆓
* Provider
* EKS - Elastic Kubernetes Service
* [EKS - Deep Dive](https://www.youtube.com/watch?v=EDaGpxZ6Qi0) 📼 📼
* 08:50 - Control Plane
* 10:19 - Control Plane Internals (not shared tenent, endpoints exposed to internet, worker nodes need access to the internet, NLB)
* 19:00 - Version Updates
* 20:00 - Authentication (IAM -> Authentication | RBAC -> Authorization)
* 20:00 - [AMI is OpenSource](https://github.com/awslabs/amazon-eks-ami)
* [EKS Workshop](https://www.eksworkshop.com) 👨🏻‍🔧 🆓
* [Custom EKS AMIs](https://aws.amazon.com/premiumsupport/knowledge-center/eks-custom-linux-ami/) 📰 🆓
* Metrics
* [EKS + CloudWatch](https://www.youtube.com/watch?v=daLmE0tIcuk) 📼 🆓
* [EKS + CloudWatch: Container Insights](https://www.youtube.com/watch?v=kn5TVKzBLrU) 📼 🆓
* [Setup Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-setup-metrics.html) 📰 🆓
* Tracing
* [AWS X-Ray with EKS](https://aws.amazon.com/blogs/compute/application-tracing-on-kubernetes-with-aws-x-ray/) 📰 🆓
* Windows
* [Containerize .NET Apps with Amazon EKS](https://www.youtube.com/watch?v=GIH-MfkZPJA) 📼 🆓
* Managed Node Groups
* [EKS Managed Node Groups](https://aws.amazon.com/blogs/containers/eks-managed-node-groups/) 📰 🆓
* Tenancy
* [EKS Multi Tenency Design Considerations](https://aws.amazon.com/blogs/containers/multi-tenant-design-considerations-for-amazon-eks-clusters/) 📰 🆓
* [Cost Management for MultiTenant Kubernetes](https://aws.amazon.com/blogs/containers/how-to-track-costs-in-multi-tenant-amazon-eks-clusters-using-kubecost/) 📰 🆓
* [EKS - Tenancy Best Practices](https://aws.github.io/aws-eks-best-practices/security/docs/multitenancy/) 📰 🆓
* [Loft - Kubernetes MultiTenancy](https://loft.sh/features/kubernetes-multi-tenancy)
* [Architecting multi-tenant PaaS offerings with Amazon EKS](https://www.youtube.com/watch?v=P29eL_51iYU) 📼 🆓
* Usecases
* [Kubernetes Platform @ Pinterest](https://medium.com/pinterest-engineering/building-a-kubernetes-platform-at-pinterest-fb3d9571c948) 📰 🆓
* Failure Stories
* heycar outage:
* [kube-dns : Intermittent dns issue from pods to external server](https://github.com/kubernetes/kubernetes/issues/47142) 😅
* [5-15s DNS lookups on Kubernetes?](https://blog.quentin-machu.fr/2018/06/24/5-15s-dns-lookups-on-kubernetes/) 😅
* [Kubernetes pods /etc/resolv.conf ndots:5 option and why it may negatively affect your application performances](https://pracucci.com/kubernetes-dns-resolution-ndots-options-and-why-it-may-affect-application-performances.html) 😅
* Service Mesh
* [What is service mesh?](https://www.youtube.com/watch?v=vh1YtWjfcyk) 📼 🆓
* Consul
* [Introduction to Consul](https://www.youtube.com/watch?v=mxeMdl0KvBI) 📼 🆓
* [How Consul works with Kubernetes](https://www.youtube.com/watch?v=K93ZaUzwEWk) 📼 🆓
* Istio
* [Istio Explained - IBM Videos](https://www.youtube.com/watch?v=6zDrLvpfCK4) 📼 🆓
* [What is Istio? ](https://www.youtube.com/watch?v=1iyFq2VaL5Y) 📼 🆓
* Console
* [Istio: Up & Running](https://learning.oreilly.com/library/view/istio-up-and/9781492043775/) 📕 💰
* AppMesh
* [AWS Container Day - App Mesh (Service Mesh Magic)](https://www.youtube.com/watch?v=hfzWtXKrv88) 🆓 📼
* [AppMesh Workshop](https://www.appmeshworkshop.com) 👨🏻‍🔧🆓
* [Microservice Deployment Strategies with AWS App Mesh](https://www.youtube.com/watch?v=UATTjvjoYEE) 🆓 📼
* Provisioning
* Terraform
* [Introduction to Terraform](https://www.youtube.com/watch?v=h970ZBgKINg) 📼 🆓
* [Infrastructure as Code in the Real World?](https://www.youtube.com/watch?v=S6vS5mzivFo) 📼 🆓
* [Terraform: Up and Running](https://learning.oreilly.com/library/view/terraform-up-and/9781491977071/) 📕 💰
* HCL
* [Terraform 0.12 dynamic for_each](https://www.hashicorp.com/blog/hashicorp-terraform-0-12-preview-for-and-for-each) 🆓 📰
* [Loops and Dynamic Blocks with HCL](https://blog.boltops.com/2020/10/05/terraform-hcl-loops-with-dynamic-block) 🆓 📰
* Management
* [Terraform Cloud](https://www.terraform.io/cloud) - Run multiple terraform projects/states at scale
* [Atlantis](https://www.runatlantis.io) - Alternative to Terraform Cloud running on OSS/Github/Gitlab integrations
* Gotchas
* [State Moves](https://www.terraform.io/docs/cli/commands/state/mv.html) 🆓 📰
* [State Replace Provider](https://www.terraform.io/docs/cli/commands/state/replace-provider.html) 🆓 📰
* Internals
* Custom Providers
* Build your own provider
* [How to build a Usable Terraform Provider in 20 hours](https://www.youtube.com/watch?v=OoSAepwT0l4) 🆓 📼
* [Terraform - Building custom providers](https://www.hashicorp.com/blog/writing-custom-terraform-providers) 🆓 📰
* Certification
* [Terraform Certification Crash Course - 13h](https://www.youtube.com/watch?v=V4waklkBC38) 📼 🆓
* Scaling
* [Terraform OpenCredos - Terraform life-cycle](https://www.hashicorp.com/resources/evolving-infrastructure-terraform-opencredo) 📼 🆓
* This is only outdated in regards of module not supporting `for_each`, they do as of 1.0 or 0.12
* [CDK - CloudFormation Development Kit](https://docs.aws.amazon.com/cdk/latest/guide/home.html)
* [Infrastructure is Code with CDK](https://www.youtube.com/watch?v=ZWCvNFUN-sU&feature=youtu.be) 📼 🆓
* [CDK Best Practices](https://github.com/kevinslin/open-cdk) 💻 🆓 📰
* Packer
* [The Packer Book](https://learning.oreilly.com/library/view/the-packer-book/9780988820272/) 📕 💰
* Secret Management
* [Vault](https://www.vaultproject.io) - Secure dynamic infrastructure across clouds and environments
* [Introduction to Vault](https://www.youtube.com/watch?v=VYfl-DpZ5wM) 📼 🆓
* Session Management
* [Boundary](https://www.boundaryproject.io) - Secure access to hosts and services
* [Introduction to Boundary](https://www.youtube.com/watch?v=eRZuaw0AW0I) 📼 🆓
* Linux
* [LFS - Linux from Scratch Book](http://www.linuxfromscratch.org/lfs/downloads/8.4/LFS-BOOK-8.4.pdf) 📼 🆓
* systemd
* [systemd Essentials](https://www.digitalocean.com/community/tutorials/systemd-essentials-working-with-services-units-and-the-journal) 📰 🆓
* File System
* [Linux File System/Structure Explained](https://www.youtube.com/watch?v=HbgzrKJvDRw) 📼 🆓
* Debug
* Core Dumps
* [Debugging with Core Dumps](https://www.youtube.com/watch?v=GV10eIuPs9k) 📼 🆓
* Performance
* Profiling
* Linux Performance
* [Linux Network Performance Parameters - Leandro Moreira](https://github.com/leandromoreira/linux-network-performance-parameters) 📰 🆓 💻
* [Linux Performance Hub - Brendan Gregg](http://www.brendangregg.com/linuxperf.html) 📰 🆓 💻
* [Linux Perf](http://www.brendangregg.com/perf.html) 📰 🆓 💻
* [Linux Extended BPF (eBPF) Tracing Tools](http://www.brendangregg.com/ebpf.html) 📰 🆓 💻
* Charts
* [Linux Performance Observability Tools](http://www.brendangregg.com/Perf/linux_observability_tools.png) 🏙 🆓
* [Linux Performance Benchmark Tools](http://www.brendangregg.com/Perf/linux_benchmarking_tools.png) 🏙 🆓
* [Linux Performance Tuning Tools](http://www.brendangregg.com/Perf/linux_tuning_tools.png) 🏙 🆓
* [Netflix - Linux Systems Performance - Brendan Gregg](https://www.youtube.com/watch?v=CbmEDXq7es0) 📼 🆓
* [Netflix - Linux Performance - Brendan Gregg](https://www.youtube.com/watch?v=FJW8nGV4jxY) 📼 🆓
* [How Netflix Tunes Amazon EC2 Instances for Performance - Brendan Gregg](https://www.youtube.com/watch?v=89fYOo1V2pA) 📼 🆓
* Docker Container
* [Netflix - Container Performance Analysis](https://www.youtube.com/watch?v=bK9A5ODIgac) 📼 🆓
* Applications
* dtrace
* [DTrace Book Scripts](https://github.com/brendangregg/DTrace-book-scripts) 💻 🆓
* Rust
* [Rustt + Dtrace + Flamegraphs](http://carol-nichols.com/2017/04/20/rust-profiling-with-dtrace-on-osx/) 📰 🆓
* Flamegraph
* [Tooling to generate FlameGraphs](https://github.com/brendangregg/FlameGraph) 💻 🆓
* [Deep dive to CPU FlameGraphs](http://www.brendangregg.com/FlameGraphs/cpuflamegraphs.html) 📰 💻 🆓
* [Speedscope - visualization tool](http://jamie-wong.com/post/speedscope/) 💻 🆓
* [Presentation on FlameGraphs](https://speakerdeck.com/mrfoto/what-are-flame-graphs-and-how-to-read-them) 🎥 🆓
* Serverless
* [SAM](https://aws.amazon.com/serverless/sam/)- Serverless Application Model
* [What is SAM?](https://youtu.be/1dzihtC5LJ0) 📼 🆓
* Lambda
* Layers
* [What are Lambda Layers?](https://www.youtube.com/watch?v=ebhcs-9FYJA) 📰 🆓
* Extensions
* [Intro to Extensions for AWS Lambda](https://aws.amazon.com/blogs/compute/introducing-aws-lambda-extensions-in-preview/) 📰 🆓
* [Building Extensions for AWS Lambda](https://aws.amazon.com/blogs/compute/building-extensions-for-aws-lambda-in-preview/) 📰 🆓
* [Building Extension API](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-extensions-api.html) 📰 🆓
* Security
* Authentication
* OpenID/OICD
* [Amazon Cognito](https://www.youtube.com/watch?v=OAR4ZHP8DEg) 📼 🆓
* Firewall
* WAF - Web Application Firewall
* [What is a Web Application Firewall (WAF)?](https://www.youtube.com/watch?v=p8CQcF_9280) 📼 🆓
* [The AWS Web Application Firewall (WAF)](https://youtu.be/SmF_wQuZ7z4) 📼 🆓
* Encryption
* Theory
* History
* Ceasar
* Symetric
* Asymetric
* Cloud
* [How Encryption Works @ AWS](https://www.youtube.com/watch?v=plv7PQZICCM) 📼 🆓
* [KMS](https://aws.amazon.com/kms/)
* [Encryption and Key Management @ AWS](https://www.youtube.com/watch?v=uhXalpNzPU4) 📼 🆓
* Certificates
* Service Name Indication
* [What is SNI?](https://www.youtube.com/watch?v=manTiXESYG0) 📼 🆓
* Monitoring
* Data Leaks
* [Amazon Macie](https://www.youtube.com/watch?v=8piwEQJJXdo) 📼 🆓
* Multi-tenancy
* SaaS
* [AWS re:Invent 2019: SaaS tenant isolation patterns](https://www.youtube.com/watch?v=fuDZq-EspNA)
* Cost
* Cloud
* FinOps
* [What is FinOps?](https://www.finops.org/introduction/what-is-finops/) 🆓 📰
* [O'Relly - Cloud FinOps](https://www.finops.org/resources/finops-book/) 📕 💰
* [FinOps Landscape - An overview of companies adopting the framework](https://landscape.finops.org) 🆓
* Certification
* [Linux Foundation - Instroduction to FinOps](https://www.edx.org/course/introduction-to-finops) 🎓 💰
* [Certified FinOps Practitioner](https://www.finops.org/training-certification/finops-certified-practitioner/) 📜 💰
* [Certified FinOps Professional](https://www.finops.org/training-certification/finops-certified-professional/) 📜 💰
* AWS
* [Savings Plans vs Reserved Instances](https://www.youtube.com/watch?v=c_zlPQimrvY) 📼 🆓
* [How to save with AWS Saving Plans](https://www.youtube.com/watch?v=uQ9ry-9uUvo) 📼 🆓