A VDS can be upgraded or downgraded at any time through our standard ordering page. To do so, select the new specifications you'd like, then use the "This is a change to an existing server" option at the bottom of the page. When you submit the form, the system will present you with a summary page that lists your planned changes and invite you to click "Upgrade" in the control panel to trigger the adjustments.
If you are moving to a more expensive configuration, the system will automatically calculate a prorated amount for you to pay in order to receive the upgrade for the remainder of your already-paid time. If you are moving to a less expensive configuration, the system can't issue a credit or reduce your existing term commitment, so we strongly recommend doing this near the end of your paid time.
Upgrading can often be done in-place. The system losslessly enlarges your disk image, so you will not lose any customizations that you have made; it then modifies the configuration file so that your server will have access to the extra CPU(s) and memory. Finally, it shuts down and boots back up the VDS to apply these changes.
If the current machine does not have the capacity to contain your upgraded server, or if you are moving to a new location, the system will automatically copy your virtual hard drive to a new machine that can accommodate it (it will tell you if a move is necessary on the summary page). This copying process takes an amount of time proportional to the amount of the virtual disk you have overwritten, and during the move, your server will be offline; you will be able to monitor the progress of the move through your "Server control" page once it has begun. (The confirmation page will provide a more specific estimate of the length of the downtime.)
If you are changing your location, keep in mind that your IP addresses will also need to change. You'll be sent an email with the new IPs, which you will need to add through your OS (you'll also need to remove the old ones). Also, note that managed VDSes can't be moved between locations; you would need to temporarily switch to an unmanaged configuration, move the server, and then switch back, which would also erase your servers.