kernelci / kernelci/kernelci-project

KernelCI K8S building clusters

Open
#469 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
14
Forks
32
Avg merge
1d 1h
Merged PRs (30d)
3

Description

At current moment we have single k8s cluster with up to 40 nodes capacity. This is bare minimum, but since we migrate a lot of kernel and many new people are joining we need to expand and make k8s scheduling more smarter.

Future k8s job scheduling logic can be fairly simple:
- Pick random k8s cluster and check number of queued jobs that are not running yet (that indicates cluster is full), if it is 0 - schedule job there
- Pick next cluster and check number of queued jobs, if it is 0 - schedule job there, if we reached first cluster - based on number of queued jobs - schedule job on cluster with less queued jobs

Action items:

- [ ] Add more k8s clusters with inexpensive spot instances in different regions, but avoid to have egress costs between regions
- [ ] make k8s scheduling smarter
- [ ] forecast costs for each month based on current usage and planned growth

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue names no files, tests, or entry points. Start by mapping the existing Kubernetes scheduling path and cluster configuration, then define separate completion criteria for adding clusters, scheduling queued jobs, and forecasting monthly costs.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes
Domain
cloud, devops, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.