HOME

Log support for Godel Hybrid pod scheduler

Overview

It was my intern project in ByteDance Shanghai. I was in the Infrasture Team, Toutiao Cloud.

Currently there are two main pod scheduler in ByteDance, Yarn and Kubernetes. Yarn is mainly responsible for scheduling long running jobs and Kubernetes is more used for scheduling short running jobs. We found out that some online jobs have low utilization when they are not in peak hours. So we decide to create a new hybrid scheduler called Godel to co-scheduling both workloads from Kubernetes and Yarn. My job is to add extra log support for this project in order to release the burden of debugging in a highly distributed situation.

After some while, the servers'situation are different with the one they are in when the pods are scheduled. So we want to do rescheduling to find a better placement of existing pods. I surveyed many state of the art algorithms about pod rescheduler, which contributed to the final design of pod rescheduler.

Kubernetes with Yarn