Virtualization of applications, desktops and servers has taken off in the past few years because of the convenience and cost savings. Organizations are rolling these virtual servers out in the form of private cloud, public cloud (like Amazon’s EC2/AWS or GoGrid) or hybrid cloud services (combinations of private clouds and public). The configuration and ongoing management of these services pose a number of challenges. These are identified along with a number of solutions currently available in the market, providing those managers who are making decisions about cloud services with the information they need to make an informed choice.
Here are the challenges in automating the configuration, rollout and ongoing management of these services:
- Dynamic scaling: Many businesses are rapidly moving towards online sales of products and services from a brick and mortar, physical store sales model. Seasonal sales ramp-ups may mean that they need extra Web and database servers to be brought online when needed and released when not. This kind of dynamic scaling may need to happen quickly and automatically as you see traffic increase. Hybrid clouds are set up mostly for this reason using their own servers during normal demand and press public cloud servers only when additional compute power is needed.
- Rebuilds of environments: If a university provides computing resources including application software for various courses for their students, they may need to rebuild a custom environment for each student each semester or quarter, depending upon what courses they have signed up for. Cloud management tools need to support easy and rapid rebuilding and rollout of virtual computing environments based on master templates.
- Ongoing monitoring and availability management: Ongoing monitoring and management of servers are keys to removing non-functioning servers and services and pressing new ones into operation, automatically.
- Security: The same levels of security that may be available on private clouds need to be extended to public or hybrid clouds. The cloud infrastructure automation tools need to be capable of monitoring and reporting on breaches or suspicious activity on all of the cloud services used, public or private.
- Multi-tenancy: Multi-tenancy may need to be supported by the cloud infrastructure automation tools. They may be needed if the IT organization provides computing services to many external organizations or multiple, internal divisions within the same organization.
- Simplicity: Cloud infrastructure automation tools need to be simple to configure and use, given the possible mix of different kinds of servers – Windows, Linux or other UNIX platforms, the variety of database management software – MySQL, SQL Server, Oracle, Sybase and others, and applications software that may need to be set up and deployed.
- Language support: Many cloud based services may need support for specific language environments like Java, Microsoft C++ or C# technologies, PERL or Python. Cloud infrastructure automation tools need to be either agnostic or provide seamless support for these.
- Rapid development of mobile back ends: Mobile apps, especially enterprise ones, invariably demand mobile backend servers that may need to be configured and rolled out quickly. Cloud infrastructure automation tools may need to support this kind of emerging requirement, increasingly.
Here are some popular commercial cloud infrastructure automation tools:
- Opscode: Opscode provides cloud infrastructure management as a Software as a Service (SaaS) offering. Another option is to install the same software in an organization’s private cloud that works within their firewall. Opscode provides automation of cloud server setups using scripts (master templates) and security is managed with multiple role based logins.
- Kinvey: Kinvey is a startup company targeting specifically the task of building and managing back ends for mobile apps. The emphasis is on speed of building and scaling the backend for mobile apps. They, in turn, use Microsoft Windows Azure for database management, Amazon Web Services for compute services and Rackspace for the physical servers. Since they automate the entire setup and management, user visible management functions are minimal.
- RightScale Automation: The RightScale automation tool helps manage hybrid clouds. The automation tool provides auto-scaling based on rules that you configure. Automatic scaling happens according to these rules when monitoring detects certain conditions that can indicate that more capacity is needed with computes, storage or Web servers. Failover rules can be set up using this automation tool and tested out ahead of time.
- HP Hybrid Delivery: Hewlett Packard Hybrid Delivery Automation Management tools provide the ability to configure, set up role-based security, roll-out applications, monitor and make adjustments to hybrid clouds. HP also provides outsourcing services that can do all of the management with their consultants.
- CA Automation Suite for Clouds: This is an interesting extension of their IT management portal to the cloud, private, public or hybrid. The software treats laptops, desktops, or company blackberry phones, the same as a virtual server inside the company (private cloud) or external (public cloud) to the company. You can then set up security, configuration and apply monitoring, alerts and actions as if they are one of the other resources the organization is using.
- EMC Ionix: EMC Ionix management suite manages physical, virtual and cloud servers with a single set of tools. They incorporate VMWare’s management software within Ionix. They help you configure, rollout, monitor, and manage servers of the above type using a model based approach. You define a model of the services you need from a server (policies) and configuration happens according to this model. Monitoring and alerts are based on deviations from this model in real-time.
- enStratus: enStratus is a cloud configuration and management platform that allows you to set policies and configuration rules. Based on this, systems are configured and rolled out. The interesting twist in this tool is that this allows you to set budgets for resources for various departments and applications and dynamic scaling happens for each department with additional cloud resources and does not diminish resources from others.
- BMC Cloud Lifecycle Management: BMC Software offers a Cloud Lifecycle Management tool that can help configure, roll out, monitor and manage cloud servers. They use the concept of a Service Governor that monitors and sends alerts about deviations from policies set up through a portal. You can register service providers for physical servers, cloud resources, storage or network resources. You can then configure the resources you need, provision, use, monitor and then act on alerts that you get.
Cloud resources, whether private, public or hybrid, require comprehensive policy management, master template management, roll out, monitoring, alerting and actions on those alerts. They need to support automatic dynamic scaling, enforce uniform security, support a variety of platforms and external cloud services and be simple to use. There are a number of tools that provide the features needed to help organizations implement the cloud solution that’s best for them.
What challenges do you encounter with automation of cloud services? Let SSQ know by sending email to firstname.lastname@example.org.