As the graph below shows, the time of adoption of emerging technologies has been progressively reduced: for virtual hosting it amounted to 7-8 years, for public cloud 5-6 years, for OpenStack 3-4 years, and with the rise of containers like Docker just 2 years.
The pressure on the market by new emerging digital companies has produced a wide adoption of containerization in the legacy enterprise, mainly because it is possible to introduce new technology benefits and new operating models using the same approach for both cloud native and legacy applications.
As with other emerging technologies, containerization trends started to approach legacy investments, creating an environment that has become increasingly multimodal, rather than bimodal, at both application and platform levels, but with a well defined role for developers and operations.
Application containers started to get IT Ops teams’ attention as the market moved towards Container Management Platform–based production systems, although developers are the ones who continue to drive container and CMP adoption in a cloud-native application context.
In this context, IT Ops teams have a strong role to play, in order to make sure enterprises remain in control of the various, increasingly container-centric, Infrastructure-as-a-service (IaaS) and Platform-as-a-service (PaaS) platforms they use. Rather than moving everything from monolithic to microservices architecture (MSA) applications and every hybrid in between to a single platform, enterprises will increasingly mix and match container-centric platforms.
The Docker CaaS (Container-as-a-Service) is an example of that, and has already delivered these benefits to thousands of organizations that have adopted it since 2013. According to a survey among Docker customers, the container is crucial to develop microservices, DevOps and cloud strategy inside the IT organization, providing agility, portability and control.
Impact on Processes and Governance
Today the operational activities in the IT services management are almost based on a “siloed” model, where every single component is operated by a specialized capability: there is a team taking care of physical devices (servers, storage facilities, networks), a team managing the OS layer and performing operations like configuration, patching, upgrades and auditing, a team devoted to database operations and so on.
Everything running on top of the OS is operated using specific capabilities depending on the application workload. Usually we can recognize the following elements in the model: OS, database, middleware, networking (like proxy, application firewall, load-balancer), security and governance services.
The Need for a Change: Orchestration and Automation
Orchestration consists of the coordination of automated tasks and activities across teams, tools and environments, while automation is the engine that allows the wheels of orchestration to turn. In an orchestrated IT environment, the majority of steps are automated, and manual interventions are treated as exceptions.
Orchestration has many IT and business benefits, from improving service delivery to accelerating processes. From a simple high-level point of view three are the overarching benefits:
- Reduce errors: orchestration provides the ability to create predictable and repeatable processes that can be fully automated. It also helps improving consistency and increasing reliability across the IT environment, from the traditional data center to the hybrid cloud;
- Save time and effort: orchestration helps reducing the cost of operations by automating and coordinating manual, repetitive, time-consuming and error-prone tasks, reducing the number of required IT staff in the operations area;
- Go faster: orchestration reduces the time required to deploy new infrastructure and provision end-to-end business services. It also helps reducing escalations and “mean time to repair” by automating event and incident triage, diagnosis, and resolution;
In general, adopting a well-defined strategy for orchestrating processes and automating their executions makes it possible to improve execution time from 30% to 50%.
The Solution Does Matter, Not the Single Parts
The preferred approach is to have solutions aligned with the application workloads, in a way that enables business processes for profitable outcomes. With Docker the application workloads can be seen as orchestrated containers, which represent application services.
The focus should be on improving business processes and user experience, and the model must deliver in a fast, easy and efficient way in order to provide solutions that are greater than the sum of the single parts.
Optimized Delivery, Focused on the Application Workloads
The solution should enable application services to be more reliable and efficient, introducing an instant-on scale with quicker time-to-value for new applications. The approach follows a specific process that starts with understanding the application landscape of the organization and then by developing a deployment strategy.
The organizations that are progressively moving to the cloud, or more precisely to a Hybrid IT, need to consider some key factors:
- The availability of industrialized cloud services: nowadays this is a given and a broad list of providers such as Amazon (AWS), Microsoft (Azure), and Google (Google Cloud) is delivering a mature service that enables organizations to leverage IaaS but also to enter the PaaS model. Whilst this possibility opens the door to a dramatic change of the IT sourcing model, it is also important to face and manage the risk of a new “lock in”.
- The coexistence of a private environment (legacy/on premise or private cloud) with a public cloud environment: at least during the transition phase two or more different types of infrastructures and operating models could need to coexist. Even if the organization is targeting a full public cloud IT, this is still safe to consider as an alternative option, in order to ensure a point of return or at least manage very specific requirements of applications that require enterprise grade levels of availability and security, tight SLAs, low latency, particular requirements on physical location, and regulatory constraints.
To capitalize the benefits and accelerate the cloud transformation of the operating model, the customer should implement a Cloud Platform.
Capgemini Cloud Platform (CCP) is a cloud agnostic third generation API platform with microservices enabled integration composed of our API Management, Container, Operations Management and the Build (CICD) component of our IALM capability.
The main innovative componets are:
- API Management aaS – Centralised publishing, advertising and governance of RESTful & SOAP APIs
- Container aaS – containerised runtime environment supporting microservices, monoliths, synchronous, asynchronous and batch integrations and cloud native applications.