According to what said in the GPL FAQ (#SubscriptionFee), GPL does not allow to run GPLed programs on a device that will "stop operating if customers do not continue paying a subscription fee", while most cloud computing require users to continue paying the fee in order to use the service continuously. It's pretty normal to see a cloud server running GPLv2 or GPLv3 programs. Is this really violating the GPL?
With cloud computing you don't buy a "device that stops operating" when you stop paying the service provider. Instead you buy a time-share of some hardware to run your software on (where 'your software' means that you control which software gets executed on your behalf). Thus you don't pay for the right to run GPL software, but rather for the hardware resources you use.