Cloud Changes Everything! Need a New Generation of Management Tools
Cloud in conjunction with other technology trends such as virtualization, makes it possible to create large and highly automated pools of computing resources that can scale up and down with traffic, be rapidly re-provisioned for new purposes, and also route around many types of failures, providing streamlined self-service access for users.
However, cloud environments create many new challenges from a management perspective in comparison to the traditional data center, having more of everything - more users, more changes and even more data. On the other side, cloud environments also have less: less hardware, typically running multiple virtual machines per host, less support resources and less margin for error as users are directly exposed to the services of the cloud.
These highly virtualized elastic infrastructures also abstract physical resources from the virtual server instances they support, making the usual troubleshooting techniques less effective. When IT administrators don't know where to look for a problem or what is the context of the problem, then chasing a dynamic network or system problem using available static tools can be a frustrating, a time-consuming and expensive prospect, and most likely unsuccessful.
Cloud Platform Is More Complex
Cloud consists of huge numbers of servers facilitating an elastic computing platform. Each server can have multiple instances of application hosted in the cloud. As customer demand for those applications changes, new servers are added or idled and new VMs are instantiated or terminated. This dynamic nature of cloud computing, the platform itself, brings new capabilities to IT, and creates greater complexity.
One of the underlying promises of cloud computing is elasticity, the ability to quickly and easily expand and contract computing resources to match demand, offering unlimited head room. This allows your platform to handle sudden, unanticipated, and remarkable loads, like when a marketing campaign generates massive, but brief, influx of users and load on the system. Tools are challenged to automatically keep track of changes created through elasticity including and excluding new and dropped server instances.
Cloud operation heavily relies on automated provisioning/de-provisioning of business systems on virtual servers. Guest systems are automatically and simultaneously set up, frequently via complicated scripts. Problems can come up when errors creep into the provisioning assets (virtual images, templates, scripts etc.), and with the dynamic nature of the cloud, automatic provisioning can take place, possibly based on flawed instructions.
Cloud Makes Possible New Approaches for Development
Traditionally the development side of the organization took a waterfall approach to software development. Each stage of development gets assigned to a separate team for greater project and deadline control, a classically linear and sequential approach to software design and systems development. The new high-paced requirements by business for quicker rollouts, demands that development take more agile approaches. These approaches are well supported by elastic cloud platforms and automatic provisioning methods.
The Continuous Integration software development practice has members of a team frequently integrating their work, on a daily basis, leading to multiple integrations per day. To detect integration errors as quickly as possible, each integration is then verified by an automated build.
This means that there is a constant stream of changes transitioned to the production environment. There should be a way to understand actual configuration of the environment to prevent any potential issues and to investigate problems if they happen.
Continual Service Improvement
The Continual Service Improvement process appeals to the hybrid cloud environment. However if not implemented properly may result in misalignment of business needs. Effective communication of KPIs, SLAs and Change Requests with external Cloud vendors can help to resolve this issue in a timely manner. Similarly, this information needs to be delivered effectively for compliance purposes. With the dynamics in the environment, IT operations needs a tool capable of capturing all the changes that happen in the cloud at the level of guest systems, virtual infra and cloud platform. The new generation of tools need to be able to audit all application changes even across the cloud, including what changes have been made, where and by whom, to satisfy both company and industry regulatory compliance. This way auditors can see exactly what process is currently being used, and the history of changes to the processes over time.
Through cloud, the Continuous Delivery approach rolls out different versionsof an application. This also provides for feature toggling, selective releasing features to only certain users, like based on user characteristics.
For these rollouts, automation tools create models of an environment's configuration. Since this only tracks those parameters that were actually defined, this results in a model that you don't have 100% control over, leaving the deployment exposed to failure as it moves through environments, requiring a validation tool to check deployments.
Agile is a new project management methodology, to potentially deliver critical business value faster. Project priorities are re-evaluated on a continuing basis in cycles of a week, a month, or sometimes longer depending on the project.
However, there are a myriad of issues that most IT organizations face when it comes to the execution of Agile projects. In particular, the most common issue is that developers sometimes step away from the rigor needed to deliver successful IT projects, demanding a monitoring tool to make sure developers didn't make ad hoc changes to the environment that could affect performance.
No-ops: No IT Operations?
Recently, we have heard more about Ops taking a different role. This is embodied in the new NoOps approach. With cloud services so automated, it has been suggested the "NoOps" idea proposes that there's no need for internally maintained computing, or that, there's no need for an operations staff all at.
Really NoOps means developers can code and let a service deploy, manage and scale their code. So the issue isn't that operations will disappear, but that ops can, focus more on management platform implementation and operations. So, as Ops shrinks and their focus changes, they need more automation in order to obtain insights into the environments they manage.
Flying Blind? Leaving IT Operations Unprepared
The dynamic nature of cloud platforms generates significant amounts of events and data at a high frequency. While everything may feel like it is functioning, and there aren't problems, this is essentially 'flying blind', leaving IT operations unprepared for a slow down or incident.
Despite the automated state of the cloud, IT still needs to take a proactive approach and be able to react quickly when service is impacted.
For example, the auto-scaling aspect of cloud can impact performance. Auto-scaling allows applications to respond to dynamic traffic patterns based on a set of performance metrics. The most difficult part of auto-scaling isn't the actual launching of servers but maintaining all the configuration management and lifecycle management making sure that the new servers successfully go into production. With a high volume of events occurring, the operations console receives monitoring information about many events, without distinguishing why events occur. Really, you just need to know the context for these events, do you have a large workload and that servers are being provisioned automatically, or is there a bug creating new instances, and slowing down performance.
Business Deals with Big Data Using Analytics
IT needs to better address how information is handled. Everything that IT focuses on should be to achieve one thing: making data smart and actionable. The business side of the organization has adopted Big Data analytics for processing and examining large amounts of data of a variety of types to uncover hidden patterns, unknown correlations and other useful information. The primary goal of Big Data analytics is to help companies make better business decisions.
IT Analytics for Cloud Management
Massive volumes of data can provide IT organizations with deep insights into complex pattern phenomena, which can be, potentially, extremely useful to IT Ops, trying to improve performance and availability. Since you don't have time to go over piles of collected environment data, piece by piece, and still understand all the dependencies, automation of the cloud platform needs to include analytics automation. Analytics need to be intelligent to shrink data to manageable proportions and understand the correlation of data, making results into actionable steps.
This means switching to an analytics based approach and relying on actual information captured as it happens within the IT environment, making IT more efficient. Intelligent Analytics should provide a way to process all this data, making the information practical and actionable. IT Analytics for Cloud can help you identify inefficient resource usage, enable you to avoid performance and availability issues based on collected data and accelerate incident resolution.
This means the analytics mechanism needs to be able to:
- Rapidly collect all data, in near real time. Otherwise by the time you have collected information from all the data sources and crunched the number, the reality may have changed.
- Automatically identify the issues and isolate cloud resource or application trouble spots that cause problems and point to the root cause, quickly resolve the problem.
- Perform real time correlations across the data collected from various sources to more quickly predict trends and take action before disasters occur
New Generation of Tools for the Cloud Era
The approach where traditional tools spew endless data on the operations specialist with an assumption that he will be able to process it will not work in cloud. Growing amount of information generated by cloud operations makes it impossible to manage IT environments without intelligent automated analytics.
Such analytics will drive more sophisticated processes like, for example, comparing environment states, validating releases, and scanning the vast data repository of configuration information, to make cloud operations information actionable, and identify critical issues.