Container Engine should not only one machine type
A cluster should have multiple machine type for various purpose (maybe CPU-intensive, memory, IO...). I can use label to select the machine type to match my purpose of pod.
Chris Hodapp commented
This exists in the form of NodePools, which a cluster can have many of.