[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"roadmap-reliability-engineering-distributed-databases-cockroachdb-etcd-es":3},{"data":4,"meta":618},[5],{"id":6,"documentId":7,"title":8,"slug":9,"excerpt":10,"level":11,"durationEstimate":12,"body":13,"createdAt":375,"updatedAt":375,"publishedAt":376,"coverImage":377,"relatedStacks":427,"author":611},14,"c7ypc9qfzx3vdtrwhs7z0ioq","Reliability Engineering for Distributed Databases with CockroachDB and etcd","reliability-engineering-distributed-databases-cockroachdb-etcd","Master the principles of distributed consensus, fault tolerance, and high availability by architecting, testing, and securing production-grade clusters using etcd, CockroachDB, Grafana k6, and OpenTelemetry.","advanced","12-16 weeks",[14,20,25,30,34,39,43,64,68,72,76,90,94,108,112,116,120,124,127,145,148,162,166,170,174,178,181,195,198,212,216,220,224,228,232,236,258,262,289,293,297,301,305,323,327,331,349,353,357],{"type":15,"level":16,"children":17},"heading",1,[18],{"type":19,"text":8},"text",{"type":15,"level":21,"children":22},2,[23],{"type":19,"text":24},"Introduction and Prerequisites",{"type":26,"children":27},"paragraph",[28],{"type":19,"text":29},"Distributed systems are governed by the laws of network latency, partial failures, and data consistency models. To build systems that can survive the loss of entire data centers without losing a single transaction, software engineers and systems architects must move beyond traditional single-node databases. This learning path is designed to take you from a basic understanding of databases to an advanced level of expertise in distributed consensus, multi-region database architecture, chaos engineering, and observability.",{"type":26,"children":31},[32],{"type":19,"text":33},"By focusing on etcd (the backbone of Kubernetes configuration) and CockroachDB (a cloud-native, distributed SQL database), you will learn how to design, deploy, and maintain highly resilient data stores. You will also learn how to validate your architectures under extreme stress using Grafana k6 and monitor their health using OpenTelemetry.",{"type":15,"level":35,"children":36},3,[37],{"type":19,"text":38},"Prerequisites",{"type":26,"children":40},[41],{"type":19,"text":42},"Before starting this roadmap, you should possess the following foundational skills:",{"type":44,"format":45,"children":46},"list","unordered",[47,52,56,60],{"type":48,"children":49},"list-item",[50],{"type":19,"text":51},"Systems Programming or Scripting: Proficiency in Go, Python, or Rust to write custom automation scripts, load testing scenarios, and basic applications.",{"type":48,"children":53},[54],{"type":19,"text":55},"Linux and Networking Foundations: A strong grasp of Linux administration, TCP/IP networking, DNS, TLS/SSL certificates, and network utilities like iptables, iproute2, and tcpdump.",{"type":48,"children":57},[58],{"type":19,"text":59},"Containerization: Experience building and running containerized applications using Docker or Podman, and orchestrating them locally with Docker Compose.",{"type":48,"children":61},[62],{"type":19,"text":63},"Relational Database Fundamentals: A solid understanding of SQL, transaction isolation levels (such as Read Committed and Serializable), indexing, and query execution plans.",{"type":15,"level":21,"children":65},[66],{"type":19,"text":67},"Phase 1: Foundations of Distributed Consensus and etcd (Weeks 1-4)",{"type":26,"children":69},[70],{"type":19,"text":71},"The foundation of modern distributed systems is consensus: how multiple independent machines agree on a single value or state. In this phase, you will dive deep into the Raft consensus algorithm and master etcd, a strongly consistent, distributed key-value store.",{"type":15,"level":35,"children":73},[74],{"type":19,"text":75},"Core Concepts to Master",{"type":44,"format":45,"children":77},[78,82,86],{"type":48,"children":79},[80],{"type":19,"text":81},"The Raft Consensus Protocol: Understand leader election, log replication, safety guarantees, and membership changes. Learn how Raft handles split-brain scenarios and network partitions.",{"type":48,"children":83},[84],{"type":19,"text":85},"etcd Architecture: Explore the internal structure of etcd, including the write-ahead log (WAL), bbolt database, MVCC (Multi-Version Concurrency Control) engine, and gRPC-based API.",{"type":48,"children":87},[88],{"type":19,"text":89},"Quorum and Membership: Learn how to calculate quorum sizes and understand why odd-numbered cluster sizes (3, 5, or 7 nodes) are essential for fault tolerance.",{"type":15,"level":35,"children":91},[92],{"type":19,"text":93},"Hands-on Activities",{"type":44,"format":45,"children":95},[96,100,104],{"type":48,"children":97},[98],{"type":19,"text":99},"Manual Cluster Bootstrap: Set up a 3-node etcd cluster on local virtual machines or containers. Generate custom TLS certificates using cfssl or openssl to secure peer-to-peer and client-to-server communications.",{"type":48,"children":101},[102],{"type":19,"text":103},"Interacting with the gRPC API: Use the etcdctl command-line tool and write a custom Go or Python script using the official etcd client library to perform key-value operations, watch keys for real-time changes, and manage leases.",{"type":48,"children":105},[106],{"type":19,"text":107},"Simulating Node Failures: Kill the leader node of your etcd cluster and observe the election process using cluster logs. Measure the time it takes for a new leader to be elected and verify that the cluster remains writable.",{"type":15,"level":35,"children":109},[110],{"type":19,"text":111},"Milestone 1",{"type":26,"children":113},[114],{"type":19,"text":115},"Successfully deploy a secure, 3-node etcd cluster with TLS enabled. Write a script that registers a service lease, automatically renews it, and watches for key expirations, demonstrating a deep understanding of etcd's lease and watch mechanisms.",{"type":15,"level":21,"children":117},[118],{"type":19,"text":119},"Phase 2: Multi-Region Database Architecture with CockroachDB (Weeks 5-8)",{"type":26,"children":121},[122],{"type":19,"text":123},"With a firm grasp of consensus, you will transition to CockroachDB, a distributed SQL database that uses Raft at its core to manage data replication and transaction consensus across global clusters.",{"type":15,"level":35,"children":125},[126],{"type":19,"text":75},{"type":44,"format":45,"children":128},[129,133,137,141],{"type":48,"children":130},[131],{"type":19,"text":132},"CockroachDB Architecture: Understand the layered architecture of CockroachDB, including the SQL layer, distributed KV layer, distribution layer, replication layer (Raft), and storage layer (Pebble).",{"type":48,"children":134},[135],{"type":19,"text":136},"Range Splits and Rebalancing: Learn how CockroachDB automatically splits data into 64MB ranges and distributes them across nodes based on load, disk space, and locality constraints.",{"type":48,"children":138},[139],{"type":19,"text":140},"Multi-Region Schema Design: Master the concepts of regional tables, regional-by-row tables, and global tables. Understand how these configurations impact read/write latency and survivability.",{"type":48,"children":142},[143],{"type":19,"text":144},"Serializable Isolation: Explore how CockroachDB guarantees strict serializability without locking up the database, using multi-version concurrency control and transaction pipelining.",{"type":15,"level":35,"children":146},[147],{"type":19,"text":93},{"type":44,"format":45,"children":149},[150,154,158],{"type":48,"children":151},[152],{"type":19,"text":153},"Deploying a Multi-Region Local Cluster: Use Docker Compose to simulate a multi-region deployment with nodes assigned to different simulated regions (e.g., us-east, us-west, eu-west). Configure locality flags during node startup.",{"type":48,"children":155},[156],{"type":19,"text":157},"Schema Optimization for Latency: Create a database schema for an e-commerce application. Implement regional-by-row tables to ensure that user data is physically stored in the region closest to the user, and global tables for static product catalogs.",{"type":48,"children":159},[160],{"type":19,"text":161},"Analyzing Query Execution: Use the EXPLAIN and EXPLAIN ANALYZE commands to trace SQL queries. Identify cross-region network hops and optimize indexes to keep queries local to a single region.",{"type":15,"level":35,"children":163},[164],{"type":19,"text":165},"Milestone 2",{"type":26,"children":167},[168],{"type":19,"text":169},"Deploy a 6-node, 3-region CockroachDB cluster. Design a schema that achieves sub-10ms read latencies for local users while maintaining transactional consistency across all regions, verified by query execution plans.",{"type":15,"level":21,"children":171},[172],{"type":19,"text":173},"Phase 3: Chaos Engineering and Performance Testing (Weeks 9-12)",{"type":26,"children":175},[176],{"type":19,"text":177},"A distributed database is only as reliable as its validated failure modes. In this phase, you will learn how to write sophisticated load tests and inject faults into your infrastructure to verify its resilience.",{"type":15,"level":35,"children":179},[180],{"type":19,"text":75},{"type":44,"format":45,"children":182},[183,187,191],{"type":48,"children":184},[185],{"type":19,"text":186},"Load Testing with Grafana k6: Learn how to write modular, JavaScript-based load testing scripts that simulate realistic user traffic against your database endpoints.",{"type":48,"children":188},[189],{"type":19,"text":190},"Chaos Engineering Principles: Understand the methodology of chaos engineering: defining steady state, forming hypotheses, injecting real-world failures, and verifying the steady state.",{"type":48,"children":192},[193],{"type":19,"text":194},"Distributed Observability: Learn how to collect and analyze metrics, logs, and traces using OpenTelemetry to pinpoint bottlenecks during stress tests.",{"type":15,"level":35,"children":196},[197],{"type":19,"text":93},{"type":44,"format":45,"children":199},[200,204,208],{"type":48,"children":201},[202],{"type":19,"text":203},"Writing k6 Test Scenarios: Develop a Grafana k6 script that performs a mix of read and write operations against your CockroachDB cluster, simulating hundreds of concurrent users.",{"type":48,"children":205},[206],{"type":19,"text":207},"Injecting Network Partitions: Use Linux network emulation tools (tc and iptables) or chaos engineering tools to simulate network latency, packet loss, and complete network partitions between regions.",{"type":48,"children":209},[210],{"type":19,"text":211},"Instrumenting with OpenTelemetry: Configure CockroachDB and your test application to export telemetry data. Set up OpenTelemetry collectors to gather metrics and visualize them in dashboards, tracking key indicators like p99 latency, active connections, and Raft replication lag.",{"type":15,"level":35,"children":213},[214],{"type":19,"text":215},"Milestone 3",{"type":26,"children":217},[218],{"type":19,"text":219},"Execute a continuous 4-hour load test using Grafana k6 while simultaneously partitioning one of your database regions. Prove that the database automatically heals, maintains data consistency, and recovers its performance baseline once the partition is resolved.",{"type":15,"level":21,"children":221},[222],{"type":19,"text":223},"Phase 4: Capstone Project - Designing a Fault-Tolerant Global State Store (Weeks 13-16)",{"type":26,"children":225},[226],{"type":19,"text":227},"In this final phase, you will synthesize everything you have learned to build, secure, test, and observe a production-ready, highly available global state store.",{"type":15,"level":35,"children":229},[230],{"type":19,"text":231},"Project Specifications",{"type":26,"children":233},[234],{"type":19,"text":235},"You will build a globally distributed configuration and session management service. The architecture must include:",{"type":44,"format":45,"children":237},[238,242,246,250,254],{"type":48,"children":239},[240],{"type":19,"text":241},"A 5-node etcd cluster distributed across simulated zones, used for dynamic configuration management and distributed locking.",{"type":48,"children":243},[244],{"type":19,"text":245},"A 6-node CockroachDB cluster spanning three regions, used for storing persistent user session data and transaction histories.",{"type":48,"children":247},[248],{"type":19,"text":249},"A custom API gateway (written in Go or Python) that routes client requests to the nearest database node and uses etcd for dynamic routing configurations.",{"type":48,"children":251},[252],{"type":19,"text":253},"An automated chaos testing suite built with Grafana k6 and shell scripts that automatically runs weekly resilience audits.",{"type":48,"children":255},[256],{"type":19,"text":257},"An observability dashboard powered by OpenTelemetry that displays real-time system health, consensus status, and transaction latencies.",{"type":15,"level":35,"children":259},[260],{"type":19,"text":261},"Step-by-Step Implementation Guide",{"type":44,"format":263,"children":264},"ordered",[265,269,273,277,281,285],{"type":48,"children":266},[267],{"type":19,"text":268},"Infrastructure Provisioning: Set up your local or cloud-based virtual machines. Configure secure, private networking between all nodes with strict firewall rules.",{"type":48,"children":270},[271],{"type":19,"text":272},"Consensus and Database Deployment: Bootstrap your etcd and CockroachDB clusters with full TLS encryption. Verify that all nodes are communicating correctly and that the clusters are healthy.",{"type":48,"children":274},[275],{"type":19,"text":276},"Application Development: Write your API gateway. Implement connection pooling, automatic retries with exponential backoff for database transactions, and health check endpoints.",{"type":48,"children":278},[279],{"type":19,"text":280},"Telemetry Integration: Instrument your API gateway with OpenTelemetry SDKs. Configure your database clusters to export metrics. Set up an OpenTelemetry collector to aggregate all data.",{"type":48,"children":282},[283],{"type":19,"text":284},"Chaos and Validation: Run your Grafana k6 load test. While the load is running, trigger a series of failures: terminate the etcd leader, partition a CockroachDB region, and simulate high packet loss on the WAN links.",{"type":48,"children":286},[287],{"type":19,"text":288},"Documentation: Write a comprehensive post-mortem report detailing how the system responded to each failure, the observed recovery times, and any performance degradation.",{"type":15,"level":35,"children":290},[291],{"type":19,"text":292},"Milestone 4",{"type":26,"children":294},[295],{"type":19,"text":296},"Deliver a fully functional, containerized repository containing your infrastructure-as-code configurations, application code, load testing scripts, and a detailed markdown report proving the system's resilience under chaos conditions.",{"type":15,"level":21,"children":298},[299],{"type":19,"text":300},"Portfolio Outcomes",{"type":26,"children":302},[303],{"type":19,"text":304},"Upon completing this learning path, you will have a professional-grade portfolio containing:",{"type":44,"format":45,"children":306},[307,311,315,319],{"type":48,"children":308},[309],{"type":19,"text":310},"Multi-Region Infrastructure Templates: Reusable configurations for deploying secure, production-grade etcd and CockroachDB clusters.",{"type":48,"children":312},[313],{"type":19,"text":314},"Advanced SQL Schema Designs: Examples of multi-region database schemas optimized for low latency and high survivability, complete with query analysis documentation.",{"type":48,"children":316},[317],{"type":19,"text":318},"Chaos Engineering Test Suite: A collection of Grafana k6 scripts and network manipulation scripts that can be adapted to test any distributed system.",{"type":48,"children":320},[321],{"type":19,"text":322},"Observability Dashboards: Configuration files for OpenTelemetry collectors and dashboards that visualize distributed consensus metrics and database performance.",{"type":15,"level":21,"children":324},[325],{"type":19,"text":326},"Common Mistakes and Anti-Patterns",{"type":26,"children":328},[329],{"type":19,"text":330},"Avoid these critical errors as you work through this learning path:",{"type":44,"format":45,"children":332},[333,337,341,345],{"type":48,"children":334},[335],{"type":19,"text":336},"Ignoring Clock Skew: CockroachDB relies on synchronized clocks (using NTP or PTP) to maintain consistency across nodes. Ignoring clock synchronization in multi-node setups will lead to node crashes and transaction failures. Always monitor and configure clock synchronization.",{"type":48,"children":338},[339],{"type":19,"text":340},"Improper Quorum Calculations: Setting up an even number of nodes (e.g., 4 nodes) in an etcd cluster does not increase fault tolerance; it actually decreases it. A 4-node cluster requires 3 nodes for quorum, meaning it can only survive 1 failure, the same as a 3-node cluster, but with higher network overhead.",{"type":48,"children":342},[343],{"type":19,"text":344},"Over-Sharding and Poor Schema Design: Designing schemas without considering data locality in a distributed database can lead to \"hot spots\" (where a single node handles all writes) or excessive cross-region network hops, destroying performance.",{"type":48,"children":346},[347],{"type":19,"text":348},"Testing Only \"Happy Paths\": Assuming your system is resilient because it works under normal load is a dangerous mistake. Always validate your architecture by actively breaking it under heavy load.",{"type":15,"level":21,"children":350},[351],{"type":19,"text":352},"What to Learn Next",{"type":26,"children":354},[355],{"type":19,"text":356},"Once you have mastered distributed database reliability, continue your journey with these advanced topics:",{"type":44,"format":45,"children":358},[359,363,367,371],{"type":48,"children":360},[361],{"type":19,"text":362},"Distributed Transactions and Consensus Alternatives: Study alternative consensus protocols like Paxos, Zab, or Epaxos to understand how other systems handle replication.",{"type":48,"children":364},[365],{"type":19,"text":366},"Advanced Network Engineering: Deepen your knowledge of BGP routing, Anycast, and service meshes (such as Envoy Proxy) to optimize global traffic routing.",{"type":48,"children":368},[369],{"type":19,"text":370},"Database Internals: Explore the source code of storage engines like Pebble or RocksDB to understand LSM-trees, SSTables, and write amplification.",{"type":48,"children":372},[373],{"type":19,"text":374},"Kubernetes Operators: Learn how to run stateful applications on Kubernetes using advanced operators like the CockroachDB Operator or etcd Operator, mastering stateful sets, persistent volumes, and pod disruption budgets.","2026-07-25T00:01:20.577Z","2026-07-25T00:01:20.606Z",{"id":378,"documentId":379,"name":380,"alternativeText":381,"caption":382,"focalPoint":383,"width":384,"height":385,"formats":386,"hash":421,"ext":390,"mime":391,"size":422,"url":423,"previewUrl":383,"provider":424,"provider_metadata":383,"createdAt":425,"updatedAt":425,"publishedAt":426},28,"fpqa8wrl8f3pkov2ku8jbqjj","reliability-engineering-distributed-databases-cockroachdb-etcd-cover","An abstract technical illustration representing distributed database consensus and fault tolerance with interconnected nodes and data streams.","StackAtlas roadmap cover",null,1200,630,{"thumbnail":387,"small":397,"medium":405,"large":413},{"name":388,"hash":389,"ext":390,"mime":391,"path":383,"width":392,"height":393,"size":394,"sizeInBytes":395,"url":396},"thumbnail_reliability-engineering-distributed-databases-cockroachdb-etcd-cover","thumbnail_reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6",".png","image/png",245,129,40.8,40801,"/uploads/thumbnail_reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6.png",{"name":398,"hash":399,"ext":390,"mime":391,"path":383,"width":400,"height":401,"size":402,"sizeInBytes":403,"url":404},"small_reliability-engineering-distributed-databases-cockroachdb-etcd-cover","small_reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6",500,263,137.91,137912,"/uploads/small_reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6.png",{"name":406,"hash":407,"ext":390,"mime":391,"path":383,"width":408,"height":409,"size":410,"sizeInBytes":411,"url":412},"medium_reliability-engineering-distributed-databases-cockroachdb-etcd-cover","medium_reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6",750,394,289.51,289510,"/uploads/medium_reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6.png",{"name":414,"hash":415,"ext":390,"mime":391,"path":383,"width":416,"height":417,"size":418,"sizeInBytes":419,"url":420},"large_reliability-engineering-distributed-databases-cockroachdb-etcd-cover","large_reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6",1000,525,463.96,463962,"/uploads/large_reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6.png","reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6",133.85,"/uploads/reliability_engineering_distributed_databases_cockroachdb_etcd_cover_97c8e4d1f6.png","local","2026-07-25T00:01:20.280Z","2026-07-25T00:01:20.281Z",[428,476,519,566],{"id":429,"documentId":430,"title":431,"slug":432,"excerpt":433,"difficulty":11,"estimatedCost":434,"maturity":435,"seoTitle":436,"seoDescription":437,"createdAt":438,"updatedAt":438,"publishedAt":439,"coverImage":440},16,"da7d7ddyxcu9bcg4gipusalp","CockroachDB","cockroachdb","An open-source, distributed SQL database offering horizontal scalability, strong ACID consistency, and high resilience for cloud-native transactional workloads.","Free (Open Source / Core) to Enterprise pricing based on vCPUs","stable","CockroachDB: Architecture, Strengths, and Use Cases","Explore CockroachDB, a distributed SQL database. Learn its architecture, Raft consensus, PostgreSQL compatibility, strengths, and limitations.","2026-07-16T10:16:17.254Z","2026-07-16T10:16:17.280Z",{"id":441,"documentId":442,"name":443,"alternativeText":444,"caption":445,"focalPoint":383,"width":384,"height":385,"formats":446,"hash":471,"ext":390,"mime":391,"size":472,"url":473,"previewUrl":383,"provider":424,"provider_metadata":383,"createdAt":474,"updatedAt":474,"publishedAt":475},11,"d16x81pc80xxfcjy44b0euiv","cockroachdb-cover","An abstract technical illustration showing a resilient distributed network of interconnected nodes representing a distributed SQL database.","StackAtlas editorial cover",{"thumbnail":447,"small":453,"medium":459,"large":465},{"name":448,"hash":449,"ext":390,"mime":391,"path":383,"width":392,"height":393,"size":450,"sizeInBytes":451,"url":452},"thumbnail_cockroachdb-cover","thumbnail_cockroachdb_cover_84df17431f",31.66,31659,"/uploads/thumbnail_cockroachdb_cover_84df17431f.png",{"name":454,"hash":455,"ext":390,"mime":391,"path":383,"width":400,"height":401,"size":456,"sizeInBytes":457,"url":458},"small_cockroachdb-cover","small_cockroachdb_cover_84df17431f",109.22,109224,"/uploads/small_cockroachdb_cover_84df17431f.png",{"name":460,"hash":461,"ext":390,"mime":391,"path":383,"width":408,"height":409,"size":462,"sizeInBytes":463,"url":464},"medium_cockroachdb-cover","medium_cockroachdb_cover_84df17431f",220.11,220110,"/uploads/medium_cockroachdb_cover_84df17431f.png",{"name":466,"hash":467,"ext":390,"mime":391,"path":383,"width":416,"height":417,"size":468,"sizeInBytes":469,"url":470},"large_cockroachdb-cover","large_cockroachdb_cover_84df17431f",352.94,352937,"/uploads/large_cockroachdb_cover_84df17431f.png","cockroachdb_cover_84df17431f",98.78,"/uploads/cockroachdb_cover_84df17431f.png","2026-07-16T10:16:17.030Z","2026-07-16T10:16:17.031Z",{"id":477,"documentId":478,"title":479,"slug":479,"excerpt":480,"difficulty":11,"estimatedCost":481,"maturity":435,"seoTitle":482,"seoDescription":483,"createdAt":484,"updatedAt":484,"publishedAt":485,"coverImage":486},26,"vu2awmohh9mhjg7z5lw3z9uz","etcd","A strongly consistent, distributed key-value store that provides a reliable way to store data that needs to be accessed by a distributed system or cluster of machines.","free-open-source","etcd: Distributed Consistent Key-Value Store Guide","Deep dive into etcd, the distributed key-value store powering Kubernetes. Learn its Raft consensus, architecture, strengths, and use cases.","2026-07-21T10:16:21.617Z","2026-07-21T10:16:21.636Z",{"id":429,"documentId":487,"name":488,"alternativeText":489,"caption":445,"focalPoint":383,"width":384,"height":385,"formats":490,"hash":515,"ext":390,"mime":391,"size":516,"url":517,"previewUrl":383,"provider":424,"provider_metadata":383,"createdAt":518,"updatedAt":518,"publishedAt":518},"o4uspxzzrpl0wqpuen7d1pee","etcd-cover","An abstract technical illustration showing a synchronized network of glowing nodes representing distributed consensus and data replication in a cluster.",{"thumbnail":491,"small":497,"medium":503,"large":509},{"name":492,"hash":493,"ext":390,"mime":391,"path":383,"width":392,"height":393,"size":494,"sizeInBytes":495,"url":496},"thumbnail_etcd-cover","thumbnail_etcd_cover_3ed5f53ac9",30.27,30265,"/uploads/thumbnail_etcd_cover_3ed5f53ac9.png",{"name":498,"hash":499,"ext":390,"mime":391,"path":383,"width":400,"height":401,"size":500,"sizeInBytes":501,"url":502},"small_etcd-cover","small_etcd_cover_3ed5f53ac9",104.19,104192,"/uploads/small_etcd_cover_3ed5f53ac9.png",{"name":504,"hash":505,"ext":390,"mime":391,"path":383,"width":408,"height":409,"size":506,"sizeInBytes":507,"url":508},"medium_etcd-cover","medium_etcd_cover_3ed5f53ac9",214.98,214983,"/uploads/medium_etcd_cover_3ed5f53ac9.png",{"name":510,"hash":511,"ext":390,"mime":391,"path":383,"width":416,"height":417,"size":512,"sizeInBytes":513,"url":514},"large_etcd-cover","large_etcd_cover_3ed5f53ac9",340,339995,"/uploads/large_etcd_cover_3ed5f53ac9.png","etcd_cover_3ed5f53ac9",83.82,"/uploads/etcd_cover_3ed5f53ac9.png","2026-07-21T10:16:21.431Z",{"id":520,"documentId":521,"title":522,"slug":523,"excerpt":524,"difficulty":525,"estimatedCost":526,"maturity":435,"seoTitle":527,"seoDescription":528,"createdAt":529,"updatedAt":529,"publishedAt":530,"coverImage":531},24,"ugucimhysxrihto0fcj310q1","Grafana k6","grafana-k6","An open-source, developer-centric load testing tool written in Go and scriptable in JavaScript, designed for modern engineering teams to build reliable and performant applications.","intermediate","Free (Open Source)","Grafana k6: Developer-Centric Load and Performance Testing","Explore Grafana k6, an open-source load testing tool. Learn its architecture, strengths, limitations, and how to integrate performance testing into CI/CD.","2026-07-20T10:16:25.969Z","2026-07-20T10:16:25.990Z",{"id":532,"documentId":533,"name":534,"alternativeText":535,"caption":445,"focalPoint":383,"width":384,"height":385,"formats":536,"hash":561,"ext":390,"mime":391,"size":562,"url":563,"previewUrl":383,"provider":424,"provider_metadata":383,"createdAt":564,"updatedAt":564,"publishedAt":565},15,"newciii4dj36yh2nmedpokhe","grafana-k6-cover","An abstract technical illustration showing network data streams and performance metrics representing load testing.",{"thumbnail":537,"small":543,"medium":549,"large":555},{"name":538,"hash":539,"ext":390,"mime":391,"path":383,"width":392,"height":393,"size":540,"sizeInBytes":541,"url":542},"thumbnail_grafana-k6-cover","thumbnail_grafana_k6_cover_cb9fac623c",31.78,31776,"/uploads/thumbnail_grafana_k6_cover_cb9fac623c.png",{"name":544,"hash":545,"ext":390,"mime":391,"path":383,"width":400,"height":401,"size":546,"sizeInBytes":547,"url":548},"small_grafana-k6-cover","small_grafana_k6_cover_cb9fac623c",109.38,109381,"/uploads/small_grafana_k6_cover_cb9fac623c.png",{"name":550,"hash":551,"ext":390,"mime":391,"path":383,"width":408,"height":409,"size":552,"sizeInBytes":553,"url":554},"medium_grafana-k6-cover","medium_grafana_k6_cover_cb9fac623c",219.74,219740,"/uploads/medium_grafana_k6_cover_cb9fac623c.png",{"name":556,"hash":557,"ext":390,"mime":391,"path":383,"width":416,"height":417,"size":558,"sizeInBytes":559,"url":560},"large_grafana-k6-cover","large_grafana_k6_cover_cb9fac623c",347.19,347190,"/uploads/large_grafana_k6_cover_cb9fac623c.png","grafana_k6_cover_cb9fac623c",92.68,"/uploads/grafana_k6_cover_cb9fac623c.png","2026-07-20T10:16:25.758Z","2026-07-20T10:16:25.759Z",{"id":567,"documentId":568,"title":569,"slug":570,"excerpt":571,"difficulty":525,"estimatedCost":526,"maturity":435,"seoTitle":572,"seoDescription":573,"createdAt":574,"updatedAt":574,"publishedAt":575,"coverImage":576},18,"pjfh61c3ff640c21qntqmica","OpenTelemetry","opentelemetry","An open-source, vendor-neutral observability framework providing standardized APIs, SDKs, and tooling to generate, collect, and export traces, metrics, and logs.","OpenTelemetry: The Standard for Modern Observability","Learn about OpenTelemetry, the open-source standard for collecting traces, metrics, and logs. Explore its architecture, strengths, and use cases.","2026-07-16T13:53:30.303Z","2026-07-16T13:53:30.319Z",{"id":577,"documentId":578,"name":579,"alternativeText":580,"caption":445,"focalPoint":383,"width":384,"height":385,"formats":581,"hash":606,"ext":390,"mime":391,"size":607,"url":608,"previewUrl":383,"provider":424,"provider_metadata":383,"createdAt":609,"updatedAt":609,"publishedAt":610},12,"e12vyritmurbiieb4nymnnwc","opentelemetry-cover","Abstract technical illustration of data pipelines and interconnected nodes representing distributed tracing and observability.",{"thumbnail":582,"small":588,"medium":594,"large":600},{"name":583,"hash":584,"ext":390,"mime":391,"path":383,"width":392,"height":393,"size":585,"sizeInBytes":586,"url":587},"thumbnail_opentelemetry-cover","thumbnail_opentelemetry_cover_e9dda2cf9f",33.95,33952,"/uploads/thumbnail_opentelemetry_cover_e9dda2cf9f.png",{"name":589,"hash":590,"ext":390,"mime":391,"path":383,"width":400,"height":401,"size":591,"sizeInBytes":592,"url":593},"small_opentelemetry-cover","small_opentelemetry_cover_e9dda2cf9f",116.01,116012,"/uploads/small_opentelemetry_cover_e9dda2cf9f.png",{"name":595,"hash":596,"ext":390,"mime":391,"path":383,"width":408,"height":409,"size":597,"sizeInBytes":598,"url":599},"medium_opentelemetry-cover","medium_opentelemetry_cover_e9dda2cf9f",237.1,237097,"/uploads/medium_opentelemetry_cover_e9dda2cf9f.png",{"name":601,"hash":602,"ext":390,"mime":391,"path":383,"width":416,"height":417,"size":603,"sizeInBytes":604,"url":605},"large_opentelemetry-cover","large_opentelemetry_cover_e9dda2cf9f",385.68,385683,"/uploads/large_opentelemetry_cover_e9dda2cf9f.png","opentelemetry_cover_e9dda2cf9f",97.8,"/uploads/opentelemetry_cover_e9dda2cf9f.png","2026-07-16T13:53:30.083Z","2026-07-16T13:53:30.084Z",{"id":16,"documentId":612,"name":613,"slug":614,"bio":383,"createdAt":615,"updatedAt":616,"publishedAt":617},"lv2wpsnmnajx4jmhrvo1zne6","Jose Henriquez","jose-henriquez","2026-07-04T16:49:01.335Z","2026-07-04T16:49:39.022Z","2026-07-04T16:49:39.004Z",{"pagination":619},{"page":16,"pageSize":620,"pageCount":16,"total":16},25]