Virtualization to cloud: Planning, executing a private cloud migration
A comprehensive collection of articles, videos and more, hand-picked by our editors
Private clouds are an alternative to both public clouds and long-established server virtualization practices. With a private cloud, organizations can realize the advantages of both while mitigating some of the disadvantages. To maximize the benefits of your private cloud, be sure to implement these five private cloud automation tools and processes -- or risk unnecessary system administration overhead.
1. Automated provisioning. Compute and storage resources should be readily available without intervention by a systems administrator. Automated provisioning tools allow users to specify the number and types of resources needed and then create those virtual resources and make them available for use. Provisioning may be done in response to a user-specified command -- e.g., "Create four midsized virtual servers" -- or in response to a change in demand for an app that is configured to automatically scale up or down as demand dictates.
Configuration management tools, such as Chef and Puppet, allow system administrators to describe cloud infrastructure components in abstract terms and easily deploy those components to the cloud. Configuration management tools include client apps that monitor the local state of a server and allow developers to create configuration scripts that adapt to the state of a device. This provides for more robust and flexible deployment options in the private cloud.
Provisioning in a private cloud may require some support for prioritization; not all business processes are equally important. Mission-critical workflows should have access to limited resources over low-priority processes. Consider your need for prioritizing jobs in the private cloud and support for policy-based provisioning when evaluating private cloud automated provisioning tools.
2. Cloud management dashboard. A cloud management dashboard is an essential part of a cloud automation strategy. Many aspects of automated provisioning are carried out behind the scenes by scripts, but cloud users should not have to grapple with command lines and scripts. A cloud management dashboard presents an easy-to-use interface that allows users to provision and de-provision resources, track resource use, modify access controls to resources and view services available in the private cloud.
In addition to streamlining ad hoc tasks, such as starting a server, a cloud management dashboard can support task scheduling, such as regularly backing up databases.
The ideal dashboard is a single point of management for cloud users. It should display information on accounts, charges and budget restrictions, if any. Even with highly automated private clouds, problems will occur and users may need systems administration support. The cloud management dashboard should include access to a help desk system as well.
3. Monitoring cloud operations. Monitoring dedicated servers in a data center is challenging, but considering that the configuration of such servers is fairly static when compared to servers in a cloud configuration, you can appreciate the difficulty of monitoring cloud resources. Monitoring tools allow for real-time assessment of the state of the cloud and include resource allocation and use details.
More on private cloud
Hybrid cloud's public and private cloud pieces
Virtual private clouds ease enterprise security, privacy fears
Private cloud automation monitoring tools are useful for both real-time monitoring and long-term planning. In the short term, policy-driven alerts help keep cloud admins aware of potentially problematic conditions, such as hardware failures or disrupted services. Long-term planning requires aggregate information about the use of cloud resources, growth in demand for particular types of resources and costs of providing particular services.
4. Workflows. Workflows are sequences of tasks that are carried out automatically. While a private cloud can offer many types of services as a unified process, there are often cases in which a series of processes are required to run. For example, an analytics reporting service may require copying data from several sources, applying several types of transformations on those data sets, loading the transformed data into a relational database and then generating a series of reports.
Workflow systems allow developers to specify a series of tasks and conditions that must be met for each task to execute. If multiple data sources are required before transformation tasks can run, then the workflow system could hold up the transformation process until all data sources are available.
5. Metering and billing. A defining characteristic of cloud is that users are charged for the resources used. The private cloud management platform should include tools for tracking resource use by accounts and users. These tools may include support for budget controls that alert users when they approach the limits of their budgets or block provisioning when a budget is exhausted. The granularity of charges varies across clouds. For example, one company may charge virtual servers on an hourly basis while another may charge based on minutes of server time rather than hours.
About the author:
Dan Sullivan, M.Sc., is an author, systems architect and consultant with more than 20 years of IT experience. He has had engagements in advanced analytics, systems architecture, database design, enterprise security and business intelligence. He has worked in a broad range of industries, including financial services, manufacturing, pharmaceuticals, software development, government, retail and education. Dan has written extensively about topics that range from data warehousing, cloud computing and advanced analytics to security management, collaboration and text mining.