Firecracker relies on KVM in the Linux kernel which relies on VT-x or similar. Offering VT-x inside a VM that's already using VT-x is called nested virtualization. EC2 VMs do not support nested virtualization, while others do.
That said, it works fine on EC2 Bare Metal instances.
(n.b., I work on the virtualization stack on Google Compute Engine)
Why not? And what is Google, Azure and DI doing differently