We'll put VMs in cgroup slices. This change adds the migrations to enable that. A VmHostSlice is used to track resource usage of a cgroup slice. Each slice reserves a subset of host's cpus & part of its memory. Then, VMs can be allocated into the slice. `total_memory_gib` & `used_memory_gib` are used to make sure that we will have enough memory in the host for the VMs that'll be added to the slice in future. When a VmHostSlice record is allocated, it will reserve `total_memory_gib` from the host. Each slice can be either be `dedicated` or `shared`, as specified in the `is_shared` column. We will use `shared` slices to host burstable instances.
1.2 KiB
1.2 KiB