We build every system for the cloud unless there is a specific reason that would prevent the scaleability, flexibility and total cost of ownership benefits that have come to be the new standard in modern system deployment.
We have long been proponents of Amazon's cloud service, named Amazon Web Services (AWS) but do make it a point to maintain current knowledge of how to perform the same on Microsoft's competing Azure platform.
Knowledge Anywhere has been around for many years providing value to their clients primarily through online training. Their online applications must always be available to their clients as it is their primary means of service delivery so you can imagine their caution when considering a move away from a traditional hosted server solution and into the cloud.
Production, staging and development environments were migrated and in each environment database servers, application servers and content servers needed to go. Migrating relatively recent, standard software components, such as native OS features, were no issue whatsoever. The most interesting challenges presented themselves in migrating legacy dependencies where a compatibility context needed to be configured and in the transition of software components that required special license arrangements. As the project started lingering concern existed over the ability to communicate with cloud-hosted assets as if they were still on a controlled network segment and manage them accordingly but some configuration of the VPC (Virtual Private Cloud) features in AWS met the need handily and quickly inspired confidence.
While we first saw the value and immense attraction of the cloud with our developer hats on we've come to realize the benefits afforded to business owners and service providers over the years as well.
If you're curious about the possibility of what deploying your systems to the cloud may look like and are skeptical of the costs associated, the true ease of use or are perhaps concerned about security we'd be happy to discuss specifics of what may or may not be realistic concerns for your particular situation.