Cloud operations (CloudOps) is the management, delivery and consumption of software in a computing environment where there is limited visibility into an app's underlying infrastructure. In the enterprise, CloudOps uses the DevOps principals of continuous integration and continuous deployment (CI/CD) to create best practices for achieving high availability by refining and optimizing business processes that run in a public cloud.
A CloudOps teams' responsibilities typically include the following:
- configuration management;
- resource allocation;
- optimizing performance capacity;
- managing compliance burden; and
- ensuring service-level agreements (SLAs) are met.
Why it matters
Migrating applications to the cloud brings its own benefits, such as freeing up internal infrastructure. However, what's moved to the cloud still must be managed, and the work around maintaining cloud-based applications and data stays relatively the same as managing them on site. To do this, a CloudOps team must select the right monitoring and automation tools for the workloads that run in the cloud.
Four pillars of cloud operations
There are four pillars a CloudOps team can use to build strong IT operation processes and procedures: abstraction, automated provisioning, policy and process automation.
The first pillar, abstraction, decouples management from the underlying infrastructure so cloud machine instances, storage instances, security, network and governance can be managed through a single pane of glass. This centralized approach to management allows an administrator to use a single tool such as Apigee, for example, to manage applications and services running in the cloud.
The second pillar of CloudOps is provisioning. Typically, an organization will manage the provisioning of machine instances on the cloud in one of two ways: either with self-provisioning or with automated-provisioning. With self-provisioning, administrators allow cloud users to allocate their own machines and then track their usage. Automated provisioning is more efficient because it allows the applications themselves to request more resources when needed and deprovision them automatically when not needed.
The third pillar is being policy driven. That requires the creation and enforcement of policies that limit what users and applications can do in the public cloud. This is done to ensure an application doesn't end up using cloud resources when there is no return on investment (ROI).
The last pillar is automation. Typically, automated processes include provisioning, user management, security management and API management. Artificial intelligence and machine learning play important roles in automating tasks.
Benefits and drawbacks of CloudOps
CloudOps benefits include the following:
- It's cost-effective.
- It's easier than traditional approaches.
- It requires fewer resources than traditional approaches.
- Many steps can be automated.
- It can scale out and automatically provision servers.
- A cloud can abstract infrastructure from an application.
However, CloudOps comes with a variety of drawbacks:
- It is possible to overspend on overprovisioned servers.
- There are limited governance abilities.
- Security with public cloud providers can be risky.
CloudOps and DevOps
DevOps is a collaborative approach that seeks to blend tasks traditionally performed by either the organization's application development or their IT operations teams. An important goal of DevOps is to promote better communication between the two teams and build development pipelines that allow for continuous integration. In contrast, the focus for CloudOps is on high availability (HA) and continuous operation in a public cloud.
CloudOps engineer as a career path
To become a CloudOps engineer, the candidate must have a bachelor's degree in computer science, engineering or related discipline. Most job postings also require the candidate to have a strong background in cloud platforms, including Amazon Web Services (AWS), Microsoft Azure and OpenStack.
On a day-to-day basis, the cloud operations engineer will be tasked with creating processes for measuring system effectiveness and identifying areas for improvement. The most successful CloudOps engineers will work hard to stay abreast of new technologies in order to choose the right tools for orchestration and the best tools for compliance audits and reporting.
A typical job posting might request the following:
- the ability to customize commercial off-the-shelf tool sets to meet the needs of the organization;
- experience with automation and configuration management tools such as Puppet and Chef;
- familiarity with Docker, Mesos and Kubernetes in production workloads;
- experience with continuous integration tools such as Jenkins and Bamboo; and
- familiarity with programming languages such as Python, Ruby, Perl and Bash.
Job postings for cloud operations engineers are sometimes listed under the heading "cloud automation engineer."
There are literally hundreds of tools from dozens of vendors that can be used for CloudOps. Ironically, the challenge for administrators is to limit the number of tools required to maintain high availability in the cloud.
Most public cloud providers offer their customers tools for CloudOps, including Amazon, Microsoft, Google and IBM. Network engineering teams can also use proprietary tools from Apigee or RightScale as well as open source tools such as Ansible or Chef to automate configuration management, cloud provisioning and application deployment.
Continue Reading About CloudOps (cloud operations)
- Discover Big Switch Networks' new hybrid cloud networking products and updated features of its Cloud-First Networking portfolio