Having said that, there may be needs that don't work well within cloud environments, and operational requirements that aren't well suited to a hosted model. Those environments, some will argue, are best left within the enterprise. And they may have a point.
Pros and Cons
When evaluating whether a given application or workload is right for migration to a cloud environment, it's important to remember that there isn't any one right answer for all cases. Rather, at a high level, there are pros and cons commonly associated with both the cloud hosting and internal hosting models. Let's take a look at some of the major pros and cons of each.
Internal hosting refers to the model where the assets and applications used by an organization are managed and hosted by the organization itself. Management is typically provided by the internal IT department, on servers and hardware owned by the enterprise.
No hosting or management fees- In an internal-hosting model, there are no external fees for hosting or managing the environment.
Management Control- Internal hosting allows enterprises to decide everything within the hosted environment, retaining complete control.
Change Control- Internal hosting allows organizations to have complete say over all changes, criteria and timetables for any change.
Performance- Internally hosted environments often enjoy greater performance that cloud-hosted environments.
Management Responsibility- Internally hosted environments need to be monitored and managed 24x7 - and guess who gets to do that?
CAPEX/Maintenance Costs- All of the hardware, software, and maintenance costs are yours, and you receive no economies of scale.
Power/cooling/hosting costs- All of the supporting power, cooling and space costs related to internally hosted environments are charged to your organization. And again, there are no economies of scale.
Resource utilization- Your staff, and your payroll dollars, must be at least partially focused on managing and maintaining infrastructure.
In the cloud hosting model, the assets and/or applications utilized by a given enterprise don't reside within the enterprise, and are typically not directly controlled by the enterprise, at least at the infrastructure layer. Depending on the hosting model, the enterprise may have control of the application, but not the underlying infrastructure.
Streamlined costs- All of the CAPEX, maintenance, and utility costs are rolled into a single monthly charge, and economies of scale are often realized.
Improved resource utilization- Your internal staff can focus on strategic initiatives, rather than day-to-day activities.
Flexibility & Scalability- Cloud environments have the ability to rapidly scale up and down as needed.
Recurring Costs- Cloud hosting comes with a monthly bill, that never goes away.
Loss of configuration control- Cloud hosting models typically utilize change and management controls that result in slower changes, and possibly disallowed changes.
Performance- Latency can sometimes be a factor in cloud hosting models.
In the final analysis, there is no way to say whether or not cloud hosting or internal hosting is the right solution for all environments in all cases. Rather, the better approach is to evaluate a given application against a range of criteria such as financial and budget considerations, maturity of the application and your infrastructure.