You can use TurboActivate with Amazon EC2, however you must take into account that every time you stop and start an EC2 instance, the instance will be on a completely different physical machine. And because TurboActivate is hardware-locked licensing, this means every time the customer shuts down the EC2 instance with your app on it, the next time they start the machine (and your app) TurboActivate will say they're not activated (because the machines are different).
See: Licensing from inside a virtual machine or hypervisor
So you have 2 choices for customers running on EC2:
1. Tell them to never shut down their EC2 instance (my guess is that won't fly).
or...
2. Let them use a version of your app that has TurboFloat integrated. Then they can install the TurboFloat Server on a real computer somewhere (it doesn't need to be installed on "server hardware" just any old computer will do)
And your app (using TurboFloat) will connect the TurboFloat Server hosted on their computer. So they can start and stop the EC2 instance all they want and the TurboFloat Server will just work.
Does that make sense?