OSSMC release 0.4.0 (technical preview)

Fernando Hoyos
Kiali
Published in
3 min readSep 12, 2023

We are pleased to announce the technical preview release of OSSMC version 0.4.0, which brings a host of improvements to the Openshift Service Mesh Console (OSSMC), the Kiali plugin for Openshift. This release marks a significant milestone in our journey to enhance the service mesh monitoring and management experience within the Openshift environment.

It’s been 10 months since our last release, OSSMC 0.3.0. During this time, we have been working hard in two main features for OSSMC (besides all new Kiali features also present in standalone application):

Removing Iframes and embracing native React components

One of the most transformative changes in OSSMC 0.4.0 is the removal of iframes from our user interface. In previous releases, we utilized iframes to embed the Kiali frontend into the Openshift Console. While this approach served the purpose of offering Kiali’s powerful features within OSSMC with minimal development effort, it came with its share of limitations and security risks.

To eliminate iframes and provide a smoother user experience, the Kiali team explored several approaches:

1. Creation of a Kiali UI Library: Initially, the idea was to develop a shared UI library between Kiali’s standalone application and OSSMC. While conceptually sound, the immense development effort and the complexity of refactoring a mature and intricate application like Kiali led us to discard this option.

2. Creating a Kiali Fork for OSSMC: Another approach considered was to fork Kiali and adapt it exclusively for OSSMC, ensuring that any modifications in the plugin would not impact the standalone application. However, the inherent divergence between the two applications over time and the associated maintenance costs led us to dismiss this option.

3. Universal Adaptation of Kiali: Ultimately, we settled on adapting the core Kiali application to function seamlessly in both standalone mode and within OSSMC. This approach involved abstracting Kiali’s core code to accommodate the differences between the standalone and Openshift Console environments, such as routing, CSS styles, API configuration, and more. With this approach, we could reuse 95% of Kiali’s codebase in OSSMC, ensuring consistency and efficiency.

The core code of Kiali resides in the standalone application repository, serving as the singular source of truth. This code is then replicated into the OSSMC repository for the purpose of building the plugin, not being able to modify it here.

Kiali core code shared between Kiali standalone and OSSMC plugin

This transition away from iframes not only enhances user experience but also reduces security risks associated with cross-site scripting (XSS) attacks, making OSSMC more secure and reliable.

Replacing Cytoscape Graph with Patternfly Graph

In our commitment to align with the Openshift Console’s UI style, we have replaced the Cytoscape graph component with the Patternfly graph, ensuring that OSSMC plugin seamlessly integrates with the Openshift ecosystem, creating a more intuitive and visually pleasing observability experience for users.

Patternfly topology graph
Deployment detail with patternfly graph

The Road Ahead: Preparing for the GA Release

With the release of OSSMC 0.4.0 as a technical preview, we invite you to explore these changes, provide feedback, and help us refine and optimize the plugin further. Your insights are invaluable in shaping the upcoming General Availability (GA) version, which we plan to release in the following months.

The OSSMC Operator 0.4.0 is now available as a Community Operator to anyone on OpenShift 4.10+.

Openshift Service Mesh Console operator in Openshift

Thank you for your continued support and stay tuned for more updates and enhancements from the Kiali team as we continue to evolve and improve the istio service mesh experience.

--

--