A community curated list of useful and interesting resources.
- Configuration Management
- Systems
- Microservices and Containers
- Testing
- Performance, Metrics, and Monitoring
- Programming Languages
- Uncategorized
-
[Video] Ansible Best Practices: Roles and Modules (2017) -- @tima -- Expands on the Ansible best practices and goes a bit deeper into role and module guidelines.
-
[Tool] Ansible Lint -- @willthames -- Ansible Linter.
-
[Tool] Molecule -- @metacloud -- Test Harness for Ansible Roles.
- [Podcast] Food Fight: The Podcast where DevOps chefs do battle -- @foodfightshow -- Bi-weekly podcast tailored for the Chef community.
-
[Tool] octocatalog-diff -- @kpaulisse -- Useful puppet tool from github that can easily provide a diff between puppet branches.
-
[Presentation] PuppetConf 2017: Beyond rspec -- Innovative Strategies for Confident CI -- @kpaulisse -- Presentation on github's infrastructure CI strategies with octocatalog-diff.
-
[Book] linux-insides -- @0xAX -- a guided walkthrough of the Linux source. Great for learning how it works, but not for the faint of heart.
-
[Blog] The Definitive Guide to Linux System Calls -- @PackageCloud -- Comprehensive introduction to Linux syscalls.
-
[Blog] Linux tracing systems & how they fit together -- @b0rk -- Very good and in depth introduction to modern network load balancing and proxying techniques.
-
[Blog] A thorough introduction to eBPF -- @fleming_matt -- Introduction and History of eBPF.
-
[Blog] eBPF, part 1: Past, Present, and Future -- @im_ferris -- In depth overview of eBPF and it's history.
-
[Blog] eBPF, part 2: Syscall and Map Types -- @im_ferris -- Continuation of in depth overview of eBFP, and how it is used.
-
[Blog] Dive into BPF: a list of reading material -- @Qeole -- Amazing collection of resources regarding BPF.
-
[Blog] Introduction to modern network load balancing and proxying -- @mattklein123 -- Very good and in depth introduction to modern network load balancing and proxying techniques.
-
[Blog] Monitoring and Tuning the Linux Networking Stack: Sending Data -- @PackageCloud -- Deep dive into tuning and monitoring the Linux Networking Stack -- tailored for sending data.
-
[Blog] Monitoring and Tuning the Linux Networking Stack: Receiving Data -- @PackageCloud -- Deep dive into tuning and monitoring the Linux Networking Stack -- tailored for receiving data.
-
[Blog] Illustrated Guide to Monitoring and Tuning the Linux Networking Stack: Receiving Data -- @PackageCloud -- Illustrated version of previous guide to receiving data.
-
[Tool] Wireguard -- @EdgeSecurity -- Kernel level high performance VPN.
-
[Blog] Nonblocking I/O -- @copyconstruct -- Great article on the fundamentals of file descriptors and nonblocking I/O.
-
[Blog] The method to epoll’s madness -- @copyconstruct -- Followup to previous article, this time covering epoll.
-
[Blog] How-to Debug a Running Docker Container from a Separate Container -- @rothgar -- Great troubleshooting pattern that can be applied to near any container environment.
-
[Blog] Container isolation gone wrong -- @gianlucaborello -- A retrospective post on container isolation and troubleshooting odd behavior.
-
[Blog] What happens when ... Kubernetes edition! -- @jamiehannaford -- In depth overview of how a pod is scheduled within Kubernetes.
-
[Blog] An illustrated guide to Kubernetes Networking [Part 1] -- @ApsOps -- Introduction to Kubernetes networking -- without overlay network
-
[Blog] An illustrated guide to Kubernetes Networking [Part 2] -- @ApsOps -- Introduction to Kubernetes networking -- with an overlay network (vxlan)
-
[Blog] How Heptio Engineers Ace the Certified Kubernetes Administrator Exam -- @rosskukulinski -- Collection of resources and links useful for studying and passing the CKA exam.
-
[Blog] Kubernetes: from load balancer to pod -- @aconchillo -- Collection of resources and links useful for studying and passing the CKA exam.
-
[Blog] Scaling Kubernetes to 2,500 Nodes -- @openai -- An outstanding post from the OpenAI team regarding some of the challenges of wrangling a large-scale Kubernetes Cluster.
-
[Presentation] Kubernetes Walk Through from Technical View -- @resouer -- Technical core Kubernetes architecture overview.
-
[Presentation] Kubernetes Node Under the Hood -- @resouer -- Deep dive into kubelet and a Kubernetes node.
-
[Podcast] TGIK8s -- @jbeda -- Weekly Podcast by Kubernetes co-creator Joe Beda on the Kubernetes eco-system.
-
[Tool] keepalived-cloud-provider -- @jamesmunnelly -- Useful for bare metal and on-prem Kubernetes deployments.
-
[Tool] MetalLB -- BGP based Cloud Provider - Useful for -- bare metal and on-prem Kubernetes deployments.
-
[Tool] kube-router -- BGP Kubernetes network provider that uses IPVS/LVS and BGP ECMP -- Useful for bare metal and on-prem Kubernetes deployments.
-
[Blog] Microservices Patterns With Envoy Sidecar Proxy: The series -- @christianposta -- Deep dive into envoy and istio, parent to a series that is continuing as of 12/31/2017.
-
[Tool] Cilium -- @ciliumproject -- An eBPF based container network provider. Very high performance.
-
[Tool] Contour -- @heptio -- Kubernetes ingress controller based off Lyft's envoy.
-
[Tool] Traefik -- @traefikproxy -- Golang-based load balancer / reverse proxy engine built for microservice environments.
-
[Tutorial] Learn Envoy -- @learnenvoy -- Great Walkthrough tutorial of the many different aspects of envoy.
-
[Blog] Testing Microservices, the sane way -- @copyconstruct -- Very thorough article on methods and approaches to testing microservice applications
-
[Tool] Test Kitchen -- @kitchenci -- Generic Infrastructure test-harness framework
-
[Tool] Serverspec -- @mizzy -- Infrastructure test suite based off the Ruby test library rspec. It requires no agent and can be used with any Configuration Management tool.
-
[Tool] Inspec -- @Chef -- Similar to serverspec, but more easily extendable and built in support for compliance style checks
-
[Blog] Performance Analysis Methodology -- @brendangregg -- Overview of USE (Utilization Saturation and Errors), TSA (Thread State Analysis), and Off-CPU monitoring.
-
[Blog] Linux Enhanced BPF (eBPF) Tracing Tools -- @brendangregg -- Very good collection of info, tools, other articles and presentations around eBPF.
-
[Blog] Key metrics for PostgreSQL monitoring -- @datadoghq -- Insightful article on Postgres monitoring and explains key metrics that should be kept track of.
-
[Blog] Collecting metrics with PostgreSQL monitoring tools -- @datadoghq -- Followup to previous article going over the tools needed to properly monitor Postgres.
-
[Blog] Prometheus -- @kartar -- Introduction to Prometheus from one of the creators of Riemann.
-
[Blog] Key metrics for RabbitMQ monitoring -- @datadoghq -- Great post on what essential RabbitMQ metrics should be monitored.
-
[Blog] Collecting metrics with RabbitMQ monitoring tools -- @datadoghq -- Followup to previous article going over the various tools out there to monitor RabbitMQ.
-
[Tool] Falco -- @sysdig -- Great tool from sysdig for auditing and reporting in a container environment.
-
[Tool] Telegraf -- @InfluxDB -- Telegraf is an agent written in Go for collecting, processing, aggregating, and writing metrics.
-
[Blog] go-patterns -- @_tmrts -- Curated list of golang design patterns.
-
[Blog] Golang Basics: Writing Unit Tests -- @alexellis -- Fantastic reference and starting point for writing golang unit tests.
-
[Video] CNCF Youtube Channel -- @cloudnativefdn -- CNCF youtube channel, massive collection of good resources.
-
[Tool] Certificatechain.io -- @spatie_be -- Handy tool to generate the full cert chain for SSL certificates.