Reader small image

You're reading from  Practical Site Reliability Engineering

Product typeBook
Published inNov 2018
PublisherPackt
ISBN-139781788839563
Edition1st Edition
Right arrow
Authors (3):
Pethuru Raj Chelliah
Pethuru Raj Chelliah
author image
Pethuru Raj Chelliah

 Pethuru Raj Chelliah (PhD) works as the chief architect at the Site Reliability Engineering Center of Excellence, Reliance Jio Infocomm Ltd. (RJIL), Bangalore. Previously, he worked as a cloud infrastructure architect at the IBM Global Cloud Center of Excellence, IBM India, Bangalore, for four years. He also had an extended stint as a TOGAF-certified enterprise architecture consultant in Wipro Consulting services division and as a lead architect in the corporate research division of Robert Bosch, Bangalore. He has more than 17 years of IT industry experience.
Read more about Pethuru Raj Chelliah

Shreyash Naithani
Shreyash Naithani
author image
Shreyash Naithani

Shreyash Naithani is currently a site reliability engineer at Microsoft R&D. Prior to Microsoft, he worked with both start-ups and mid-level companies. He completed his PG Diploma from the Centre for Development of Advanced Computing, Bengaluru, India, and is a computer science graduate from Punjab Technical University, India. In a short span of time, he has had the opportunity to work as a DevOps engineer with Python/C#, and as a tools developer, site/service reliability engineer, and Unix system administrator. During his leisure time, he loves to travel and binge watch series.
Read more about Shreyash Naithani

Shailender Singh
Shailender Singh
author image
Shailender Singh

Shailender Singh is a principal site reliability engineer and a solution architect with around 11 year's IT experience who holds two master's degrees in IT and computer application. He has worked as a C developer on the Linux platform. He had exposure to almost all infrastructure technologies from hybrid to cloud-hosted environments. In the past, he has worked with companies including Mckinsey, HP, HCL, Revionics and Avalara and these days he tends to use AWS, K8s, Terraform, Packer, Jenkins, Ansible, and OpenShift.
Read more about Shailender Singh

View More author details
Right arrow

Chapter 12. Service Meshes and Container Orchestration Platforms

The future demands that enterprises leverage multi-cloud resources to automate their business operations successfully. The cloud journey thus far is a roller coaster ride. Clouds are typically online, on-demand, and off-premises. There are public, private, and hybrid clouds to comfortably cater to different regions and requirements. There are a number of purpose-centric and agnostic clouds (local and remote) consisting of a growing array of compute resources, such as bare-metal servers, virtual machines, and containers. The other prominent cloud resources include storage, networking, and security solutions. There is another noteworthy development. There are edge/fog device clouds emerging and evolving quickly due to the conscious adoption of the edge/fog computing paradigm. Multi-faceted devices in our everyday environments (personal and professional) are being meticulously clubbed together through middleware solutions to form...

About the digital transformation


Digital technologies and tools are becoming pervasive and persuasive. Nations across the globe are competing with one another in observing and absorbing digital processes, platforms, patterns, and practices to build next-generation, smarter systems that are inherently sensitive, perceptive, decision-making, responsive, and active. All kinds of business establishments are eagerly strategizing to be elegantly digitized in their operations, offerings, and outputs. Society is are being made aware of the significant impacts of digitization (edge) and digital technologies. IT organizations are equally keen on bringing forth an arsenal of digitalization-enablement solutions and services. Institutions, innovators, and individuals are overwhelmingly convinced about the tactic as well as the strategic implications of digital disruptions and innovations. The articulation and accentuation of digital transformation is definitely rising with the enhanced understanding...

Cloud-native and enabled applications for the digital era


The projected digital era, therefore, involves and invokes a number of cutting-edge technologies. Assimilating the appropriate technologies is an important factor to construct digital applications . Besides the growing family of technologies, we need more polished and fine-tuned processes. The traditional processes need to be subjected to a variety of enhancements, rationalizations, and optimizations. We also need architectures suitable for building modular applications and for simplifying data management. Microservice architecture (MSA) is being projected as the next-generation architectural style for designing modular applications in an agile manner. Massive monolithic applications are being methodically segmented into a dynamic pool of interoperable, publicly discoverable, network accessible, portable, and composable microservices. Distributed and decentralized applications are going to be realized with ease through the smart application...

Service mesh solutions


Technically speaking, a service mesh is an additional software layer exclusively added to handle all sorts of service-to-service communications in a reliable manner. Cloud enabled and native applications are being composed out of microservices. For reliable cloud applications, the resiliency of service interactions has to be preserved through technologically advanced solutions.

Service mesh solutions are designed to absorb the service communication responsibility from each of the microservices. The service mesh acts as a proxy that intercepts and implements network communication between microservices. There are several resiliency-enablement design patterns such as retry, timeout, circuit breaking, load balancing, fault-tolerance, distributed tracing, observability metric collection, and all these are optimally implemented and inserted in any service mesh solution. A service mesh is a prime example of the ambassador pattern, which is a helper service that sends network...

Microservice API Gateway


