How much storage is enough... perhaps 10GB more than you are using at the time, and therein lies the problem.
Before you can give an estimate you need to know what those 500 students are going to be doing. For example we recently had an assignment run with 500 students. It was a video assignment, they recorded a presentation and uploaded it to Moodle. That one assignment gobbled up 20Gb in a couple of days.
The answer is not to try and guess a hard number but set up something which is flexible that allows you to expand over time in line with demand, but there is a cost associated with that too.
As for "the cloud", there are plenty of people (Moodle Partners included) who will provide that for you, but keep in mind you can move to that kind of setup whenever you want, by that I mean you could migrate an internal Moodle site to external hosting if you needed to.
I think a lot of Moodle hosts use services like Digitial Ocean or Rackspace. Rackspace are very good but also expensive. Digital Ocean seem pretty good but you have to do more yourself.
Also consider how you are going to recover that space later on, i.e. auto clear down / delete courses.
To get an idea of prices just ask a few Moodle Partners for quotes. When you do that it would be worth asking:
- What their policy is on adding plugins, some providers charge silly money to add new plugins.
- Whether your install is on its own code base or multi tenancy (multiple customers on one code base)
The latter can be cheaper but may constrain you around plugins / themes, upgrades will be automatic but you may not always want to upgrade....
To give you an idea of prices there is a non Moodle Partner who provide 50Gb for 500 students for $125 per month fully managed using Multi Tenancy (less control over themes and plugins).