There are a couple possibilities, each of which has its pros and cons:
- Shunt everything off to something like Amazon S3; uploads go directly there, downloads come from there
PRO: Easy (if your application can be modified to handle it), scales very nicely and is quite reliable
CON: Will probably cost money... but not a lot. Much cheaper than Linode per GB. Also, if your application has a lot of assumptions about how files are handled, you're going to have a bad time.
- Have a Linode dedicated to image storage
PRO: Keeps everything on Linode, and you can optimize the beezers out of it for static file serving if you point URLs directly at it. You can mount it via NFS from your application servers, so they can write files as they'd expect.
CON: Much more expensive than S3, more difficult to scale. Also, a considerable SPOF. (NFS acts... poorly when the server goes away.)
- Replicate the images across all of your web servers.
PRO: No code or URL changes.
CON: Monumental waste of resources.

I'd have to have a very compelling reason to NOT go with the S3 option, really.
_________________
Code:
/* TODO: need to add signature to posts */