Microservice architecture (MSA), due to its sheer power and distinct competencies continuously strengthens its beneficial footprint as the undisputed unit of agile application design, development, and deployment. MSA is evolving quickly with the continued contributions from scores of third-party tool and platform vendors. Computer scientists, IT professionals, and academic professors across the globe are bringing forth delectable advancements to make MSA groundbreaking and pervasive for the IT world. We have detailed this strategically sound application architecture pattern in other chapters. You can also find other chapters talking about the various contributions of MSA to be penetrative, participative, and pioneering.  In the following sections, we want to discuss the need for API gateway solutions and API management suites, and how they fulfill the goals of MSA goals with ease.

In a nutshell, an API Gateway is a proxy that has information about the main microservice...

Ensuring the reliability of containerized cloud environments


Managing dependencies and binaries across many applications and customers requires significant efforts. Having realized the need for a comprehensive-yet-compact mechanism for achieving system portability, the Docker people have combined some of the capabilities of Linux cgroups (https://en.wikipedia.org/wiki/Cgroups) and namespaces into a single and easy-to-use package so that applications can consistently run on any IT infrastructure (bare-metal servers and virtual machines) without any tweak and twist of application code. The resulting package is the Docker image (https://docs.docker.com/engine/docker-overview/), and the following benefits accrue from using out of this standardized image. The Docker platform is a collection of capabilities used to take care of the life cycle activities of Docker images and their container instances.

Let's understand more about Docker platform with the help of the following points:

  • The Docker image...

The journey toward containerized cloud environments


For enabling the real digital transformation, establishing and sustaining containerized clouds are being pronounced as the way forward. With the containerization movement gaining a lot of attention these days due to the Docker containerization platform, cloud servers are being presented as a collection of application and data containers. With the cool convergence of microservices and containers, future cloud environments are going to be heavily containerized. We have written about the MSA pattern and the containerization paradigm. As we all know, the container tool ecosystem is expanding in order to automate most of the tasks associated with running containerized clouds. There are a number of third-party tool and product vendors building a variety of automated tools to simplify and streamline the adoption of containerization technology, especially the surging popularity and widespread us of Kubernetes, which is being recognized as the key...

The growing solidity of the Kubernetes platform for containerized clouds


Kubernetes is an open source container management system, which is increasingly deployed in enterprise-grade and production-ready cloud environments. Kubernetes is being positioned as the silver bullet for containerized environments. Kubernetes automates several tasks associated with the containerization movement. The well-known contributions of the Kubernetes platform include the following:

  • Expertly forming container clusters and managing them
  • Being blessed with a number of automated tools for application deployment, scaling, healing, and management
  • Provisioning and configuring containers for application deployment
  • Simplifying the formation of multi-container applications, which are business-aware, process-centric, and composite
  • Optimizing and organizing IT infrastructures to improve resource utilization

The unprecedented growth of the Kubernetes tool ecosystem has come as a solace for developers and administrators to embark...

Summary


Microservices are being proclaimed as a groundbreaking architectural style for producing and sustaining business and IT applications. Cloud environments are filled with BM servers, virtual machines, and containers. Microservices can be hosted on these and run to extract and supply their unique functionalities. As the number of microservices is growing rapidly, we need technology-sponsored complexity mitigation solutions and services. API Gateway solutions are being presented as the viable and venerable infrastructure (software or hardware) solutions for bringing in a kind of abstraction to decimate the dependencies-induced problems.

We have also discussed the unique contributions of service mesh solutions and how service mesh and API Gateway solutions fuse together to accomplish bigger and better things for businesses.

lock icon
The rest of the chapter is locked
You have been reading a chapter from
Practical Site Reliability Engineering
Published in: Nov 2018Publisher: PacktISBN-13: 9781788839563
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €14.99/month. Cancel anytime

Authors (3)

author image
Pethuru Raj Chelliah

 Pethuru Raj Chelliah (PhD) works as the chief architect at the Site Reliability Engineering Center of Excellence, Reliance Jio Infocomm Ltd. (RJIL), Bangalore. Previously, he worked as a cloud infrastructure architect at the IBM Global Cloud Center of Excellence, IBM India, Bangalore, for four years. He also had an extended stint as a TOGAF-certified enterprise architecture consultant in Wipro Consulting services division and as a lead architect in the corporate research division of Robert Bosch, Bangalore. He has more than 17 years of IT industry experience.
Read more about Pethuru Raj Chelliah

author image
Shreyash Naithani

Shreyash Naithani is currently a site reliability engineer at Microsoft R&D. Prior to Microsoft, he worked with both start-ups and mid-level companies. He completed his PG Diploma from the Centre for Development of Advanced Computing, Bengaluru, India, and is a computer science graduate from Punjab Technical University, India. In a short span of time, he has had the opportunity to work as a DevOps engineer with Python/C#, and as a tools developer, site/service reliability engineer, and Unix system administrator. During his leisure time, he loves to travel and binge watch series.
Read more about Shreyash Naithani

author image
Shailender Singh

Shailender Singh is a principal site reliability engineer and a solution architect with around 11 year's IT experience who holds two master's degrees in IT and computer application. He has worked as a C developer on the Linux platform. He had exposure to almost all infrastructure technologies from hybrid to cloud-hosted environments. In the past, he has worked with companies including Mckinsey, HP, HCL, Revionics and Avalara and these days he tends to use AWS, K8s, Terraform, Packer, Jenkins, Ansible, and OpenShift.
Read more about Shailender Singh