As organizations continue to get more comfortable with the idea of Infrastructure-as-a-Service (IaaS), one area of confusion can still be “who does what?” While clouds, like the one offered by CenturyLink Cloud, deliver a wide variety of self-service capabilities and automated infrastructure management, not everything is simply “taken care of.” It’s dangerous to assume that something (e.g. high availability, data security) is handled by the software or the service provider when in fact it is not. When plotting out usage of IaaS resources, it’s important for organizations to understand where they need their engineers, what the software will do for them, and what sorts of requests involve engineers from the CenturyLink Cloud Network Operations Center (NOC). In this post, we’ll take a look at some of the responsibilities of each actor.
Let’s start with the customer. There are a few things that a cloud customer does outside of any software provided by CenturyLink Cloud. For instance, it’s up to the customer to figure out who is going to be an administrator of the cloud and what the expected resource consumption is going to be. Our software is built to make it easy to actually define a cloud server configuration, but it’s still up to the customer to look at historical demand or estimate capacity needs.
Customers uses the CenturyLink Cloud software primarily to configure, scale and secure their IaaS resources. Every day, our customers use the CenturyLink Cloud Control Portal to define complex server blueprints and spin up new environments. However, we empower the customer to do much more than that. The account owner decides who has access to which resources, and who doesn’t. It’s also the user’s decision to open up ports (e.g. RDP, FTP, and HTTP) to the public internet. Likewise, the customer is responsible for responding to monitor alerts, and that response may including adding more servers or beefing up the resource allocation of existing servers. While some activities can be automated by the software during the build process (e.g., opening a public-facing port on a server), it’s critical to understand that a customer in an IaaS environment still retains significant responsibility for managing their specific resources. IaaS software is focused on user empowerment and doesn’t require manual intervention from the service provider each time a management task is needed. CenturyLink Cloud software is designed to make these management tasks very straightforward, but don’t forget that the customer is ultimately responsible for maintaining a secure, adequately-allocated application environment.
One major reason that organizations are embracing cloud computing is that they are seeing a level of automation that didn’t exist in their own data centers. CenturyLink Cloud sees it as our responsibility to automate wherever possible and ensure that activities like building servers and executing blueprints happen quickly, and asynchronously. The CenturyLink Cloud environment uses a queuing model where nearly every task (e.g. “Build Virtual Machines”, “Execute Blueprints”) is added to a central queue and retrieved by worker processes. While users can monitor the queue to see the status of a given task, this work is done asynchronously and doesn’t prevent the user from performing other activities and adding more tasks to the queue.
Something like our blueprints technology is where software automation really makes a difference. Consider the blueprint we have for a Microsoft Exchange Server with Domain Controller. This blueprint has 15 individual tasks across 2 servers, and includes everything necessary (e.g. “Install DNS”, “Reboot”, “Join Domain”, “Install IIS 7.5”) to repeatedly deploy a completely working Exchange environment with a couple of clicks. Doing those actions manually takes not only time, but is prone to human error. Ideally, every IaaS provider offers some variation of this that lets customers automatically and consistently deploy machine (or environment) templates.
Another major thing that IaaS cloud software should automatically do is monitor usage and let you quickly make environmental changes. Elasticity and “pay as you go” are key cloud value propositions, and cloud vendors must make it simple to observe usage patterns and change the resource allocations accordingly. CenturyLink Cloud automatically applies a series of monitors and it’s simple to set up notification alerts for when thresholds have been exceeded. Machines can be almost instantly resized, often without even requiring a reboot.
In essence, your IaaS vendor should be constantly and aggressively looking for ways to automate tasks that either the customer, or their own team, has to perform manually.
So what does the internal CenturyLink Cloud team do to keep this environment humming along? First, we make sure that all the physical hardware is set up and operating smoothly. Our active NOC team is always adding capacity and storage while upgrading network hardware whenever it makes sense. We also configure load balancers for customers, upload customer-specific virtual machine images, restore backups upon demand, add software to our catalog, and generally manage the virtual machine environment. Many of the NOC activities that are performed manually today will be customer-enabled in the near term. We’re always on the lookout for ways to empower customers and eliminate the need to contact our (admittedly very friendly and good-looking) NOC team.
Regardless of cloud provider, there is an expert team of hardware/software/network engineers working behind the scenes to optimize and advance the host infrastructure that the cloud runs on. Different clouds offer different services, and some services are sophisticated enough to require human interaction instead of simply turning a dial in an administrative portal. Most of these tasks involve physical infrastructure or complex networking, as most other activities get surfaced up to user-accessible controls where possible.
Using IaaS software can be a transformation decision for an organization, but it’s important for engineers to understand what responsibilities they are ceding to the vendor and which ones they still retain. Typically in IaaS scenarios, the service provider provides the platform, but the customer still takes responsibility for their provisioned resources. Have a question about what CenturyLink Cloud software and NOC engineers provide? Or have an idea for something that should be enabled for customers instead of requiring manual intervention? Let us know in the comments!