Company
Date Published
Author
Jeroen Op 't Eynde
Word count
1269
Language
English
Hacker News points
None

Summary

Grafana Labs utilizes Tanka for deploying workloads to Kubernetes clusters, and as their organization expanded, they faced challenges in managing workload configurations consistently at scale. Initially, configurations were manually applied, leading to issues like configuration drift and increased engineering burdens due to the growing number of clusters and environments. To address these, Grafana implemented Continuous Deployment, reducing some issues but not eliminating the complexity of managing numerous Tanka environments. They adopted Jsonnet with Tanka inline environments, allowing for dynamic environment creation using Jsonnet's capabilities, thus mitigating issues like configuration drift and bootstrapping new environments. By integrating the tanka-util library, they streamlined the configuration process, making it easier to manage different cluster environments while accommodating cluster-specific needs. They also automated namespace creation processes, ensuring consistency across environments and reducing manual interventions. This approach views the Jsonnet codebase as a "database," which centralizes valuable information, allowing for reuse and reducing data duplication across different scenarios.