Some of the questions to ask when transitioning to the cloud include who is accountable for servers, and how will ownership of servers be managed. Ownership is important because knowing where the outflows on server expenses goes allows managers to understand the value being extracted from the servers.
Managing cloud servers is on the list because if the proper configuration management tools are not setup, managing servers can become a massive task to undertake and comprehend. Tracking owners can become incredibly difficult and the value of specific servers can become hard to track.
As infrastructure continues to be abstracted, an important concept to understand is how servers will be deployed and operated. With everything starting to become virtualized and operated using code, its important to see the value in developers and the importance in people.
With the cloud it is easy to deploy machines on demand and respond quickly to the demands of the enterprise. Scalable demand is easily attainable and able to be met with the deployment of on demand machines.
Architecture is easily describable using infrastructure as code. This allows machines to be added to subnets easily and specific groups of servers to be created for specific use cases.
Putting Servers in the cloud allows someone else to take care of them physically and keep the physical aspects in check. This reduced risk allows virtual machine owners to not have to worry about the physical aspect of running servers.
Elastic File Systems (EFS) are simple, scalable file systems that offer elastic file storage for AWS Cloud Services. This type of file system is easily scalable and allows for dynamic resizing on the fly to get application servers the data they need without downtime. One of the main benefits of EFS is shared file storage between multiple EC2 instances.
Elastic Block Storage (EBS) is mainly for use with EC2 instances. Some of the main benefits of EBS is reliability and security. It is consistent with low latency and provides SSD options and use cases for any application. EBS instances are typically attached to EC2 instances giving the EC2 unit some storage.
Simple Storage Solution (S3) is an easy object store with 99.999999999% durability. It is used as a data store for millions of applications and it is used by market leaders in every industry.
Deployment is the process of releasing your application. It involves releasing code onto a prepared application server.
Provisioning is the art of getting the server prepared for the application code. It involves making sure all the libraries are included on the server and the application has everything it needs to be deployed.
Orchestration is the art of arranging or coordinating multiple systems to work with one another to produce an entire environment of application servers and services.
Amazon Web Services provides a secure way to create a cloud infrastructure. AWS has almost every type of service your cloud would need, and the reliability of the services they provide is top notch. The pricing is at a premium, but they offer multiple pricing options for long term service needs. One of their most notable features is the SDK they provide to customize servers.
AWS provides infrastructure as a service, platforms as a service, and also software as a service. These services go all the way from database servers to their simple email services. The platforms include elastic beanstalk which provides automatic deployments as a service for python or ruby applications as well as platforms to provide reliability to your servers.
Infrastructure as a Service provides the most basic out of the box IT need. The infrastructure gives life to any application and provides the baseline for any project. The only problem with this is how much provisioning and maintenance work needs to be completed before the deployment of the application.
Consistency Across Physical Machines
Configuration Management is a process for ensuring consistency among assets in an operational environment. Configuration Management can help reduce outages and help with service delivery. A Configuration Management system provides audit and compliance support in operational accounting of devices and their utilization and modifications of devices. It also helps with Continuous Integration for applications and the ability to deploy rapidly with the knowledge of having prior experience with similar hardware.
Configuration Management can help with asset management and managing the replacement of physical assets. This can make procurement and service management easy due to having the knowledge of the specifications of servers and understanding what needs to be replaced.
Benefits of a Configuration Management System
- Reduced risk of outages
- Cost Reduction
- Improved Experience for users and system administrators
- Strict control of processes
- Agility and Faster Problem Resolution
Enterprise Resource Planning Software (ERP) is a type of enterprise application that is used for automating back office functions relating to technology, services and human resources.Â ERP Systems are designed to be used by larger businesses and often requires dedicated teams to customize and analyze the data. ERP’s provide services such as Supply Chain Management, Improving the accuracy of company financial data, standardizing critical business procedures, and assessing business needs.
Often these ERP systems come in the form of one application with multiple modules readily available to be used once configured. These modules can do anything, but tend to have a specific function that fills a specific need.
The current trends in ERP systems are Mobile ERP Systems, and Cloud ERP Systems. Mobile systems encourage real time information and feedback allowing executives to make decisions quickly. Cloud ERP Systems involve moving systems off site and into the cloud where they can be scaled up and down when needed.
The cost of development is cheap. Development costs of an application are usually around 20% and maintenance costs are usually closer to 80% after all the billing is settled. These relatively cheap development costs make it easy and enticing for any business to keep their application development teams in house and applications fully customized. The cheap upfront costs of development make it easy for businesses to make the investment and create a fully functional application in almost no time.
Although In-house development may appear the be the viable cost, the upfront development price isn’t the cost your business may need to worry about. The maintenance costs of an application are closer between 60-80% of the overall application cost. Yearly upgrades and updates to the application are required to keep the application secure and updated to customer standards. Usually when companies start to see these expensive maintenance costs, they take the application and trade it in for an off the shelf piece of software or turn to a software vendor and pay the yearly contracting fees for a standard software application.Â Although not the best option, thinking of these costs before hand can be a crucial step in saving your company business.
Most companies in the past have seen their Information Technology Department as a cost center and often categorize it in with the rest of the other non critical business functions. These organizations often saw IT as an overhead cost and undervalued the strengths the IT department provided. The role of IT was dismissed in these organizations and the culture was often negative and hostile towards the IT Staff.Â IT was often seen as the enemy in these types of corporate situations.
In more recent times, organizations are starting to see the value in IT, and these modern organizations are placing more emphasis on developing the technology within their company. Companies are starting to place a greater emphasis on understanding new trends; they are analyzing their data to extract value from it; and they are integrating technology into their critical business systems, making the entire organization more effective all around.
As we move more and more into a technology dominated society, we are only going to see the influence IT Departments have grow stronger and stronger.
A Managed Service Provider (MSP) is a type of IT company that manages aÂ company’s IT infrastructure or a company’s end user systems on a subscription basis. MSP’s often have many different pricing models based on need, but typical payment structures include per-device, per-user, and all inclusive.
Service Level Agreements
Most Managed Service Providers offer their services under a Service Level Agreement, which is a contract that defines the responsibilities and quality of work between the two parties. Often SLA’s can come in many forms based on service. The SLA’s describe the services and the levels of service in a tiered fashion.
When? And Who?
Most of the companies that turn to MSP’s are Small or Medium Size. These sized companies typically use MSP’s due to their inability to pay for a full IT staff. The companies that turn to a MSP often chose to switch for the benefits of security, more uptime, and the peace of mind knowing if anything goes wrong its the MSP’s liability and job to fix.
MSP’s allow organizations to focus on important projects critical to the business as well as strategic initiatives, giving the responsibilities of day-to-day IT operations to someone else. This saves money for the business, and is often cheaper than hiring an IT staff. Organizations that use MSPs have access to 30 to 40 IT employees that are experts in multiple areas of the IT industry, giving the business access to all of these experts.