If you're considering a move to the cloud for a server that currently resides on-premises, there are several factors you'll want to consider. The list of factors is not comprehensive, but should give you an idea of the kinds of things you should be thinking about along the way.
Cloud providers offer a dizzying variety of virtual machine types, all with different features or capabilities. Some have the newest CPUs from Intel and AMD, others may have GPUs that can be used for highly parallel computational or graphically intensive workloads. This can be a great thing for our customers, and in many respects can save cost over an on-premises server, especially for proof of concept and test deployments. However, there are use cases where cost will exceed our on-premises offerings. For example, If you're going to require large amounts of storage, you may find that the cost to do this in the cloud aren't economical. Block storage offerings can be quite costly if your needs are terabyte-scale and higher. You may also find that the software you're using comes with added cost when running in the cloud. We encourage you to talk us if you're considering a server migration to the cloud as the decision is highly dependent on the individual circumstances.
If your server is dependent on campus to function, care should be made in exploring the dependencies and their reachability from the cloud.
If you're deploying a server running Windows in the cloud, domain connectivity will be important. Domain controllers are not exposed to the internet, so they aren't accessible from cloud providers without using site-to-site VPN connectivity. Please be aware that there could be added costs for using site-to-site VPN connectivity managed by the Cloud Team to reach campus domain controllers.
You may also want to connect to on-premises data sources. Please know that bandwidth from the cloud to campus using site-to-site VPN is a limited resource. We highly discourage using this network pathway for large data transfers. If an application is moving to the cloud, we recommend all parts of the application that can move do so.
It is strongly encouraged that databases move with the application if possible. Cloud provider data centers can be close to Iowa geographically, but the network path to get to them may not be obvious or short. Increased latency between an application server and the database could lead to undesirable behavior and an unsuccessful cloud migration. If you're using Microsoft SQL Server, licensing costs could come into play for your database as well, further increasing your cost. Please talk with us if you're considering moving an application but leaving the database on-premises.
In some cases, you may not even need to deploy a server in the cloud to host your application. More and more, vendors are offering container images that allow you to host your application in managed container services. This ensures that you don't need to patch and maintain a server operating system. It can also help modernize application management and troubleshooting.
Some vendors are offering their applications as a hosted offering. They may be hosting their applications in a cloud provider and allowing you to consume them, removing the management overhead of running it yourself. These carry some risk and a heavy reliance on the vendor to backup the data, quickly deal with security vulnerabilities, and architect in a way that limits downtime. It's key that customers understand those risks and mitigate them to the best of their abilities, should they go down that path. It should be explored and can offer a number of benefits over self-hosting.
There are also 'serverless' service options, providing areas to host code and run that code on-demand or based on a trigger. Some simple applications, perhaps written in-house, can be migrated to these services, reducing cost by only paying for when the code is actually running. The Cloud Team can talk to you about application modernization and help you determine if these types of services are a good fit.