Jan Wolfensberger, Sebastian Plattner - Kubernetes Resource Requests for Gitlab Jobs

Jan Wolfensberger, Sebastian Plattner - Kubernetes Resource Requests for Gitlab Jobs

5 Lượt nghe
Jan Wolfensberger, Sebastian Plattner - Kubernetes Resource Requests for Gitlab Jobs
Build GitLab CI runners at Mobiliar run on an AKS Kubernetes cluster (with autoscaling). However, the jobs vary significantly in terms of resource requirements (CPU, memory). As infrastructure operators, we want to ensure that every job gets the resources it needs to run quickly and successfully, while also making sure the infrastructure isn’t oversized. Developers often don’t know exactly how many resources their jobs require. Additionally, GitLab’s built-in tools make it difficult to manage appropriate resource requests across all Mobiliar projects (and there are many). To address this, we’ve developed a solution using a Kubernetes Mutating Webhook combined with Prometheus lookups and caching. Based on historical job data, it automatically sets suitable resource requests when a pod is created. We’d be happy to share more context and details about this approach in a talk.