Transitioning to Kubernetes and Linux infrastructures during the digital transformation of organizations results in applications increasingly being built on microservice architecture, which consequently often leads to complex request routing schemes between services.

In Red Hat OpenShift Service Mesh, we go beyond traditional routing and offer components for tracing and visualizing such requests to make service interactions simpler and more reliable. The introduction of a dedicated logical control layer, known as a service mesh, , helps simplify the connection, control, and operational management at the level of each individual application deployed on Red Hat OpenShift, the leading enterprise-class Kubernetes platform.
Red Hat OpenShift Service Mesh is offered as a dedicated Kubernetes operator, which can be explored in Red Hat OpenShift 4. .
Enhanced tracking, routing, and optimization of communications at the application and service levels.
Using only hardware load balancers, specialized network equipment, and other similar solutions that have become the norm in modern IT environments makes it very challenging, and sometimes impossible, to consistently and uniformly regulate and manage service-to-service communications arising between applications and their services. With the introduction of an additional management layer, service mesh enables containerized applications to better track, route, and optimize their communications with Kubernetes as the core of the platform. Service mesh simplifies the management of hybrid workloads across multiple locations and provides finer control over data location. With the release of OpenShift Service Mesh, we hope that this essential component of the microservices technology stack will enhance organizations' capabilities in implementing multi-cloud and hybrid strategies.
OpenShift Service Mesh is built on several open-source projects, such as Istio, Kiali, and Jaeger, allowing the programming of communication logic within a microservices architecture. As a result, development teams can fully concentrate on creating applications and services that address business challenges.
Simplifying life for developers
, before the advent of service mesh, a significant amount of work managing complex interactions between services rested on the shoulders of application developers. In this environment, they require a comprehensive set of tools for managing the application lifecycle, from monitoring deployment outcomes to managing traffic in production. For an application to operate successfully, all its services must interact seamlessly with one another. Tracing allows developers to track how each service interacts with the other functions and helps identify bottlenecks that create unnecessary delays in real operations.
The ability to visualize connections between all services and see the topology of interactions also helps in understanding the complex picture of inter-service relationships. By integrating these useful features within OpenShift Service Mesh, Red Hat offers developers an extended set of tools necessary for successful development and deployment of cloud microservices.
To simplify the creation of service mesh, our solution allows for the easy implementation of this management layer within an existing instance of OpenShift using the appropriate Kubernetes operator. This operator takes on the tasks of installation, network integration, and operational management of all necessary components, enabling the immediate use of the newly created service mesh for deploying real applications.
Reducing the effort required to implement and manage a service mesh allows for faster development and testing of application concepts without losing control as they evolve. Why wait until managing inter-service communications becomes a real problem? OpenShift Service Mesh provides the necessary scalability before you really need it.
The list of benefits that OpenShift Service Mesh offers to OpenShift users includes:
- Tracing and monitoring (Jaeger). Activating a service mesh for improved manageability can come with a certain performance overhead; therefore, OpenShift Service Mesh can measure the baseline performance to use this data for future optimizations.
- Visualization (Kiali). A clear representation of the service mesh helps to understand the topology of the service grid and the overall picture of service interactions.
- Kubernetes operator for Service Mesh. Minimizes the need for administration when managing applications by allowing standard tasks such as installation, maintenance, and service lifecycle management to be automated. By adding business logic, management can be further simplified and the introduction of new features into production can be accelerated. The OpenShift Service Mesh operator deploys Istio, Kiali, and Jaeger packages along with configuration logic that implements all the required functionality.
- Support for multiple network interfaces (multus). OpenShift Service Mesh eliminates manual operations and enables developers to run code under increased security using SCC (Security Context Constraint). In particular, it provides additional isolation for workloads in the cluster, such as allowing the specification of which workloads can run as root and which cannot for a given namespace. As a result, it combines the benefits of Istio that are highly sought after by developers with well-defined security measures needed by cluster administrators.
- Integration with Red Hat 3scale API Management. For developers or IT operators requiring enhanced security for API access, OpenShift Service Mesh offers the built-in Red Hat 3scale Istio Mixer Adapter, which, unlike a service mesh, allows control over inter-service communications at the API level.

Regarding the further development of service mesh technologies, earlier this year, Red Hat announced its participation in an industry project , aimed at improving the interoperability of these technologies offered by various vendors. Collaboration within this project will help us provide Red Hat OpenShift users with a broader and more flexible selection, bringing us closer to a new era where we can offer developers a NoOps-class environment.
Try OpenShift
Service mesh technologies significantly simplify the use of microservices stacks in hybrid cloud environments. Therefore, we encourage everyone actively using Kubernetes and containers to .
Source: habr.com
