As the move to service-based IT continues, the knowledge, skills, and abilities of many of the IT roles are very quickly being transformed.
Editor's note: This article is excerpted from chapter 7 of IBM Cloud Platform Primer.
The biggest changes that cloud computing brings to an enterprise are changes in mindset and operational transformation. While some of these changes are abstract, there are very concrete things that IT organizations can and should do to take full advantage of the cloud environment. From redefining roles to taking on new responsibilities, this chapter discusses the various operational and organizational transformations afoot in large IT organizations.
In this chapter, we discuss the actors defined in IBM’s Cloud Computing Reference Architecture (CCRA). We also list and describe the new roles and corresponding responsibilities that cloud platforms, such as PureApplication System and Bluemix, bring about. Even signing up to be a user of public cloud services, whether those services are infrastructure or software, requires a change in the IT thought process. By the end of this chapter, it should be apparent that to operate in this new environment you need to be more of a generalist than a specialist.
IT Roles in Cloud Computing
The International Organization for Standardization (ISO) recently published the cloud computing reference architecture that it has adopted at standards.iso.org/ittf/PubliclyAvailableStandards/c060545_ISO_IEC_17789_2014.zip. Much of the content regarding roles and use cases came from IBM’s CCRA. There are three common, well-established roles in cloud computing:
- Cloud service provider: an organization or a vendor that hosts the cloud and provides cloud services. The cloud service provider manages the computing infrastructure required to provide the services, runs the cloud software that provides the services, and delivers the cloud services through secure network access.
- Cloud service consumer: enterprises or individuals that request, pay for, and consume cloud services. The cloud service consumer browses the service catalog from the cloud service provider, requests the desired service, agrees to a service contract with the provider, and uses the service.
- Cloud service broker or partner: businesses that offer supporting services for the cloud.
- The NIST CCRA lists cloud auditor as another major role. A cloud auditor is someone who audits the cloud service and its implementation, performance, and security.
- All of these roles have sub-roles, which are shown in Figure 1 but are not described in detail here because most organizations already have their own variation of those roles. At a high level, all activities, such as selecting a cloud partner, purchasing cloud services, user provisioning, providing network connectivity, administering tenancies, performing backup and recovery, monitoring the service, billing ,and providing usage reports are the responsibility of one or more of the sub-roles.
Figure 1: Roles and sub-roles within cloud computing
When it comes to services, the key to receiving good service is to form a good business relationship with the service provider. Cloud services are no different. The cloud service consumer should forge a good relationship with the cloud service provider, and both should agree on a strong service-level agreement (SLA).
It is quite possible that if you drill down into any of the deployment models, you may find certain specific roles or actors. For example, Figure 2 shows the PaaS actors from the IBM CCRA. Depending on which deployment model is offered or serviced, the roles might vary a bit. If you sign up for SaaS, as a consumer you get very little if any control of the environment. If you choose PaaS, you get some control over the environment because PaaS has to provide for development and deployment of applications, for which you would need development tools and possibly access to the underlying network, operating system, and storage. And in the case of IaaS, the consumer gets quite a bit of control. Regardless of the level of service a consumer purchases, a scope of control should be agreed upon between the consumer and the provider.
Figure 2: Actors in the PaaS discipline from the IBM CCRA
The cloud service consumer might choose to request service from a cloud broker instead of contacting a cloud provider directly. In that case, the number of people the consumer deals with directly is drastically reduced. The cloud broker would manage the use, performance, and delivery of all cloud services and even negotiate the business relationship between cloud provider and cloud consumer.
As we’ve seen, the cloud service provider and the cloud service consumer have differing degrees of control over the computing resources in the cloud environment. The recommendation is for both to collaboratively design, build, and operate cloud-based systems, which is quite different from traditional IT systems, in which one organization has control over the entire stack of computing resources. We’ll discuss this further a bit later.
First, though, one other topic should be mentioned, and that is cloud service management. Management includes all service-related functions necessary for the management and operation of the services promised or offered to the consumer. It mainly entails business support systems, and to some degree portability and interoperability. From a business support systems perspective, cloud service management includes all the components needed to run client-facing business operations, such as contract management, inventory management, pricing, accounting and billing, and reporting and auditing.
As far as portability is concerned, cloud service consumers want to know whether they can move their data or applications across multiple cloud environments and have the ability to communicate between multiple clouds. It behooves cloud service providers to support data portability, service interoperability, and system portability. Data portability is the ability to copy data objects into or out of a cloud. Service interoperability is the ability of cloud service consumers to use their data and services across multiple clouds. And system portability is the ability to migrate applications and services from one service provider to another. These features are not easily supported.
A Different Approach to IT Operations
IT staff who manage traditional data centers have far more control than those who manage cloud environments. The nature of cloud computing allows non-IT staff to do more, so the traditional install-and-maintain paradigm has given way to deploy and monitor. As the move to service-based IT continues, the knowledge, skills, and abilities of many of the IT roles are very quickly being transformed.
As Figure 3 shows, in a traditional datacenter IT staff has full control over most components and tasks. But as you move to “as a service” environments, we see the IT teams have less control of and influence over how things are done. While that might make IT operations teams uneasy, it bodes well for the developer community because they are no longer at the mercy of the IT staff and can thus accelerate the speed of development and deployment of software solutions.
Figure 3: Spheres of influence by IT departments
This shift really means that the roles, responsibilities, and skill sets are changing in the IT landscape. For example, systems administrators now have the opportunity to become cloud administrators; service managers can look ahead to becoming cloud service managers; enterprise architects are becoming cloud architects; and even the ever-present computer consultant can add new skills to his or her repertoire and become a cloud consultant. So there is something new for everyone in the cloud space.
New Opportunities in Cloud Computing
What do IT professionals have to look forward to in moving to the cloud? The first thing to realize is that systems have become smarter, simpler, and more accessible, and consequently the need is for more generalists and fewer specialists in the cloud-based IT organization. The expert integrated systems on which most cloud environments run are forcing organizations to become less compartmentalized and much more integrated.
These cloud systems are also forcing a change in skill sets. One has to think about transient resources more than permanent resources. The promise of making it easier to implement virtualized environments also means that re-provisioning the same resources becomes easier. The result is that environments have shorter lifetimes. People will have to become good at learning various abstraction layers.
Some of the new roles and the responsibilities that come with them are discussed below. These roles are directly responsible for interacting with cloud systems. Other roles are more consultative in nature and are considered secondary roles. Figure 4 captures the suggested roles for IT departments that are considering implementing cloud solutions.
Figure 4: Suggested roles for IT departments deploying cloud solutions
- Cloud administrator: The cloud administrator role is responsible for configuring and managing the physical cloud. That responsibility encompasses all assets related to the cloud, such as creating cloud groups to provide isolation, creating IP groups when required, monitoring resource utilization, and most important, adjusting assigned resources based on the needs and demands of the cloud users.
- Cloud architect: It is imperative that enterprise architects now understand IaaS, PaaS, and SaaS. Every cloud computing architecture will touch one or more of those services. Knowing whether to recommend a public cloud or a private cloud and whether to make use of software as a service for lower environments are some of the nuances that cloud architects must be familiar with. A cloud architect will also be asked to provide leadership in convincing customers on the adoption and use of cloud computing.
- Cloud consultant: The things that drive cloud computing, such as rapid application development and continuous delivery or DevOps, new scripting languages, and new APIs, including Representational State Transfer (REST) and mobile APIs, are some of the competencies a cloud consultant needs to develop. Whether it is automating deployments or pushing applications to a public cloud platform, this role forces one to be a generalist and agile.
- Cloud developer: A cloud developer has a narrower scope than does a cloud consultant. He or she would create applications using languages such as Node.js and use Python or shell scripting to facilitate application deployment. The cloud developer would know how to grab resources in the cloud when needed and make it a point to release them or de-allocate them when they are no longer needed. One has to understand the intricacies of working in a shared environment and why security is so important.
- Cloud integration architect: Developing integration architecture and providing integration solution guidance is the main role of the cloud integration architect. Whether it’s integration of back-end systems in the datacenter with the public cloud or finding the right architecture to connect an on-premises cloud with off-premises services, the cloud integration architect would be familiar with all types of cloud, especially hybrid cloud solutions. This role would also need to be aware of cloud orchestration and related tools, as illustrated in Figure 5.
Figure 5: Knowledge scope for cloud integration architect
Editor's note: Learn more with the book IBM Cloud Platform Primer.